Commit Graph

98142 Commits

Author SHA1 Message Date
Oliver Günther f5ff40f93c Move testing guide into their own chapters 2025-10-17 09:59:36 +02:00
Jan Sandbrink a806d1ce5b Merge pull request #20663 from opf/collection-double-count
API: Do not issue SQL count for number of elements on current page
2025-10-17 07:49:01 +02:00
OpenProject Actions CI eab5c36519 Merge branch 'release/16.5' into dev 2025-10-17 03:41:48 +00:00
OpenProject Actions CI f9bd5657e8 update locales from crowdin [ci skip] 2025-10-17 03:22:08 +00:00
OpenProject Actions CI 934b1a2e18 update locales from crowdin [ci skip] 2025-10-17 03:19:44 +00:00
Jens Ulferts ed6574177d Merge pull request #20653 from opf/dependabot/bundler/dev/yabeda-activerecord-0.1.2
Bump yabeda-activerecord from 0.1.1 to 0.1.2
2025-10-16 17:31:26 +02:00
Jan Sandbrink 599d94242d Do not issue SQL count for number of elements on current page
We will be rendering the elements on the current page anyways,
so it's unavoidable that we load them. By forcing us through to_a.size,
we make sure that the elements are loaded first and then only count how
many elements have been loaded. Since AR caches the result, the relation
will not be loaded twice.

Previously we had a useless SQL count query, which can be tremendously
slower than the actual loading of elements. In the case of time entries
for a larger database, the COUNT took ~1.5 seconds, when the loading
of those same elements only took ~20ms. I don't hope that this ratio
is generalizable to all collection API endpoints, but it's definitely
a nice speed boost.
2025-10-16 16:26:02 +02:00
Oliver Günther e63289cc26 Merge pull request #20648 from opf/feat/67276/highlight-meeting-agenda-item
Highlight meeting agenda item on page load
2025-10-16 13:57:28 +02:00
Oliver Günther 66f70a1ec5 Use scroll-margin to provide offset 2025-10-16 13:39:07 +02:00
Oliver Günther 64dacb191f Use outline 2025-10-16 13:39:06 +02:00
Oliver Günther 7d3674a7f7 Use minor timeout before scrolling 2025-10-16 13:38:57 +02:00
OpenProject Actions CI 5eb0fbdc71 Merge branch 'release/16.5' into dev 2025-10-16 11:31:43 +00:00
Kabiru Mwenja e050ed1a97 bug/68404 On Work Package Side View (via "info" ℹ️ icon) the lazy pages never load, only the first page is loaded (#20660)
https://community.openproject.org/work_packages/68404

When the root (scrollableContainer) is undefined, fall back to the document viewport. Do not return early or abort the observer setup.

> [!NOTE]
> Specifying the root is generally a good idea for scoping down the observable area. When the root is null, Stimulus-Use will fallback to the document viewport. 📖  https://stimulus-use.github.io/stimulus-use/#/use-intersection?id=reference
> 
> The "root" is different based on the context the activity tab is rendered- we maintain [a list of variants](https://github.com/opf/openproject/blob/dev/frontend/src/stimulus/controllers/dynamic/work-packages/activities-tab/services/view-port-service.ts#L85-L96), but I don't particularly like adding to that list. Rather falling back.
2025-10-16 14:26:36 +03:00
Bruno Pagno da89c00692 Merge pull request #20640 from opf/housekeeping/68353-blocknote-breaking-changes
Update blocknote version
2025-10-16 12:40:44 +02:00
Niels Lindenthal 🇪🇺 🇺🇦 a0722c1a61 Add additionional infos on how to use OpenProject for PM² projects in the PM² guide (#20591) 2025-10-16 12:38:35 +02:00
Kabiru Mwenja b17e1588d0 Merge pull request #20658 from opf/merge-release/16.5-20251016085542
Merge release/16.5 into dev
2025-10-16 12:59:21 +03:00
Kabiru Mwenja 6cccab8104 Merge branch 'dev' into merge-release/16.5-20251016085542 2025-10-16 12:35:52 +03:00
Oliver Günther 84d3f78f47 Highlight meeting agenda item on page load
https://community.openproject.org/work_packages/67276
2025-10-16 11:11:58 +02:00
dombesz c556c0bec5 Merge pull request #20645 from opf/bug/66552-fine-tuning
Bug/66552: Fine tune work package activity tab lazy page loading
2025-10-16 10:33:40 +02:00
Christophe Bliard 8cfe239f24 Merge pull request #20644 from opf/bugfix/68357-when-switching-to-automatic-mode-working-days-only-is-not-set-correctly
[68357] Derive ignore_non_working_days when switching to automatic scheduling
2025-10-16 09:56:31 +02:00
Henriette Darge 10e45aead5 [64823] Improve usability of Workflow tables (#20581)
* Split workflow tables into multiple tabs

Co-authored-by: Behrokh Satarnejad <b.satarnejad@openproject.com>

* make header and first column sticky in work flow tables

* calculate the height of the table

* Update the tabs individually

* calculate the height of the table

* Add tests for separated Workflow update process

* add a new style sheet for the workflows page and handle vertical and horizontal scroll in it

* set a class for page header in workflows page

* set page header class for other pages like summary and copy as well

* make header and first column sticky in summary page

* make the button sticky while scrolling horizontally

* redirect to the current tab in update method

---------

Co-authored-by: Behrokh Satarnejad <b.satarnejad@openproject.com>
2025-10-16 09:55:52 +02:00
Christophe Bliard 60b4fdbad1 Merge pull request #20657 from opf/maint/upgrade-plaintext-gem
Upgrade plaintext gem from 0.3.4 to 0.3.6
2025-10-16 09:31:22 +02:00
Bruno Pagno 06776cb7d2 update blocknote version, include new dependencies, adjust frontend accordingly 2025-10-16 09:27:32 +02:00
Christophe Bliard b9be48f1c3 Upgrade plaintext gem from 0.3.4 to 0.3.6
This is related to https://community.openproject.org/wp/68047.

The FrozenError bug has been fixed upstream and our patch is now
useless.
2025-10-16 08:54:46 +02:00
dependabot[bot] 0b197091dc Bump yabeda-activerecord from 0.1.1 to 0.1.2
Bumps [yabeda-activerecord](https://github.com/yabeda-rb/yabeda-activerecord) from 0.1.1 to 0.1.2.
- [Release notes](https://github.com/yabeda-rb/yabeda-activerecord/releases)
- [Changelog](https://github.com/yabeda-rb/yabeda-activerecord/blob/master/CHANGELOG.md)
- [Commits](https://github.com/yabeda-rb/yabeda-activerecord/compare/v0.1.1...v0.1.2)

---
updated-dependencies:
- dependency-name: yabeda-activerecord
  dependency-version: 0.1.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-16 05:04:39 +00:00
OpenProject Actions CI 5cd0c1de87 update locales from crowdin [ci skip] 2025-10-16 03:24:53 +00:00
OpenProject Actions CI fae9dd0b49 update locales from crowdin [ci skip] 2025-10-16 03:21:47 +00:00
Kabiru Mwenja 2fc4b573a4 Remove unnecessary scroll preservation
Since we set up UI skeletons, the scroll preservation is no longer needed.
2025-10-15 23:24:48 +03:00
Kabiru Mwenja 2b74f6d951 Optimize lazy page turbo stream handling for activities tab
Moved turbo stream scroll preservation from individual lazy-page
controllers to a single handler at the index controller level. This
eliminates O(n) event handler overhead where n = number of lazy pages.
2025-10-15 23:24:02 +03:00
Kabiru Mwenja 4a42890af8 Increase the request delay from 75ms to 300ms to mitigate rapid request firing 2025-10-15 23:23:41 +03:00
Oliver Günther 02348c5ee4 Allow connect-src to CDN For source maps 2025-10-15 18:01:50 +02:00
Christophe Bliard d646353c33 Fix flaky spec
failing spec: ./spec/features/work_packages/details/date_editor_spec.rb:481
failing run: https://github.com/opf/openproject/actions/runs/18496811091/job/52702962599

When the working days only checkbox is toggled, the preview is triggered and updates the datepicker modal.

There was a race condition: if switching to automatic scheduling mode
before the preview finished, the preview would update the datepicker
modal and switching to automatic would be ignored (maybe it should not
be ignored). This was causing the spec to fail because the "working days
only" checkbox was not disabled.

Fix is to wait for the preview to finish before switching to automatic
scheduling mode.
2025-10-15 17:20:39 +02:00
Christophe Bliard 009bf08abb [68357] Derive ignore_non_working_days when switching to automatic scheduling
https://community.openproject.org/wp/68357

When a work package in automatic scheduling mode has children, its
`ignore_non_working_days` value is set by the children's values:

- if at least one child has `ignore_non_working_days` `true`, then the
  parent has it `true`.
- if all children have `ignore_non_working_days` `false`, then the
  parent has it `false`.
2025-10-15 17:20:39 +02:00
Jens Ulferts 11004c1ced Merge pull request #20638 from opf/dependabot/bundler/dev/opentelemetry-exporter-otlp-0.31.0
Bump opentelemetry-exporter-otlp from 0.30.0 to 0.31.0
2025-10-15 16:27:57 +02:00
Mir Bhatia 864e1bab40 Merge pull request #20549 from opf/code-maintenance/67925-reduce-component-streams-complexity-by-updating-concurrent-editing-behaviour
[#67925] Reduce component streams complexity by updating concurrent editing behaviour
2025-10-15 15:50:38 +02:00
Christophe Bliard 1d860beae8 Merge pull request #20631 from opf/merge-release/16.5-20251015034226
Merge release/16.5 into dev
2025-10-15 15:26:45 +02:00
Mir Bhatia 11f449a449 Add confirmation for 'Move to next meeting' 2025-10-15 15:12:42 +02:00
Mir Bhatia 988448f2f8 Add confirmation for drag and drop 2025-10-15 15:05:08 +02:00
Henriette Darge f218edafde [66444] Activity Module delivers error 404 in newly set up instances (#20627)
Hide the module globally if no project has it activated
2025-10-15 15:04:26 +02:00
ulferts a7f5ae9234 Bumped version to 16.5.2
[ci skip]
2025-10-15 15:01:08 +02:00
ulferts dfa440e441 Update publiccode.yml 2025-10-15 15:01:07 +02:00
ulferts a07df23c87 Add release-notes file 2025-10-15 15:01:07 +02:00
Marcello Rocha 57baf4487d Adds AMPF settings to the SharePoint Storage creation (#20563)
* Implements the creation of OpenProject managed document library
* Hook UpdateService to the new service
2025-10-15 14:55:34 +02:00
Christophe Bliard 55017bffbe Merge branch 'dev' into merge-release/16.5-20251015034226 2025-10-15 14:55:16 +02:00
dependabot[bot] 2405b82dfa Bump opentelemetry-exporter-otlp from 0.30.0 to 0.31.0
Bumps [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-ruby) from 0.30.0 to 0.31.0.
- [Release notes](https://github.com/open-telemetry/opentelemetry-ruby/releases)
- [Changelog](https://github.com/open-telemetry/opentelemetry-ruby/blob/main/exporter/otlp/CHANGELOG.md)
- [Commits](https://github.com/open-telemetry/opentelemetry-ruby/compare/opentelemetry-exporter-otlp/v0.30.0...opentelemetry-exporter-otlp/v0.31.0)

---
updated-dependencies:
- dependency-name: opentelemetry-exporter-otlp
  dependency-version: 0.31.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-10-15 12:05:41 +00:00
Henriette Darge 77d8803d06 Hide the module globally if no project has it activated 2025-10-15 14:01:11 +02:00
Klaus Zanders 4d1972dbc2 Add check to only add backlog when it is there 2025-10-15 13:51:16 +02:00
Behrokh Satarnejad d837e51290 Merge pull request #20611 from opf/67693-list-of-names-for-mentions-spills-out-of-screen-if-some-names-are-long
[67693] On mobile, list of names for mentions spills out of screen if some names are long
2025-10-15 13:24:48 +02:00
jjabari-op 7c06675923 Documentation/59549 add short documentation around our hotwire and viewcomponent usage (#17250)
* [#59549] Add short documentation around our Hotwire and ViewComponent usage

https://community.openproject.org/work_packages/59549

* added first draft of the requested documentation

* Update docs/development/concepts/hotwire-view-components/README.md

Co-authored-by: Christophe Bliard <c.bliard@openproject.com>

* Update docs/development/concepts/hotwire-view-components/README.md

Co-authored-by: Christophe Bliard <c.bliard@openproject.com>

* Update docs/development/concepts/hotwire-view-components/README.md

Co-authored-by: Christophe Bliard <c.bliard@openproject.com>

* Update docs/development/concepts/hotwire-view-components/README.md

Co-authored-by: Christophe Bliard <c.bliard@openproject.com>

* Update docs/development/concepts/hotwire-view-components/README.md

Co-authored-by: Christophe Bliard <c.bliard@openproject.com>

* Update docs/development/concepts/hotwire-view-components/README.md

Co-authored-by: Christophe Bliard <c.bliard@openproject.com>

---------

Co-authored-by: Oliver Günther <o.guenther@openproject.com>
Co-authored-by: Christophe Bliard <c.bliard@openproject.com>
2025-10-15 13:07:38 +02:00
Mir Bhatia 1dd425e3f9 Add specs 2025-10-15 12:03:52 +02:00