Enhancements
Tracker
- story #11347 have a UI to access Move artifact
- story #11905 Add changeset to keep track of moved artifact
This is the end of the work started 3 releases ago about being able to move artifacts from one tracker to another. Until now, everything was fully functional but reserved to people who known how to use REST API. Starting 10.4, the web UI is here for anyone. The "move" action is available in a new menu (see below). This menu groups all actions that are possible on an artifact.
When target project and tracker are selected (move can be cross project) there is a confirmation screen that will tell what information will be moved and what fields will be lost (permanently, be careful).
At the moment, all "semantic" fields are moved:
- ID
- Title
- Description
- Submission date
- Status
- Initial effort
- Assignee
All follow-up comments and changes on those fields are moved as well with authors and dates.
Once the move is done, there is a dedicated follow-up comment to inform about the operation
As "move" is a destructive operation (not all fields are moved), it’s considered by Tuleap as a "delete" operation, hence site admin must allow "delete" operations (Site Administration > Trackers > Artifacts deletion)
- story #11900 have a REST API to add value in select boxes
SOAP API for tracker v5 will be removed in fall 2018, this new end point was the only one feature that was still available in SOAP but not in REST. There are no more blockers to not move to REST now.
Pull requests
- story #11661 define a merge strategy for my repositories
Git repositories can now be configured to only accept "fast-forward" pull requests.
Once activated, it won’t be possible to integrated pull requests that are not "fast forward" from the interface (it’s still possible to do it on the git CLI though).
This setting is configurable at project level (git service administration) and will be inherited at repository creation. It can also be set on project templates.
Dashboards and widgets
- story #11911 have a project widget to write notes on dashboards
Project admins can add a new widget on their dashboard with markdown content. It’s a "Note" widget and it’s useful to give information to visitor about your project, how it’s organized, etc.
Until now it was possible to do that by having an embedded document widget but it was cumbersome and hard to work with. The new recommended way to have free text on a dashboard is the Note widget.
System administration
- request #12067 Move to the remi-safe repository for the PHP dependencies
During development cycle we got a bad news: the RPM repositories from Redhat/Centos we were relying on for PHP packages got removed entirely. As PHP is quite important for being able to run Tuleap we had to switch to an alternative repository.
We selected the safe packages maintained by the Release Manager of PHP 7.2 line and maintainer of PHP RPMs for RedHat, Rémi Collet.
Please carefully read the deployment guide to know how to do the switch.
On the plus side, it will ease the migration to PHP 7 and we can know target the most recent version (7.2) that was not available in official repositories !
Development
Framework and internals improvements
- request #11870 Work around npm bug modifying the lockfile when node_modules is present
- request #11869 Upgrade webpack-related core npm dependencies
- request #11867 Upgrade eslint to v5
- request #11837 Add minimal cypress test suite for project administrators
On the road to PHP 7.2
Given recent troubles we had with offical (RHEL and CentOs) SCLs that got ditched out of the repo, we had to move to remi repos for PHP dependencies. Hence we decided to target PHP 7.2 (provided by remi but not by RHEL/CentOs).
As a matter of fact, 10.4 is a big milestone in PHP 7 support in Tuleap as all tests (Unit, REST, etc) are now run with both PHP 5.6 and PHP 7.2. For simpletest we finally got rid of the old simpletest (1.0.1) in favor of the last released one (1.1.7).
- story #11145 Run all REST test in PHP7
- request #12099 Run unit tests based on SimpleTest on PHP 7.2 instead of PHP 7.0
- request #11919 Run PHPUnit tests with PHP 7.2
PHP 7.2 conversion stats:
- 347 PHPCompatibility warnings (64 high, 283 normal)
- 38954 Simpletest tests
- 584 phpunit tests
Releases stats
- 1241 files changed, 25970 insertions(+), 72757 deletions(-)
- They made the release (number of commits, author, company)
- 163 Yannis ROSSETTO (Enalean)
- 113 Marie Ange Garnier (Enalean)
- 95 Thomas Gerbet (Enalean)
- 47 Nicolas Terray (Enalean)
- 43 Joris Masson (Enalean)
- 12 Thomas Gorka (Enalean)
- 9 Romain Lorentz (Enalean)
- 5 Benjamin Dauton (Enalean)
- 4 Jonathan Palm (Ericsson)
- 3 Benjamin Bouillot (Enalean)
- 3 Manuel VACELET (Enalean)
- 1 Clarck Robinson (Enalean)
- 1 Lydéric Dubut (Enalean)
- 1 Sandra Echinard (Enalean)
- 1 Thomas Cottier (Enalean)
Bug fix
Security
- request #12064 Missing CSRF protection in Git project template mirroring
- request #11954 DOMPurify bypass on old Edge versions
- request #11897 Stack traces can be displayed to end users when CLI command potentially leaking sensitive information
- request #10426 Path traversal through the API Explorer
Instrumentation and monitoring (Tuleap Enterprise)
- request #11913 Add a metric about the total number of mail sent
Scrum / Velocity (Tuleap Enterprise)
- request #12081 The velocity chart should display the 7 last sprints
Scrum
- request #11902 Enable to activate Scrum after a Kanban
Test Management (Tuleap Enterprise)
- request #12083 Infinite loop when a user cannot see a test definition
- request #11950 TTM crash when category field is not a list
- request #11949 ttm can throw error when changeset is not found
- request #11879 Fix "disconnected from real time" block margins in TTM
- request #11880 Hide user score when he didn’t passed any test
- request #11652 Tests categories color in TTM should follow the theme variant
- request #11209 TTM homepage loads all closed campaigns
Tracker
- request #11906 DOM generated for a list criteria is invalid in a tracker report
- request #11903 It’s not possible to remove custom sender in tracker notifications once set
- request #11795 Add option update in import project xml
- request #11785 Cannot filter children artifacts planned in sprints
- request #11749 Colors from new palette not display in charts
- request #11525 import project for single tracker rng error
Git
- request #12104 UX issues in new Git repository list
- request #11973 Support packfiles bigger than 2GB in the Git repo viewer
- request #11565 Be able to use the Git repo path to publish a commit status with the REST API
Pull requests
- request #12068 Fix french translations in pullrequest
- request #11904 Update on a PR destination branch is not taken into account when source branch is rebased
Subversion
- request #12055 When user have different name between Tuleap and LDAP ViewVC does not work properly
LDAP
- request #12080 LDAP daily synchronisation must only deal with non deleted projects
- request #11621 LDAP display name vs group name in sync view
- request #11619 Email notifications of LDAP sync errors
Project administration
- request #11948 Rework active and enabled labels for project services
Site administration
- request #11918 Project members do not show up in Platform Admin view
Installation
- request #11909 Setup script should not complain about on abouted version of RH/CentOS when installed on 6.10
Site wide
- request #11878 Update favicon for both BurningParrot and FlamingParrot themes
- request #11882 Create project button in project dropdown should always be reachable
Timetracking (Tuleap Enterprise)
- request #11825 Add times by the widget’s modal
PHPWiki
- request #11883 Remove not usable and broken PDF export feature from the PHPWiki service
File Release System
- request #12069 Fix french translations in FRS