Documents (Tuleap Enterprise)

Cut, Copy and paste

The new Document manager is now able to manage cut, copy & paste operations.

Might be a detail but fancy, the cut/copy information works across browser’s tabs. It means that if you copy in one tab you can paste in another one without having to reload the page. The copy/cut information is also kept if you reload the page anyway.

A folder about to be paste

Embedded documents

On large screens, embedded documents might be difficult to read on very long lines. You can now choose to reduce the width of the display. It’s a user preference that will be kept document per document.

Choose display of embedded documents

Properties edition

  • story #13589 Update hardcoded metadata
  • story #13463 Split PATCH docman_items_type/id route and add new routes for updating metadata on type that can not be updated with the modal

Document comes with a set of properties that are pre-defined (aka hardcoded metadata):

  • Title
  • Description
  • Owner
  • Status
  • Obsolescence date

Those properties can be modified with the new Document interface:

Edit properties of a document

Please note that folders can hold default values for those properties (or even apply recursively values to existing documents!). This part is also covered:

Edit properties of a folder

Fixed bugs and requests on Document and docman

  • request #13636 Can not create a document via the UI when a custom field is present
  • request #13633 None status is not correctly displayed in quicklook panel
  • request #13624 Copy of a link should be visible in the history
  • request #13477 References to items are not transformed in the metadata of text type in the document plugin
  • request #13118 approval tables can share same id regardless of their types


  • story #12537 configure my burndown/up & sprint with a start date & end date

The story is still under development and it’s not yet possible to change the time frame definition. However the underlying work is already there, it means that a new semantic was developed and the definition of the timeframe used by agile dashboard milestones, burn-up, burn-down and velocity chars no longer depends on hardcoded fields.

You get access to this new semantic in the Semantic tab of tracker administration:

Timeframe semantic

Fixed bugs and requests on trackers

  • request #13615 Artifact import CSV : warn people about artifacts which are not able to be imported
  • request #13590 change history does not mention attachment deletion
  • request #13588 A multiselect box field must be "submittable" by user that create an artifact
  • request #13564 Velocity calculation must works with initial effort as a list field
  • request #13563 Add tabs at the top of tracker global admin
  • request #13560 Adapt Hidden Fieldsets post-action text in workflow configuration
  • request #13042 Wrong svg color for My artifacts widget empty state

Project Administration – Users and groups

  • story #13490 have a consistent management of projects & groups members

Project members management

Management of users and groups is powerful in Tuleap but might be complex to grab in some situations due to historical purpose. For instance, until 11.4 you could add a user to a given user group in your private project and this user was not able to access the project itself because you forgot to add him as member of the project.

This behaviour is gone and now private projects have a synchronous management of project members. It means that whenever you add someone in a user group, she will be added automatically as project member. If the private project forbids restricted users, the check will be done at user group level as well.

For public project, project admins have to enable "synchronous project members management" option to get the same behaviour. The default behaviours remains: project admins have to explicitly add users as project members.

The documentation was updated with the complete description of the new behaviour

Fixed bugs and requests on project admin


Dev tools and tests

Coding standard enforcement and static analysis

  • request #13292 Integrate vimeo/psalm to the test pipeline
  • request #13558 Enforce indenting with 4 spaces (and fix the existing codebase)
  • request #13478 Enforce a set of coding standard rules on how PHP use statements should be used

Releases stats

  • 1952 files changed, 83098 insertions(+), 67889 deletions(-)
  • They made the release (number of commits, author, company)
    • 184 Thomas Gerbet, Enalean
    • 136 Marie Ange Garnier, Enalean
    • 79 Joris Masson, Enalean
    • 67 Yannis ROSSETTO, Enalean
    • 66 Manuel VACELET, Enalean
    • 46 Nicolas Terray, Enalean
    • 33 Thomas Gorka, Enalean
    • 32 Clarck Robinson, Enalean
    • 12 Martin Goyot, Enalean
    • 10 Benjamin Bouillot, Enalean
    • 7 Benjamin Dauton, Enalean
    • 6 lorentzr, Enalean
    • 1 azzouzh, STMicroelectronics (first contribution)


Tuleap 11.4 Validation Scores

Bug fix

PHP 7.3 support

System Event Management

Project creation

  • request #13625 Tracker hierarchy leads to a PDO error at project creation


Project Sidebar

  • request #13651 Project sidebar Javascript must wait for all the CSS to be loaded
  • request #13645 Some service labels are not well displayed in project sidebar


  • request #13646 Incorrect path in compute_all_dailystats.sh
  • request #13583 Project creation crashes when the document manager is enabled after the creation of the first projects

Tracker v3


  • request #13599 Errors happening during the collection of the REST routes are not logged
  • request #13593 REST route PUT /user_groups/{id}/users crashes when an incorrect representation is given
  • request #13440 REST API: Project shortname is forced to lowercase characters




PHP 7.4 support

  • request #13616 Fix broken burndown field tests when ran with PHP 7.4