docs/release-notes/14/14-0-0/README.md
Release date: 2024-04-24
We released OpenProject 14.0.0. The major release contains several bug fixes, and we recommend updating to the newest version. In these Release Notes, we will first list important technical updates, then give an overview of important feature changes. At the end, you will find a complete list of all changes and bug fixes.
Starting with OpenProject 14.0, docker images will be published to openproject/openproject on Docker Hub. If your setup is still using the old image name (openproject/community), you will need to update your configuration to use the new image names.
All previous images have been pushed there as well, so you can simply update your configuration to use the new image name ahead of your update.
In the relations API, the attribute delay has been renamed to lag. This change is to align the API with the terminology used in project management and the UI. For more information, see #44054.
In version 13.1 we have overhauled our system to handle internal permission checks by allowing permissions to not only be defined on project or global level, but also on resources like work packages. Therefore, we have introduced new methods to check permissions. The old methods have been marked as deprecated and are now removed in 14.0.
Affected methods are:
User#allowed_to?User#allowed_to_globally?User#allowed_to_in_project?If you have developed a plugin or have custom code that uses these methods, you need to update your code to use the new methods. For more information, see #51212.
We have changed the number and naming of the configurable design variables. This simplifies the process of setting the desired color scheme for users. It also allows us to get closer to the Primer design system in order to benefit from its other modes such as the dark mode or the colorblind mode in the future.
The following variables have been changed:
| Old name | New name | Notes |
|---|---|---|
| primary-color | primary-button-color | Was merged with the previous "alternative-color". The value of "alternative-color" was kept. |
| alternative-color | primary-button-color | Was merged with the previous "primary-color". The value of "alternative-color" was kept. |
| primary-color-dark | - | Will now be calculated automatically based on the "primary-button-color" |
| link-color | accent-color | Is not only used for links, but for all decently highlighted elements (e.g. the selection state in a datepicker). |
| The (old) value of "primary-color" was use for this. |
If you have developed a plugin or have custom code that uses these variables, you need to update your code to use the new names. The rest of the variables is unchanged. For more information, see #53309.
The model_changeset_scan_commit_for_issue_ids_pre_issue_update hook has been removed completely. This was made necessary as the code around it was not making use of the proper update mechanisms (Service objects) which lead to inconsistencies in the data, i.e. ancestor work packages. For more information, see #40749.
Since the done_ratio is now a read only value, derived from work and remaining work, the commit_fix_done_ratio setting has been removed. For more information, see #40749.
available_responsibles from the APIThe available_responsibles endpoint has been removed from the API. This endpoint was used to retrieve a list of users that could be set as the responsible for a work package. This information has been identical to the results by the available_assignees endpoint. When you are using the available_responsibles endpoint in your application, you should switch to using the available_assignees endpoint instead.
There are some major changes in terms of progress reporting for work package hierarchies. The calculation of progress (% Complete) in work package hierarchies is now consistent. This leads to the following important changes:
In Work-based progress reporting, % Complete will be automatically calculated and can therefore no longer be edited manually. This means that for a work package to have a value for % Complete, both Work and Remaining work are required to be set. To make this link clear and transparent, clicking on any of the three values to modify them will display the following pop-over:
In Status-based progress reporting mode, Work is not a required value. However, if Work is set, Remaining work is automatically calculated. To make this link clear and transparent, clicking on any of the three values to modify them will display the following pop-over:
Admins are able to exclude specific work packages (e.g., those marked as rejected) from the total sum calculations of their parent. In this case, a small info icon will appear next to excluded values:
In addition to these changes, the section 'Estimates and Time' has been renamed to 'Estimates and Progress' and this is where you will now find % Complete. Also, the seeding of statuses has been fixed to include % Complete values and in the Progress modal, you will now be able to preview changes amongst the fields live.
Please note that regarding progress reporting, updating to OpenProject 14.0 might result in automated data modification in certain cases. See our blog to learn about the details and motives on these significant changes to progress and work estimates and how it might affect you.
With OpenProject 14.0, you are now able to view and edit custom fields for projects in a structured way, organized in sections, on the project overview page. These fields are now referred to as 'Project attributes'. Admins can edit them directly on the project overview page:
Project attributes as well as the sections can be managed in administration/projects/project attributes.
Until now, there have been uncertainties with project-specific custom fields from time to time. This is why the tab 'project' has been removed from the custom fields admin settings pages. Instead, project custom fields are now edited within their own admin settings page. Also, the custom fields widget has been removed.
As described above, project custom fields are now called 'Project attributes' and can be shown in a sidebar on the project overview page on a per-project configuration.
OpenProject's (Dynamic) Meetings have been updated with the following new features:
With OpenProject 14.0, admins now get email notifications when a file storage (e.g. Nextcloud) is unhealthy. To avoid sending unwanted messages, we also added the option to deactivate these health status notifications for a storage.
Read more about file storage troubleshooting in our documentation.
If you copy a project where a file storage has automatically managed project folders selected, you will now have the following options:
As of 14.0, admins are asked whether they also want to remove access to shared work packages when removing a project member or group from a project.
The team planner allows for easy planning of users assigned to work packages. It is now possible to have the team planner span more than two weeks, with newly added options for 4-week and 8-week timeframes.
As mentioned in the earlier blog post about the Primer Design System, work is ongoing to unify more and more components of the application to match this design. In 14.0, we have started to add new primer-based page headers.
<!--more-->Apart from the features mentioned above, there have been a lot of other changes, smaller features and, of course, bug fixes for OpenProject 14.0:
<!-- Warning: Anything within the below lines will be automatically removed by the release script --> <!-- BEGIN AUTOMATED SECTION -->A very special thank you goes to our sponsors for features and improvements of 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:
Silas Kropf, Philipp Schulz, Benjamin Rönnau, Mario Haustein, Matt User, Mario Zeppin, Romain Besson, Daniel Hilbrand, Christina Vechkanova, Sven Kunze, Richard Richter, Julian Wolff
Last but not least, we are very grateful for our very engaged translation contributors on Crowdin, who translated quite a few OpenProject strings! This release we would like to highlight user izzahk who has done an outstanding number of translations for the Malaysian language in recent weeks.
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!