As springtime approaches, our 🌷 is blooming with new developments.
Check out this month’s release note and see for yourself what’s up in Tuleap 14.6.


Invite users in Tuleap Projects

In the previous release, we lowered the entry bar for newcomers invited to the platform (reduce the number of roundtrip for account validation). We now move one step forward with the ability to invite users directly in a project.

99.9% usage of Tuleap implies to be member of at least one project. As a matter of fact, the invitation process until now was almost consistently:

  1. Project admin: setup a project
  2. Project admin: invite people to join this project
  3. Project admin: wait for people to join
  4. Invitee: receive invitation and create an account
  5. Invitee: land on a Personal Dashboard and wait until project admin add them to some project
  6. Project admin: receive a notification and add people to project

At steps 3, 6 there is a random wait time due to the availability of the people to create accounts and do the administrative action on Tuleap to add members. At step 5, invited people are dropped on Personal Dashboard that has no meaningful content until they got added to a project. This is a lot of potential source of frustration and inability to grasp what’s going on at the worst possible moment: the discovery.

New invitation mechanism now includes the project in which the invitee should be added

Project admin invites a user inside a project
Project admin invites a user inside a project

And when invitee dares to register, they now land directly in the project, as a member

The new registration process is then:

  1. Project admin setup a project
  2. Project admin invite people to join this project
  3. Invitee receive invitation and create an account
  4. Invitee lands in project and start digging around

The next steps of this work will focus on the improvement of navigation and address the “What do I do next?” question.

Deprecation of legacy color palette in Trackers

Finding the appropriate color for the web is Hard ™. You have to take care of a lot of things to ensure the final rendering will be readable and accessible in all contexts. This work has been done for Tuleap Trackers and since a while, it’s also available for end-users selected colors with a dedicated palette (of colors).

Trackers that were created before this new palette (2018) still had the possibility to use the legacy “color picker” that doesn’t take all the rendering issues into account. Starting Tuleap 14.6, only the new color palette will be available when creating or updating colors. Existing colors remain untouched.

Tuleap Color Palette in tracker fields
Tuleap Color Palette in tracker fields

Tuleap External Plugins become Tuleap Apps

TL;DR all Tuleap Plugins are now part of main Tuleap source tree. This doesn’t change anything for end users but simplifies a lot the day-to-day work of Tuleap developers.

Historically, it was possible to have Tuleap Plugins developed and maintained outside the main source repository. While technically possible it was a real PITA and the only one who actually did that were… Tuleap Developers… just to ensure it was possible to do it. This was bringing little to no value but proved to be error prone and time consuming. The whole reasoning can be read in the corresponding Architecture Decision Record. All Tuleap Plugins must now be part of the main source tree.

This simplifies the process for 3rd party development as it draws the light on remaining option: Tuleap Apps. Tuleap Apps are built on top of reliable APIs (REST) that requires little to no Tuleap related maintenance (because of backward compatibility of Tuleap REST APIs) with simplified and secured user management thanks to OAuth2. For the record, this approach is already used in production by the Tuleap team itself for the integration of MediaWiki 1.35+ in its “Standalone” version.

Bugs and requests

There were 47 bugs fixed and requests implemented during the 14.6 release cycle. Bugs and security fixes were already back-ported on Tuleap Enterprise builds. You will find below a detailed list of fixes. The most notable ones are in bold.

Security

  • #30734 XSS through the name of a color of select box values – CVE-2023-23938 – CVSSv3 score: 5.5 (Medium)
  • #31066 git: 2.39.1 -> 2.39.2 (CVE-2023-22490 and CVE-2023-23946)

Tracker

  • #30372 Do not silently truncate text input
  • #31098 Project created from DB templates doesn’t keep date reminder configuration
  • #30411 Project created from DB templates doesn’t keep notification configuration
  • #31068 Field dependencies not properly checked at artifact creation
  • #31067 Cardwall renderer fatal error when `type` is not a selectbox
  • #30746 Remove list-picker feature flag
  • #30735 Error 500 in artifact modal when an empty date field has been left unmodified
  • #31097 Data with a vertical tabs breaks the gantt chart
  • #30749 Spelling mistake in fr_FR translation when adding an artifact to the top backlog

Document

  • #30745 Add hints about permissions deduplication in Document

Git & Pull Request

  • #30013 Be able to reopen an abandoned pull request
  • #31093 Post-receive hook does not use the `git` binary provided by Tuleap

Roadmap

  • #31073 Roadmap tooltip title is not readable

Import from Jira

  • #31084 Tuleap must be able to import huge XML files
  • #31094 Jira import tool must deal with missing agile endpoint

Standalone MediaWiki

  • #31062 System service can be wrongly used
  • #28829 Tuleap Skin improvements (as of Tuleap 14.0)
  • #30729 Sidebar no longer shows up

Legacy MediaWiki

  • #31065 MW 1.23 creation fails when Math extension is installed
  • #30732 Legacy MediaWiki cleaning tool is broken

Writing in Tuleap

  • #29607 Tuleap link auto detection doesn’t handle underscore properly

Full Text Search with Meilisearch

  • #30751 Meilisearch: 0.30.5 -> 1.0.0
  • #31099 Meilisearch: 1.0.0 -> 1.0.2

ONLYOFFICE

  • #31096 Add item title to the ONLYOFFICE editor page title

Platform administration

  • #31071 Statistics computed in the ROOT_DAILY expects the docman plugin to be available

Receive once a month the latest Tuleap updates