Enhancements
Git
Please welcome the new, awesome, shiny and lovely git repository browsing interface \o/
That’s the end of a 3.5 months epic for getting a beautiful display of git repositories. All the parts of git repository browsing were updated (display of contents, diffs, list of commits, etc). The navigation was completely re-think so you might be loss or maybe we removed something that was terribly useful in your workflow, tell us about it !
There are too many changes to make an exhaustive tour of them, we selected bellow 3 of the most used screens.
The list of commits (history of the project):
The detail of one commit with the diff of content:
Advanced selector to switch to a different tag or branch:
This work corresponds to following stories:
- story #10414 have a branch/tag selector
- story #10416 burning parrot gloss on gitphp views
- story #10412 have a better integration of Readme.mkd in git repo view
We also fixed a handful of bugs:
- request #12291 Add minimal support of submodules
- request #12279 Update to Git 2.12
- request #12300 Git post receive actions are not entirely processed when using RHEL/CentOS7
- request #12254 Cross references are not extracted from Git Commit
- request #12321 Block access to the POST /git/{id}/build_status endpoint
Git / Pull Requests
- story #11664 display list of commits of a pull request
A new tab appears in the pull request view with the list of commits a PR is made of. If you plugged your repository with
continuous integration you will see for each commit the status of the validation with CI
badge on the right hand size.
Fixed bugs:
- request #12284 Getting the list of the impacted files of a PR through the REST API can be slow
- request #12267 Update of cross repository pull requests breaks diff
REST APIs
- story #12266 use an API key rather than a login / password
Starting 10.6 the new recommended way to access REST api is to use the new API keys that can be generated in each user account settings. The key is generated server side and displayed only once, then it’s usable directly in you requests without time limit. You can revoke keys at anytime. Keep them safe, they are as precious as your passwords.
API keys replace generation of tokens and avoid to have the 4 steps:
- access resource A
- get a 401
- generate a token
- access again resource A
This is replaced by:
- access resource A with
X-Auth-AccessKey: foobared
Documentation was updated accordingly. Token based access will still be supported but is now marked as deprecated.
- story #12265 have a REST end point to toggle project’s status
Introduction of REST end point for project manipulation, limited to project status at the moment to switch from active to suspended, back and forth.
This comes with a new site level permission "Project management via REST" that is required for the use of the previous route.
WARNING: this new permission is now mandatory to make use of POST /projects
in order to create a new project with
the REST API.
Project Certification (Tuleap Enterprise)
- story #12161 have a project owner at project creation
New plugin that allow to define one user amongst project admin as accountable for project security settings.
Development
Plugins and events:
- request #12306 Allow plugins to publish "computed" metrics
- request #12372 Have an event to fetch additional artifact action buttons
Dependencies upgrade:
- request #12275 Upgrade Angular version to latest in Kanban, PlanningV2 and TestManagement
- request #12365 Update DOMPurify to 1.0.8
- request #12328 Bump sodium_compat library to 1.7.0 for a "free" performance boost
Internal refactoring and clean-up:
- request #12281 Use an autoload generated by Composer for the Tuleap Core
- request #12280 Use an autoload generated by Composer for the cardwall plugin
- request #12349 Use an autoload generated by Composer for the archivedeleteditems plugin
- request #12347 Use an autoload generated by Composer for the admindelegation plugin
- request #12271 Translate Cross-tracker widget with vue-gettext
- request #12261 Webpackify graphontrackersv5
- request #12235 Drop usage of InoOicClient library in the OpenIDConnect client plugin
- request #11894 Move ReferenceAlias plugins tests to PHPUnit
- request #11892 Move Label plugin tests to PHPUnit
- request #11891 Move HudsonSVN plugin tests to PHPUnit
- request #11729 use vue-gettext in colorpicker
- request #10040 REST tests do not rely anymore on constants
- request #12375 Clean Readme
On the road to PHP 7.2
- request #12353 Bump to JpGraph to 4.2.4 for the PHP 7 support
- request #12278 Tuleap cryptography API should work out of box on PHP 7.2 with php-sodium
Almost everything is ready for PHP 7.2 upgrade. There are only a few things missing:
- WebDAV (requires a version bump of the lib)
- Mediawiki (requires an internal modification of mediawiki 1.23 until we bump to 1.31+)
- PHPWiki (fix code)
Releases stats
- 1344 files changed, 61792 insertions(+), 23088 deletions(-)
- They made the release (number of commits, author, company)
- 118 Marie Ange Garnier, Enalean
- 114 Thomas Gerbet, Enalean
- 111 Nicolas Terray, Enalean
- 73 Joris Masson, Enalean
- 38 Manuel VACELET, Enalean
- 38 Yannis ROSSETTO, Enalean
- 27 Thomas Gorka, Enalean
- 18 Benjamin Dauton, Enalean
- 3 Romain Lorentz, Enalean
- 2 Sandra Echinard, Enalean
Bug fix
Tracker
- request #12307 Cannot configure velocity => getting mustache error
- request #12298 Block access to the tracker SOAP API by default
- request #12290 Field values used in trigger must not be deletable
- request #12289 Initial burnup calculation should be done on changeset value
- request #11821 Cannot not attach file in Tracker on Centos7
- request #12382 When artifact link are disabled and artifact has a hierarchy, actions button is fetch multiple times
- request #12354 Cardwall render is broken when list field value is null
- request #12351 Tracker XML import doesn’t import field associated to a cardwall
- request #12317 Cannot delete an artifact in some large project due to Gateway error
Agile Dashboard
- request #12352 Have a useful report by default for kanban
- request #12343 Unable to upload files using the artifact modal on Chrome 64
- request #11133 Can’t use "Start Scrum" if TTM is already activated
Create test env
- request #12305 Create test env update for more complex projects
- request #12320 create_test_env generate a daily activity snapshot
Test Management (Tuleap Enterprise)
- request #12297 Javascript error in the edit campaign modal with changing categories
Misc
- request #12263 Remove IM plugin
- request #12377 Tuleap Realtime server crashes on start
- request #12356 Massmail and forumML (CC option) are not working when sent to several people
- request #12272 Can not restart PHP-FPM after PHP-FPM upgrade
- request #12304 Change TLP modal subtitle color
- request #12355 Remove dead code with security vulnerabilities related to Gerrit communication