---
title: "Tuleap 15.13 (sept. 2024)"
slug: "tuleap-15-13"
updated: 2026-01-23T14:24:54Z
published: 2026-01-23T14:24:54Z
canonical: "help.tuleap.com/tuleap-15-13"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://help.tuleap.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Tuleap 15.13 (sept. 2024)

## Next level Cross-Tracker Search

Cross-Tracker Search is the ability to look for artifacts (user stories, bugs, epics, etc.) without having to know which tracker they were created in.

In spring, we extended the [search ability to all types of fields using the ”duck typing” principle](https://www.tuleap.org/resources/release-notes/tuleap-15-7). Now you can choose what to display in the table columns, and how to select trackers.

### Show me what is open in my project

Sure ! here we go. This example demonstrates how the new Cross-Tracker Search can quickly give you a comprehensive view of your project’s status, pulling information from multiple trackers into a single, easy-to-read dashboard.

![Tuleap project dashboard with two widget, the new cross tracker search with all open query and heartbeat.](https://www.tuleap.org/wp-content/uploads/2024/09/xts-self-open-fs8.png)*Cross tracker search widget with all open artifacts of the project* 

How did we do that ?

Cross-Tracker Search widget now has an ‘expert’ mode that allows the use of an extended version of [Tuleap Query Language](https://docs.tuleap.org/user-guide/tql.html#expert-mode) (aka TQL) which will sound familiar to the most tech-savvy among us. It’s based on the trilogy `SELECT … FROM … WHERE …`

- `SELECT` tells what you want to display (the columns in the table)
- `FROM` in which trackers the search should be performed
- `WHERE` the search criteria you want to apply

The two new parts of 15.13 are SELECT and FROM.

### SELECT some fields

Until now columns were fixed and based on semantics. The same technical challenges apply both to rendering columns across tracker and to searching values. So we applied “duck-typing” approach. We already detailed [duck-typing in a previous release note](https://www.tuleap.org/resources/release-notes/tuleap-15-7), so we won’t repeat ourselves here. How does it apply for SELECT ?

Let’s take the following query `SELECT @pretty_title, @tracker.name @status, acknowledged_time` we have four different kinds of column

- `@pretty_title` corresponds to a fancy display of artifact titles with tracker name and artifact id. Behind the scenes, it leverages the Title semantic.
- `@tracker.name` is a special selector (not a field of an artifact) that will display the name of the tracker in which the artifact sits.
- `@status` is the value of the Status semantic
- `acknowledged_time` is the value of the `acknowledged_time` field. Here there is duck-typing.

For the latter, a value will be displayed if the artifact has field with that name AND if all trackers that have `acknowledged_time` have a common definition (either date or date/time). If `acknowledged_time` is a select box in one tracker, a text field in the second and a date field in the third tracker, Tuleap will raise an error because it cannot render values of incompatible types.

Of course, it’s not limited to date/time fields. You can SELECT fields of any types.

### FROM some tracker(s), in project(s)

This is the second stage of the rocket. Selecting and filtering fields is great but to be really compelling, Cross-Tracker Search must allows flexible ways to select trackers, as well as projects. The basics are:

- `FROM @project.name = 'guinea-pig' AND @tracker.name = 'bug'` means “bug tracker of guinea-pig project”
- `FROM @project.name IN ('moon', 'mars', 'jupiter') and @tracker.name IN ('story', 'epic')` means “Story or epic tracker in the 3 projects”

But we also have wider selections

- `FROM @project = 'self'` means “all the trackers of current project”
- `FROM @project.category = 'Scope::HelpDesk' AND @tracker.name = 'request'` means “all request trackers of projects that are in the HelpDesk [category](https://docs.tuleap.org/administration-guide/projects-management/projects-settings.html#categories)“

We even have a dedicated selector for projects that are using [Program Management](https://docs.tuleap.org/user-guide/program-management.html)

- `FROM @project = 'aggregated'` means “all projects that are aggregated to the current program”

### Performances & perspectives

You might wonder how performances are doing with those new capabilities. It turns out that it works quite well. We have done tests with ~100 trackers and 10’000 artifacts and response times are good. So far, what seems to have the biggest impact on the performances are the number of columns displayed. The more you add, the slower it gets. This is something we will investigate.

Looking ahead, our roadmap for upcoming releases includes two key areas of focus:

1. Enhancing the query capabilities: We plan to implement the ability to sort results using an `ORDER BY`clause, further improving the flexibility of the Cross-Tracker Search.
2. Improving user accessibility: Recognizing that not all users may be comfortable writing TQL queries, we’re working on developing more user-friendly interfaces for constructing complex searches.

These enhancements to the Cross-Tracker Search represent a significant step forward in Tuleap’s ability to provide comprehensive, cross-project insights. By breaking down the barriers between trackers and projects, we’re enabling teams to gain a more holistic view of their work, regardless of how it’s organized within the system.

We’re excited about the potential these features unlock for our users and look forward to seeing how you leverage them to streamline your workflows and enhance project visibility. As always, we welcome your feedback and suggestions as we continue to evolve and improve Tuleap.

## Bugs and requests

During the 15.13 release cycle, [33 bugs fixed and requests implemented](https://tuleap.net/frs/release/241/release-notes#!/linked-artifacts). 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.

### Trackers

- [#39333](https://tuleap.net/plugins/tracker/?aid=39333&amp;from_aid=37897) Fatal error in tracker reports with a TQL search looking for a non empty float field

### Taskboard

- [#39022](https://tuleap.net/plugins/tracker/?aid=39022&amp;from_aid=37897) Moving a card in Taskboard can have side effects

### Git & Pull Requests

- [#](https://tuleap.net/plugins/tracker/?aid=38641&amp;from_aid=37897)[38641](https://tuleap.net/plugins/tracker/?aid=38641&amp;from_aid=37897) pull request dashboard should display branches
- [#](https://tuleap.net/plugins/tracker/?aid=38640&amp;from_aid=37897)[38640](https://tuleap.net/plugins/tracker/?aid=38640&amp;from_aid=37897) Pull request overview should inform about potential merge conflicts

### Site administrators

- [#39347](https://tuleap.net/plugins/tracker/?aid=39347&amp;from_aid=37897) Project category shortname should not contains ::
- [#39338](https://tuleap.net/plugins/tracker/?aid=39338&amp;from_aid=37897) Homepage display is broken on large screens

### System

- [#39355](https://tuleap.net/plugins/tracker/?aid=39355&amp;from_aid=37897) Nginx should not try ipv6 for local node realtime server
- [#39021](https://tuleap.net/plugins/tracker/?aid=39021&amp;from_aid=37897) Update Tuleap Metrics Grafana dashboard to include metrics about Tuleap Functions and FTS

  

Un Tracker est un outil de suivi d'un type d'information qui permet de créer, gérer et suivre un ensemble d'artifacts partageant une même nature.

Dans l'écosystème Tuleap, un artifact est l'unité de base pour suivre le travail. C'est un élément géré dans un "tracker", et englobe tout ce que vous pourriez traditionnellement appeler un "ticket", une "tâche", un "bug", une "exigence", etc.
