Release notes for Gerrit 2.6
============================

Gerrit 2.6 is now available:

link:http://code.google.com/p/gerrit/downloads/detail?name=gerrit-full-2.6.war[http://code.google.com/p/gerrit/downloads/detail?name=gerrit-full-2.6.war]

Gerrit 2.6 includes the bug fixes done with
link:ReleaseNotes-2.5.1.html[Gerrit 2.5.1] and
link:ReleaseNotes-2.5.2.html[Gerrit 2.5.2]. 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
----

*WARNING:* Upgrading to 2.6.x requires the server be first upgraded to 2.1.7 (or
a later 2.1.x version), and then to 2.6.x.  If you are upgrading from 2.2.x.x or
newer, you may ignore this warning and upgrade directly to 2.6.x.

New Features
------------

Review UI
~~~~~~~~~
* The reviewer matrix on a change displays gray boxes where
  permissions do not allow voting in that category. The coloring
  enables authors to quickly identify if another reviewer is
  necessary to continue the change.

* New 'Rebase If Necessary' submit type. This is similar to cherry
  pick, but honors change dependency information.
* Submit type displayed per-change in the info block.
* Submit type selectable per-change by `submit_type` Prolog rules.

* The rebase button is hidden when the patch set is current.

* `suggest.from` configures a minimum number of characters before
  matches for reviewers, accounts, groups or projects are offered.

* A change's topic can be added, removed or changed from the
  change screen.

* A change's commit message can be edited from the change screen.


Access Controls
~~~~~~~~~~~~~~~
* Remove Reviewer is a new permission.
* Pushing a signed tag is a new permission.
* Editing the topic name is a new permission.
* Raw database access with the `gsql` command is a new global capability.
+
Previously site administrators had this capability by default.  Now it has
to be explicitly assigned, even for site administrators.

* link:https://code.google.com/p/gerrit/issues/detail?id=1585[Issue 1585]:
Viewing other users' draft changes is a new permission.

* link:https://code.google.com/p/gerrit/issues/detail?id=1675[Issue 1675]:
Deleting and publishing other users' draft changes is a new permission.

* LDAP group names are configurable, `cn` is still the default.
* LDAP cache reduces the number of recursive group queries.
* Kerberos authentication to LDAP servers is now supported.

* Basic project properities are now inherited by default from parent
  projects: Use Content Merge, Require Contributor Agreement, Require
  Change Id, Require Signed Off By.

Hooks
~~~~~
* Change topic is passed to hooks as `--topic NAME`.
* link:https://code.google.com/p/gerrit/issues/detail?id=1200[Issue 1200]:
New `reviewer-added` hook and stream event when a reviewer is added.

* link:https://code.google.com/p/gerrit/issues/detail?id=1237[Issue 1237]:
New `merge-failed` hook and stream event when a change cannot be submitted due to failed merge.

SSH
~~~
* Descriptions are added to ssh commands.
+
If `gerrit` is called without arguments, it will now show a list of available
commands with their descriptions.

* `create-account --http-password` enables setting/resetting the
  HTTP password of role accounts, for Git or JSON API access.

* `ls-projects --has-acl-for` lists projects that mention a group
  in an ACL, identifying where rights are granted.

* `query` includes submit record information from Prolog rules.
* `query` includes `resumeSortKey` in summary block.
* `query` includes author and change size information when given
  certain options on the command line.

* `test-submit-rule` tests the `can_submit` rule with a prolog script loaded from a file or stdin.
* `ls-user-refs` lists which refs are visible for a given user.

Plugins
~~~~~~~
* Plugins can contribute Prolog facts/predicates from Java.
* Plugins can prompt for parameters during `init` with `InitStep`.
* Plugins can now contribute JavaScript to the web UI. UI plugins can
  also be written and compiled with GWT.
* New Maven archetypes for JavaScript and GWT plugins.
* Plugins can contribute validation steps to received commits.
* Commit message length checks are moved to the `commit-message-length-validator`
  plugin which is included as a core plugin in the Gerrit distribution and
  can be installed during site initialization.

EMail
~~~~~
* link:https://code.google.com/p/gerrit/issues/detail?id=1531[Issue 1531]:
Email footers now include `Gerrit-HasComments: {Yes|No}`.
* Notifications configured in `project.config` can now be addressed
  using any of To, CC, or BCC headers.
* `#if($email.hasInlineComments())` can be used in templates to test
  if there are comments to be included in this email.
* Notification emails are sent to included groups.
* Comment notification emails are sent to project watchers.
* "Change Merged" emails include the diff output when `sendemail.includeDiff` is enabled.

Upgrades
~~~~~~~~
* link:https://code.google.com/p/gerrit/issues/detail?id=1619[Issue 1619]:
Embedded Jetty is now 8.1.7.v20120910.

* ASM bytecode library is now 4.0.
* JGit is now 2.2.0.201212191850-r.
* asciidoc 8.6.3 is now required to build the documentation.
* link:https://code.google.com/p/gerrit/issues/detail?id=1155[Issue 1155]:
prettify is now r225

Bug Fixes
---------

Web UI
~~~~~~
* Links to CGit were broken when `remove-suffix` was enabled.
* link:https://code.google.com/p/gerrit/issues/detail?id=926[Issue 926]:
Internet Explorer versions 9 and 10 are supported.

Git
~~~
* The wildcard `.` is now permitted in reference regex rules.
* Checking if a change is mergeable no longer writes to the repository.
* Improved `git ls-remote` and `git fetch` performance by caching
  changes, decreasing database queries and traffic.
* link:https://code.google.com/p/gerrit/issues/detail?id=1608[Issue 1608]:
Commits pushed without a Change-Id now warn with instructions on how
to download and install the commit-msg hook.

* Submitted but unmerged changes are periodically retried. This is
  necessary for a multi-master configuration where the second master
  may need to retry a change not yet merged by the first. Please note
  we still do not believe this is sufficient to enable multi-master.

SSH
~~~
* `plugin ls` shows status of enabled plugins as "ENABLED".
* `review --restore` allows a review score to be added on the restored change.
* link:https://code.google.com/p/gerrit/issues/detail?id=1721[Issue 1721]:
`review --message` only adds the message once.

* `ls-groups` prints "N/A" if the group's name is not set.

EMail
~~~~~
* Missing email templates are added to the site initialization.
* Merge failure emails are only sent once per day.
* Unused macros are removed from the mail templates.
* Unnecessary ellipses are no longer applied to email subjects.
* The diff output from an "octopus merge" is made more readable in change notification emails.
* link:https://code.google.com/p/gerrit/issues/detail?id=1480[Issue 1480]:
Proper error message is shown when registering an email address fails.

* link:https://code.google.com/p/gerrit/issues/detail?id=1692[Issue 1692]:
Review comments are sorted before being added to notification emails.

Documentation
-------------

User Documentation
~~~~~~~~~~~~~~~~~~

* Added documentation of how to authenticate uploads over HTTP.
* Added documentation of the `auth.editFullNameUrl` and `auth.httpPasswordUrl` configuration parameters.
* Improved the push tag examples in the access control documentation.
* Improved documentation of error messages related to commit message footer content.
* Added documentation of the "commit already exists" error message.
* Added documentation of contributor agreements.
* Added missing documentation of JSON attributes.
* Added missing documentation of mail templates.
* Added missing documentation of the ssh `version` command.
* link:https://code.google.com/p/gerrit/issues/detail?id=1602[Issue 1602]:
Corrected references to `refs/changes` in the access control documentation.

* Various minor grammatical and formatting corrections.

Developer And Maintainer Documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Updated the Maven plugin installation instructions for Eclipse 3.7 (Indigo).
* Improved the release documentation.
* The release notes are now made when a release is created by running the `tools/release.sh` script.

