blob: 216bdd380b4f7e3304bfc35394734304d57d4aa5 [file] [log] [blame]
Release notes for Gerrit 2.9
============================
Gerrit 2.9 is now available:
link:https://gerrit-releases.storage.googleapis.com/gerrit-2.9.war[
https://gerrit-releases.storage.googleapis.com/gerrit-2.9.war]
*WARNING:* Support for Java 1.6 has been discontinued.
As of Gerrit 2.9, Java 1.7 is required.
Gerrit 2.9 includes the bug fixes done with
link:ReleaseNotes-2.8.1.html[Gerrit 2.8.1],
link:ReleaseNotes-2.8.2.html[Gerrit 2.8.2],
link:ReleaseNotes-2.8.3.html[Gerrit 2.8.3], and
link:ReleaseNotes-2.8.4.html[Gerrit 2.8.4].
These bug fixes are *not* listed in these release notes.
Schema Change
-------------
*WARNING:* This release contains schema changes. To upgrade:
----
java -jar gerrit.war init -d site_path
java -jar gerrit.war reindex --recheck-mergeable -d site_path
----
*WARNING:* Upgrading to 2.9.x requires the server be first upgraded to 2.1.7 (or
a later 2.1.x version), and then to 2.9.x. If you are upgrading from 2.2.x.x or
later, you may ignore this warning and upgrade directly to 2.9.x.
Release Highlights
------------------
* 'Gerrit Inspector' for interactive inspection and troubleshooting of a running
Gerrit instance.
New Features
------------
Secondary Index
~~~~~~~~~~~~~~~
* New `--recheck-mergeable` option on the
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/pgm-reindex.html[
`reindex` program].
ssh
~~~
* New `--all-reviewers` option on the `query` command allowing query results
to include information about all reviewers added on the change.
* New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/cmd-apropos.html[
`apropos` command] to search the Gerrit documentation.
* Deprecated `@CommandMetaData(descr)` has been discontinued. As of Gerrit 2.9
`@CommandMetaData(description)` annotation must be used.
REST API
~~~~~~~~
Documentation
^^^^^^^^^^^^^
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/rest-api-documentation#search-documentation.html[
Search documentation].
Daemon
~~~~~~
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-inspector.html[
Gerrit Inspector]: interactive Jython shell.
+
New `-s` option is added to the Daemon to start an interactive Jython shell for inspection and
troubleshooting of live data of the Gerrit instance.
Plugins
~~~~~~~
Issue Tracker System plugins
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
*WARNING:* There are new plugins for the integration with Bugzilla,
Jira and IBM Rational Team Concert:
* link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-bugzilla[plugins/its-bugzilla]
* link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-jira[plugins/its-jira]
* link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-rtc[plugins/its-rtc]
The old plugins (`plugins/hooks-bugzilla`, `plugins/hooks-jira` and
`plugins/hooks-rtc`) are deprecated with Gerrit 2.9.
The new issue tracker system plugins have a common base which is
link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-base[plugins/its-base].
The configuration of the new plugins is slightly different than the
configuration of the old plugins because they use different section
names in the Gerrit configuration. For easy migration the new plugins
have an init step that allows to take over the configuration from the
old plugins during the Gerrit initialization phase.
New Features:
* The issue tracker integration can be enabled/disabled per project.
* Parent projects can enforce the issue tracker integration for their
child projects.
* It can be configured for which branches of a project the issue
tracker integration is enabled.
* Whether the issue tracker integration is enabled/disabled for a
project can be changed from the ProjectInfoScreen in the Gerrit
WebUI.
Bug Fixes
---------
Configuration
~~~~~~~~~~~~~
* The number of accounts shown on the 'Become Any Account' login
screen is increased from 5 to 100.
Upgrades
--------
* Update gwtjsonrpc to 1.4
* Update gwtorm to 1.8
Plugins
-------
Replication
~~~~~~~~~~~
* The default push refSpec for the replication plugin has changed from `forced`
to `non-forced` push (was `+refs/*:refs/*` and now is `refs/*:refs/*`). This change
should not impact typical replication topologies where the slaves are read-only
and can be pushed by their masters only. If you wanted explicitly to overwrite
all changes on the slaves, you need to add a `push=+refs/*:refs/*` configuration
entry for each replication target.