Enhancements

Tuleap Test Management (Tuleap Enterprise)

Steps allow to easily decompose test definitions and to make them easier to read and execute. It’s now possible to add a new step at any place in your flow (previously it was only at the end). In addition to that, it’s possible to delete any step or even to change steps order.

Re ordering of steps in TTM

Bugs and requests

New Document Manager (Tuleap Enterprise)

One step closer to final release, all the kind of project defined properties for documents are now taken into account in the new interface, at document creation as well as update.

Custom properties in Document

Same for permissions, it’s possible to manage the permissions for new or existing documents.

Permissions on Documents

Bugs and requests

  • request #13746 Document manager deletion REST endpoints does take into account the only_siteadmin_can_delete global option
  • request #13726 Cleanup information given by the docman plugin in the REST route GET /project/:id
  • request #13696 Deleting an item currently in the clipboard should clear the clipboard
  • request #13687 Remove scrollbar for docman new UI modals when user is in condensed mode
  • request #13682 Update properties should not be available when status is not available for project
  • request #13756 Status must be inherited from parent on file drag and drop
  • request #13701 Link to the update properties page of the docman is not internationalized in the document plugin modal

Tracker

  • story #13693 configure my burndown/up & sprint with a start date & end date (continued)

It’s now possible to choose how you want to define your time periods applicable on artifact graphs (burn-down, burn-up) or on Scrum milestones. You can either go with:

  • A start date and a duration, for instance we start on Monday August 26th + 5 days of duration. That’s the usual way of doing it in Tuleap.
  • A start date and an end date, for instance we start on Monday August 26th and we end on Friday August 30th. That’s new in this release.

In both cases, it’s a matter of configuration in Tracker administration with the new "Timeframe semantic" as you can see on this screenshot:

Timeframe semantic

For new comers it means that, whatever time period definition you prefer, you can choose any field in you tracker structure to hold this data. For old times, it means that one more "Tuleap black magic configuration" is gone because the graphs and milestones no longer depends on hardcoded field names.

In both cases, the time period is computed the same way, by excluding the week-end (arbitrary defined on saturday and sunday):

  • Start on Monday August 26th + 10 days duration will end on Friday Sept 5th
  • Start on Monday August 26th and end on Friday Sept 5th correspond to 10 days of duration.

When would you like to choose one method vs. the other ?

  • Start date + duration is likely to be more suited to agile teams that are looking to a constant pace of delivery. A duration can be set as a default value (let say 10 for 2 weeks iterations) so at each iteration creation, teams only have to pick-up a start date.

  • Start date + end date would be more convenient for teams that do variable iterations or that need to delivery "on date". If you need to deliver on October 1st starting on August 26th it’s easier to pick the 2 dates rather than to count the number of working days between the 2 dates (23 FWIW).

  • request #13698 Contextualize artifact creation link in the tracker report view

That’s a tiny change but worth to highlight. In order to make tracker reports a bit more user friendly for people that are not comfortable with Tuleap terms, the "Create new artifact" action is now "Create new <shortname>". See on screenshot:

Tracker create new

Bugs and requests

  • request #13740 REST changeset representation can sometimes add a key to field value
  • request #13634 tracker’s rules’ validation don’t check null values on CSV import
  • request #13674 Incorrect column label in the permissions by fields administration
  • request #13673 Fieldset should not be displayed if no field are submitable
  • request #13697 Timeframe configuration warning shown while Tracker is not a submilestone

Project Administration

  • story #13566 associate a custom icon to external services
  • story #13567 decide that custom services opens in a new tab/window by default

A very powerful -yet not widely know- integration feature of Tuleap is the ability to customize any project sidebar to add links to external services. This feature got a lifting and an nice improvement with the ability to associate an arbitrary icon associated to this link, as well as being able to decide if this link should replace the current page or open in a new tab.

Custom services with icons

The icons are provided by Font Awesome (v4.7 ATM) so you have a library of ~600 icons available.

Bugs and requests

  • request #13723 Improve CSV export feature (project administration) by adding columns containing user’s email and account status
  • request #13721 Improve "members" page (admin only) by adding columns for email address and account status

REST API

Bugs and requests

  • request #13739 Creation, last usage and expiration dates of access keys does not take into account the user’s timezone on the account page
  • request #13732 Get HTML garbage when Api Key is not valid
  • request #13747 REST endpoint GET /projects/:id/user_groups returns system user groups with a not recognized ID

Development

Libraries and versions bump

Coding rules enforcement

Tests

Build system

Misc

  • request #13397 Centralize vuex-mock-store and wrapper in core
  • request #13743 Fix infinite loop of recursiveGet
  • request #13759 Deprecation notice about INTL_IDNA_VARIANT_2003 constant when using the REST API
  • request #13724 Javascript apps should not import dependencies indirectly

Releases stats

  • 2790 files changed, 57154 insertions(+), 33274 deletions(-)
  • They made the release (number of commits, author, company)
    • 202 Thomas Gerbet, Enalean
    • 134 Marie Ange Garnier, Enalean
    • 99 Joris Masson, Enalean
    • 65 Yannis ROSSETTO, Enalean
    • 61 Nicolas Terray, Enalean
    • 41 Manuel VACELET, Enalean
    • 27 Clarck Robinson, Enalean
    • 19 Martin Goyot, Enalean
    • 14 Thomas Gorka, Enalean
    • 13 Benjamin Bouillot, Enalean
    • 5 lorentzr, Enalean
    • 2 azzouzh, STMicroelectronics
    • 1 Nouha TERZI, STMicroelectronics
    • 1 atisne, CS Group

Bug fix

Security

  • request #13703 REST endpoint GET /project/:id does not verify the permission of the docman root item

Background notifications

  • request #13666 Worker running the asynchronous event might work on outdated data

Agile Dashboard

Git & Pull requests

Translations

  • request #13758 The internal documentation does not exist when changing localization
  • request #13750 Adding a new translation breaks the main page
  • request #13742 Problem adding a new translation
  • request #13677 Spelling mistake in the french error message when the list of Git repositories can not be loaded

Installation

Mediawiki

  • request #13705 PHP warnings about compat() usage in LocalisationCache class when using Mediawiki plugins

Misc

  • request #13718 PHP Fatal error in Tuleap\BotMattermostAgileDashboard\SenderServices\StandUpNotificationBuilder::getBurndownUrl()
  • request #13717 Notifications from BotMattermost agiledashboard are no more sent