OpenProject 17.0.0

Release date: 2025-11-27

We released OpenProject OpenProject 17.0.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

PostgreSQL update to 17.0

The docker and packaged installations are now using PostgreSQL 17.0 by default. Note that there is no automatic upgrade for your cluster if you are running older versions of PostgreSQL. Please see our database migration guide on how to upgrade to newer versions of PostgreSQL.

For packaged installations using SLES 12 and 15, automatic installation of PostgreSQL has been removed due to incompatible repositories being used. Please follow the official documentation on how to upgrade your database for these distributions.

Removal of special semver

We removed the special fragment of the semantic version of OpenProject. This has not been in use. Unless you are relying on this value in one of your plugins, you can ignore this change.

Reference: [#67036]

Bug fixes and changes

  • Bugfix: User avatar is missing in user invite modal [#38109]
  • Bugfix: "Stay logged in" in German (and Spanish) truncated on login screen - not enough spacing [#45921]
  • Bugfix: Inconsistent wording on filter operators for hierarchy CF [#59752]
  • Bugfix: CKEditor logo z-index bug [#60535]
  • Bugfix: Back navigation from Full work package page to Rails pages broken [#60636]
  • Bugfix: List of supported environment variables doesn't contain OIDC variables [#61278]
  • Bugfix: Time is not displayed clearly in an auto-generated subject [#63477]
  • Bugfix: Low contrast in dark mode: links in ckEditor [#64461]
  • Bugfix: SSO users can still use the internal login but can't change password [#64567]
  • Bugfix: Global search is not usable via keyboard [#65066]
  • Bugfix: Truncation of "Tage" (Days) in duration field when language=DE [#65227]
  • Bugfix: Validation of essential OIDC claims causes server error when failing [#66289]
  • Bugfix: Insufficient contrast in color mode light high contrast [#67175]
  • Bugfix: Wrong time indicated for some meetings in iCal download [#67330]
  • Bugfix: BlockNote: bullet points don't show when saved if followed by checklist [#67383]
  • Bugfix: BlockNote: Toggle lists appear as bullet points after a document is saved [#67384]
  • Bugfix: BlockNote: Always adding an extra row (header) in the table [#67389]
  • Bugfix: Fix accessibility issues in Angular templates detected by ESLint [#67399]
  • Bugfix: BlockNote: Color for text not applied from the block side menu [#67507]
  • Bugfix: BlockNote: Video and audio don't play and don't show when saved [#67533]
  • Bugfix: BlockNote: OpenProject work packages are sorted by their ID instead of the last updated by [#67536]
  • Bugfix: BlockNote: Work package macro loses its styling upon save and also loses its functionality on edit [#67537]
  • Bugfix: BlockNote: On the Work package macro the status is invisible on black background [#67538]
  • Bugfix: BlockNote: work package search does not list the correct wp when searching with ID [#67540]
  • Bugfix: BlockNote: searching for a non-existent work package results in placeholder string being saved in the editor [#67554]
  • Bugfix: BlockNote: underline functionality doesn't render correctly when saved [#67555]
  • Bugfix: Low color contrast on Buy now button on enterprise banners [#67834]
  • Bugfix: BlockNote on mobile: slash menu almost out of sight [#67849]
  • Bugfix: BlockNote on mobile: placeholder text overlaps the list element in toggle list [#67850]
  • Bugfix: BlockNote on mobile: emoji picker overflows horizontally and unable to scroll [#67852]
  • Bugfix: BlockNote on mobile: impossible to scroll through work package dropdown [#67853]
  • Bugfix: TypeError in Storages::AutomaticallyManagedStorageSyncJob#perform [#68026]
  • 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: DangerDialog text is unnecessarily convoluted [#68377]
  • Bugfix: When deep linking after a large image comment, the highlighted comment is out of view [#68409]
  • Bugfix: When logging out, display shortly defaults to light mode before detecting OS display mode [#68459]
  • Bugfix: Sending a "name" property to the users API crashes [#68501]
  • Bugfix: User with readonly access to documents can connect to hocuspocus and make changes [#68503]
  • Bugfix: Documents index page: pagination per page options overflow on mobile [#68533]
  • Bugfix: UI broken when user with whom a wp has been shared opens the project [#68561]
  • Bugfix: Health check for offline_access happens too late [#68615]
  • Bugfix: Documents index page: loading indicator for search is old [#68625]
  • Bugfix: Opening placeholder user profile gives a 500 [#68655]
  • Bugfix: User cannot correct input in user invite modal [#68658]
  • Bugfix: Fix various Browser console warnings 😈 [#68666]
  • Bugfix: "Session expiry time after inactivity" always shown in Admin > Authentication > Login and registration form [#68679]
  • Bugfix: Form state is not initialized when rendering a tree view with already selected items [#68698]
  • Bugfix: Project CF of type user does not display groups or placeholder users [#68702]
  • Bugfix: Incorrect (British) usage: "expiry" vs "expiration" [#68715]
  • Bugfix: Radio buttons to compare Repository Revisions do not adjust correctly [#68740]
  • Bugfix: Custom logos with higher details than OpenProject might look small [#68766]
  • Bugfix: Adding 1 meeting outcome actually adds 2 [#68770]
  • Bugfix: Incorrect phrasing "Copy as one-time" in More menu of meeting series [#68825]
  • Bugfix: Grammatical error in Project life cycle description [#68966]
  • Bugfix: Angular widget titles are truncated too much on mobile [#68969]
  • Bugfix: When a hierarchy/weighted item list is used as filter, sub-items show the short name/score of the ancestor [#69014]
  • Bugfix: Draft meetings don't show up in the meetings selector [#69015]
  • Bugfix: Shared work package not showing images of comments [#69056]
  • Bugfix: Ungracefully stop synchronization if Nextcloud plugin is disabled [#69177]
  • Bugfix: 500er when changing sort order of work package status in administration [#69186]
  • Bugfix: Reduce the amount of Document journals being created [#69228]
  • Bugfix: SSO Logout Url not correctly forwarded to Logout Endpoint [#69234]
  • Bugfix: Label for the admin document types reflects "priorities" instead of "types" in it's messaging [#69304]
  • Bugfix: Clicking "Check all"/"Uncheck all" opens and closes collapsible sections [#69325]
  • Bugfix: The step counter is incorrect for templates [#69348]
  • Bugfix: Adding child items to a hierarchy sometimes inserts them at the wrong place [#69358]
  • Bugfix: Subitems overview widget can be navigated until blankslate + does not update URL [#69359]
  • Bugfix: Project filter does not work [#69439]
  • Feature: Reduce visibility of all users when addings members to a project [#55270]
  • Feature: Add work package type, status and meta status to what the global search is searching on during typeahead [#56831]
  • Feature: Configure project attribute sections to be shown as widgets on the project overview page [#61445]
  • Feature: A single 'My Meetings' iCal calendar subscription action so users can always have their calendars in sync with the meetings [#63463]
  • Feature: Presentation mode for Meetings [#63634]
  • Feature: SharePoint Storage Creation [#64176]
  • Feature: SharePoint Storage Basic Functionality [#64177]
  • Feature: SharePoint Storage AMPF support [#64178]
  • Feature: [Accessibility] Provide alternative text for images [#64225]
  • Feature: Primerize user invitation flow [#64879]
  • Feature: Redesign the "My Account" page using Primer [#65402]
  • Feature: Project attribute help texts can be added directly in creation or edit of the attribute [#65413]
  • Feature: Add SharePoint documentation [#65553]
  • Feature: Create "Portfolio" and "Program" [#65850]
  • Feature: Visualize "Portfolio", "Program" and "Project" differently in dropdowns and lists [#66307]
  • Feature: Limit hierarchy options based on workspace type [#66308]
  • Feature: Limit template options based on workspace type [#66313]
  • Feature: Differentiate workspace types in API [#66314]
  • Feature: Seeding Document types [#66325]
  • Feature: Slash command: Link existing work package (size: small-block) [#66326]
  • Feature: Collaborative editing [#66328]
  • Feature: Create a new global module: "Portfolios" [#66435]
  • Feature: Split project overview into tabs "Dashboard" and "Overview" [#66492]
  • Feature: Update the look and feel of the 'Project status' widget in Project overview [#67203]
  • Feature: Meeting draft mode [#67268]
  • Feature: Allow multiple text-based outcomes [#67310]
  • Feature: BlockNote: Does not handle uploading attachments [#67403]
  • Feature: Document show/edit view layout [#67424]
  • Feature: Administration of document types [#67443]
  • Feature: Style the rich-link workpackage macro (light theme) [#67471]
  • Feature: Individual home/overview of widgets for each level (project, program, portfolio) [#67610]
  • Feature: Ensure that the existing Document permissions are respected [#67651]
  • Feature: Improve comprehension and navigation (PageHeaders and Breadcrumbs) of entry pages [#67724]
  • Feature: Custom logo for mobile [#68323]
  • Feature: Overview member widget groups members by role [#68486]
  • Feature: Support non-nested long text fields macro in PDF Export [#68540]
  • Feature: Place "Move to section" above "Move to backlog" in the menu [#68547]
  • Feature: All widgets (Overview): Add a blankslate for when there is nothing to show (empty or no permissions) [#68556]
  • Feature: Add i18n for BlockNote [#68606]
  • Feature: Improve perceived performance of project selector [#68612]
  • Feature: Support multiple outcomes in the PDF exports [#68636]
  • Feature: Documents viewed in read-only should see live updates [#68699]
  • Feature: Add Files tab to existing document edit view [#68710]
  • Feature: Administration of real-time collaboration settings [#68732]
  • Feature: Enforce EE level for portfolio module and the creation of programs and portfolios [#68763]
  • Feature: List currently connected users [#68764]
  • Feature: Add translations to the rich-link workpackage macro [#68811]
  • Feature: Improve project create form by moving template selection to a separate page [#68856]
  • Feature: Set project roles based on selection in user project attribute [#68859]
  • Feature: Send out notification on creation of a project [#68860]
  • Feature: Create work package to submit project initiation request [#68862]
  • Feature: Store PDF export of project wizard in Nextcloud/project storage [#68864]
  • Feature: Remove experimental feature flag for built-in OAuth2 application [#68875]
  • Feature: Truncate breadcrumb in PageHeader [#68906]
  • Feature: Introduce "Create program" and "Create portfolio" permission [#68918]
  • Feature: Sync up last updated at via hocuspocus awareness protocol [#68939]
  • Feature: Primerize Administation > Attribute help texts forms [#68953]
  • Feature: Style the rich-link workpackage macro (dark theme) [#68978]
  • Feature: Primerize Admin > System Settings forms [#69095]
  • Feature: Move "meetings" tab before GitHub and GitHub [#69118]
  • Feature: Introduce permission to export projects [#69124]
  • Feature: Design Custom Admin Page for associating the custom field with a role [#69164]
  • Feature: When changing roles associated with a custom field, modify existing memberships [#69166]
  • Feature: Adapt styles and information when user has no permission to see the work package [#69192]
  • Feature: Max width for create wizard and centered design [#69194]
  • Feature: Use caption text for project attributes [#69198]
  • Feature: Add high contrast color variants for status and type to BlockNote work package link block [#69224]
  • Feature: Button to create a project from the subitem widget in a portfolio overview with pre-selected templates [#69347]
  • Feature: Button to open project creation wizard from overview [#69402]
  • Feature: Add relative link to project initiation request from work package comment [#69403]
  • Feature: Remove border box in project creation form [#69405]
  • Feature: Filter project attributes of type hierarchy by short name [#69412]
  • Feature: Better naming of the project copy status when copying from template [#69418]
  • Feature: Hide "Subproject of" field when selected from inside a parent [#69419]
  • Feature: Allow SharePoint integration setup with more restrictive permissions [#58445]

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 Alexander Aleschenko, Stefan Weiberg, Markus Preisinger.

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!