Tuleap 16.10 is out, bringing full support for PHP 8.4 and smoother deployments with automated configuration. A must-have update to keep your instance fast, secure, and future-proof.

Links in Cross-Tracker Search results

This is a major leap forward for Cross-Tracker Search and data visualization in Tuleap: linked artifacts are now displayed in table results.

Linked artifacts in Cross-Tracker Search results

Linking artifacts together is one of the most powerful features of Tuleap. Being able to display them in a meaningful and useful manner is one of the most challenging tasks for the development team 😅. Let’s dive in the choice we made.

Display all links

When an artifact is expanded, all links are displayed, regardless of their type or direction. Let’s use the same data as in the initial screenshot with epics and user stories, but this time, we will focus on user stories.

What do we see in this new screenshot?

  • The top-level artifact are now the user stories.
  • We expanded the links of “Find Owners” and see that it is linked to many items (test cases, tasks, epics, sprints, and releases).
  • There are two kinds of arrows: “forward” arrows (from story to tests or tasks) and “reverse” arrows (from epic to story).

More precisely, we can see that the relationship between the epic “Pet Owner can register their pet in the system” is now displayed with a “reverse” arrow because it is a parent/child link with the epic as the source of the link.

From a data perspective, the relationship between artifacts is a graph (more specifically, a directed graph), but we display this graph as a tree in a table. This poses unique challenges in terms of user interface and user experience. Feel free to express your feedback if you find this representation useful or if you have suggestions to improve the display.

Display all links (again)

While the TQL query that generates the initial table (the top-level elements) has filters, the expanded artifacts have none. Everything is displayed without considering the WHERE or FROM conditions of TQL. However, the links are displayed with the same sorting criteria (ORDER BY).

Display all links (really)

There are no limits in the depth of links that can be display (well maybe at some point your browser, your eyes or your brain will be the limit).

Way too many links were expanded (7)
Just because you can doesn’t mean you should.

What’s next ?

This is a first step, and we continue to work on this matter. The next main features will include:

  • Displaying the link type as a column.
  • Allowing TQL queries to display columns that might only have values for linked artifacts.

We also plan to include linked artifacts in the XLSX export, but we need your feedback on this. We would love to discuss how this export could be more useful for you. Feel free to get in touch with us through your regular contact at Enalean.

Welcome PHP 8.4

Upon upgrading, Tuleap will automatically switch to the PHP 8.4 engine (from PHP 8.2). This should be transparent for most installations, except if you have modified the PHP configuration. Please read the deployment guide carefully.

Bugs and requests

During the 16.10 release cycle, 32 requests were implemented. Bugs and security fixes have already been back-ported on Tuleap Enterprise builds. You will find below a detailed list of fixes. The most notable ones are in bold.

Security

  • #43693 XSS when displaying the children of a parent artifact – CVE-2025-53541 – Moderate
  • #43674 User enumeration via the lost password form – CVE-2025-52899 – Moderate
  • #43704 Artifact disclosure to a mentioned user via email notifications – CVE-2025-53902 – Moderate

Trackers

  • #43705 Loss of artifact links if field is not loaded
  • #43679 Unable to comment an artifact
  • #43689 Submit button not available in HTML Follow-ups
  • #43671 Link field with reverse links does not appear on printer version
  • #43676 List picker: accents are taken into account in the search
  • #43686 trackers Pending for deletion list might be huge
  • #43336 Tracker report can throw warning when aggregates are empty

Roadmap

  • #43677 Tooltips are not shown in Gantt for milestones

Kanban

  • #43690 Improve error message when kanban has field dependencies error
  • #43680 plugin kanban does not clean the service table after being uninstalled

Widgets

  • #43685 Project milestone widget does not show milestone’s description as processed markdown

Git & Pull Requests

  • #43673 Branches of parent repository should be presented first
  • #43696 Git: 2.49.0 -> 2.50.0
  • #43702 Git: 2.50.0 -> 2.50.1
  • #43672 Git admins cannot update pull request merge policy in git settings template

Site wide

  • #43698 Crash when accessing the password reset confirmation page without parameters
  • #44016 Disable timeout when starting Tuleap systemd service
  • #43697 Move base image from Rocky Linux 9.4 to 9.6

Receive once a month the latest Tuleap updates