OpenProject 17.3.0

Release date: 2026-03-26

We released OpenProject OpenProject 17.3.0. The release contains several bug fixes and we recommend updating to the newest version. In these Release Notes, we will give an overview of important feature changes. At the end, you will find a complete list of all changes and bug fixes.

Important feature changes

Important updates and breaking changes

Bug fixes and changes

  • Feature: Track working hours and availabilities for each user in the system [#34911]
  • Feature: Create boards on Sprint start [#69139]
  • Feature: Allow to manually trigger AMPF synchronization [#69320]
  • Feature: Webhooks should indicate which user caused a change [#69658]
  • Feature: Allow searching for work package types and status whenever selecting work packages [#70191]
  • Feature: Introduce sprints and replace versions in current backlogs view [#70496]
  • Feature: Primerize Backlogs Project Settings [#70778]
  • Feature: Sprints manageable from work package full/split view [#71061]
  • Feature: Create a PaginationComponent based on the Primer specification [#71063]
  • Feature: "Sprint Planning" view [#71257]
  • Feature: Inplace edit for project attributes on project overview page [#71380]
  • Feature: Prepare project identifiers for project-based semantic work package IDs [#71630]
  • Feature: Sharing of templates [#71653]
  • Feature: Adapt "change identifier" for semantic identifiers [#71896]
  • Feature: "Inbox" backlog bucket [#72198]
  • Feature: Sprints included in API (GET sprint and sprint on work package resource) [#72227]
  • Feature: Workflows UX improvement: Index page showing workflows by type [#72234]
  • Feature: Workflows UX improvement: Select relevant roles and statuses [#72239]
  • Feature: Make banners smaller so they do not block important content [#72657]
  • Feature: Backlog settings in version form removed [#72800]
  • Feature: Adapt "new project" for semantic identifiers [#72855]
  • Feature: Adapt "copy project" for semantic identifiers [#72856]
  • Feature: Workflows UX improvement: Make saving changes more straightforward and less error-prone [#72924]
  • Feature: Additional health checks for Nextcloud AMPF [#73085]
  • Feature: Closing a sprint [#73100]
  • Feature: Display all work package types in backlogs module [#73101]
  • Feature: Filter by sprints on work packages table [#73105]
  • Feature: Sorting and uniqueness constraint in "Inbox" and sprints [#73109]
  • Feature: Primerize Admin > Calendars & Date > Date format and Calendar subscriptions [#73113]
  • Feature: Primerize Admin > Emails and notifications [#73127]
  • Feature: Rework blankslate on "Sprint planning" view [#73129]
  • Feature: Handle moving work packages with sprint association to a different project [#73135]
  • Feature: Adapt creation of projects through the API for semantic identifiers [#73175]
  • Feature: Remove EE guards from boards [#73188]
  • Feature: Migrate existing positions to scope of project_id, sprint_id [#73220]
  • Feature: Show placeholder on empty backlogs admin settings page [#73226]
  • Feature: Disable "start" button on sprint on lacking dates [#73227]
  • Bugfix: Save button is not in its primary color [#44246]
  • Bugfix: Bulk Edit: Setting parent to a string causes 500 when backlogs active [#48296]
  • Bugfix: Project selector does not read selected items in screenreader [#61405]
  • Bugfix: Emoji selector does not read selected items in screenreader [#61406]
  • Bugfix: Children column on WP list cannot be expanded [#64491]
  • Bugfix: Truncation of "Tage" (Days) in duration field when language=DE [#65227]
  • Bugfix: Focus of a date input is lost in single mode date picker [#65415]
  • Bugfix: BlockNote: Color for text not applied from the block side menu [#67507]
  • Bugfix: Wiki menu visible when using the browser's print function/print dialog [#67643]
  • Bugfix: Error when creating a new work package after uploading an attachment to the previous one that was opened in details view [#67980]
  • Bugfix: Mobile web: When deep linking to a comment the comment is not fully scrolled into view [#68221]
  • Bugfix: Updating the activity anchor URL without a page load does not highlight the relevant target element [#68262]
  • Bugfix: Too much space between widget title and content on News overview widget [#68309]
  • Bugfix: Changing the filter on the activity tab with a large number of comments and slow network/compute lacks loading state while waiting for request completion [#68878]
  • Bugfix: Flickering spec ./modules/meeting/spec/features/structured_meetings/work_package_meetings_tab_spec.rb:392 [#68952]
  • Bugfix: Shared work package not showing images of comments [#69056]
  • Bugfix: User is redirected to Attribute help text admin after editing a help text from Project overview page [#69142]
  • Bugfix: Filtering such as "changes only" in work package with large amount of comments causes 500 error [#69154]
  • Bugfix: Clicking work package tabs triggers page reload and flickering [#69210]
  • Bugfix: Label for the admin document types reflects "priorities" instead of "types" in it's messaging [#69304]
  • Bugfix: Infinite SAML Seeding Loop Causing Disk Space Exhaustion [#69339]
  • Bugfix: Nextcloud: Unexpected files // wrong header format (HTTPX::Parser::Error) [#69367]
  • Bugfix: Days label is cut off [#69504]
  • Bugfix: API key input field is centered [#69511]
  • Bugfix: Pasting rich text into CKEditor crashes it [#69597]
  • Bugfix: Deleted Nextcloud storage stays selected in the PIR template [#69767]
  • Bugfix: Fix accessibility errors found by ERB Lint [#70166]
  • Bugfix: Work Package Export dialog resizes on switching format [#70183]
  • Bugfix: CI test suite fails out-of-hours: Unit specs [#70213]
  • Bugfix: Sidebar menu button unresponsive on mobile (after PIR) [#70388]
  • Bugfix: Missing list items when using checkboxes in tables [#70537]
  • Bugfix: Documents: when document content exceeds vertical height, the cursor does not scroll into view unless there is content typed [#70791]
  • Bugfix: Helm-Chart: Allow user to provide service specific annotations [#71055]
  • Bugfix: UI does not show that admins cannot change username/email of users who signed up through OIDC [#71099]
  • Bugfix: External link capture not working in documents [#71111]
  • Bugfix: Backup: include attachments checkbox cannot be checked [#71237]
  • Bugfix: Sending mails via sendmail does not work [#71447]
  • Bugfix: BlockNote Extension: Click on WP title opens new tab and redirects the current tab [#71898]
  • Bugfix: Connection error on successive navigation to and from a document [#71901]
  • Bugfix: Impossible to search for archived projects, page reverts to active projects list on its own [#71971]
  • Bugfix: Images that are added to attachment appear as files, not images. [#71976]
  • Bugfix: User without edit meetings permissions get a 403 when clicking on 'Duplicate meeting' menu item [#72208]
  • Bugfix: Logo disappears pretty early in certain layouts [#72369]
  • Bugfix: Backlogs: Not able to navigate through the more menu with arrows [#72460]
  • Bugfix: Insufficient space between action buttons on Invite user screen [#72548]
  • Bugfix: PDF artifact / initiation request is not updated [#72550]
  • Bugfix: Cursor isn't visible on mobile while editing (it's under keyboard) [#72656]
  • Bugfix: User can input anything in the default cost field [#72684]
  • Bugfix: User can input anything in WP unit costs [#72685]
  • Bugfix: New sprint creation dialog looks weird on mobile [#72784]
  • Bugfix: Sharing permission dependencies are not migrated [#72801]
  • Bugfix: Attribute help text not shown on project home page (overview tab) [#72807]
  • Bugfix: Provide more details when project with identifier exists in OpenProject [#72809]
  • Bugfix: Click position is lost when activating an inline edit field [#72837]
  • Bugfix: No line break in table cells after ordered/undordered/task list [#72846]
  • Bugfix: Right side bar from Overview page is read out before main page content [#72850]
  • Bugfix: Cannot accept meeting series invite (because newer version of the appointment already exists) [#72865]
  • Bugfix: Template drop-down is not showing if user starts meeting creation from global meeting index [#72873]
  • Bugfix: CI test suite fails out-of-hours: feature specs [#72882]
  • Bugfix: DPA email: comma missing after the name [#72916]
  • Bugfix: Project description caption appears for work packages description as well [#72931]
  • Bugfix: Jira Migrator: status that doesn't exist on OP doesn't get assigned to the work package [#72939]
  • Bugfix: Wrong message when wp created in Backlogs [#72951]
  • Bugfix: Backlogs: type that is not defined as story type disappears on creation from backlogs page [#72952]
  • Bugfix: Admin UI offers unsupported Wiki menu options [#72955]
  • Bugfix: Incorrect confirmation message when deleting a OAuth token [#72958]
  • Bugfix: Items multiplying on page and page becoming unresponsive when macros and code snippet are used [#73117]
  • Bugfix: Uploading new file to Nextcloud does not handle missing AMPF folder properly [#73122]
  • Bugfix: Users without permissions can see project attributes [#73208]
  • Bugfix: Remove a 2FA device from a user as admin does not work [#73218]
  • Bugfix: Drag&drop doesn't always work on backlogs page [#73222]
  • Bugfix: Duplicate work package title in html meta title tag [#73250]
  • Bugfix: Request for an user by key fails and stops the import [#73254]
  • Bugfix: Editing a news article shows 404 error [#73291]
  • Bugfix: Bad redirect after saving a wp list view configuration [#73395]
  • Bugfix: Hierarchy/WIL project attributes do not open with tree expanded [#73401]
  • Bugfix: Broken back navigation from board page [#73403]

Contributions

A very special thank you goes to our sponsors for this release. Also a big thanks to our Community members for reporting bugs and helping us identify and provide fixes. Special thanks for reporting and finding bugs go to Walid Ibrahim, Jörg Mollowitz, Александр Татаринцев, Robin Kluth, Natalie Stettner, Gábor Alexovics, Patrick Lenk, Daniel Elkeles.

Last but not least, we are very grateful for our very engaged translation contributors on Crowdin, who translated quite a few OpenProject strings! Would you like to help out with translations yourself? Then take a look at our translation guide and find out exactly how you can contribute. It is very much appreciated!