Release notes for Gerrit 2.7 ============================ Gerrit 2.7 is now available: link:http://code.google.com/p/gerrit/downloads/detail?name=gerrit-2.7.war[ http://code.google.com/p/gerrit/downloads/detail?name=gerrit-2.7.war] Gerrit 2.7 includes the bug fixes done with link:ReleaseNotes-2.6.1.html[Gerrit 2.6.1] and link:ReleaseNotes-2.6.2.html[Gerrit 2.6.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.7.x requires the server be first upgraded to 2.1.7 (or a later 2.1.x version), and then to 2.7.x. If you are upgrading from 2.2.x.x or newer, you may ignore this warning and upgrade directly to 2.7.x. Release Highlights ------------------ * New `copyMaxScore` setting for labels. * Comment links configurable per project. * Themes configurable per project. * Better support for binary files and images in diff screens. * User avatars in more places. * Several new REST APIs. New Features ------------ General ~~~~~~~ * New `copyMaxScore` setting for labels. + Labels can be link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/config-labels.html#label_copyMaxScore[ configured] to copy approvals forward to the next patch set. * Comment links can be link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/config-gerrit.html#commentlink[ defined per project in the project configuration]. * Gerrit administrators can define project-specific themes. + Themes can be link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/config-themes.html[ configured site-wide or per project]. * New '/a/tools' URL. + This allows users to download the `commit-msg` hook via the command line if the Gerrit server requires authentication globally. * New 'Stream Events' global capability. + The link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/access-control.txt#capability_streamEvents[ Stream Events capability] controls access to the `stream-events` ssh command. + Only administrators and users having this capability are allowed to use `stream-events`. * Allow opening new changes on existing commits. + The `%base` argument can be used with `refs/for/` to identify a specific revision the server should start to look for new commits at. Any commits in the range `$base..$tip` will be opened as a new change, even if the commit already has another change on a different branch. * New setting `gitweb.linkDrafts` to control if gitweb links are shown on drafts. + By default, Gerrit will show links to gitweb on all patch sets. If the link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/config-gerrit.html#gitweb.linkDrafts[ gitweb.linkDrafts setting] is set to 'false', links will not be shown on draft patch sets. * Allow changes to be automatically submitted on push. + Teams that want to use Gerrit's submit strategies to handle contention on busy branches can use `%submit` to create a change and have it link:link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/user-upload.html#auto_merge[ immediately submitted], if the caller has Submit permission on `refs/for/`. * Allow administrators to see all groups. Web UI ~~~~~~ Global ^^^^^^ * User avatars are displayed in more places in the Web UI. * 'Diffy' is used as avatar for the Gerrit server itself. * A popup with user profile information is shown when hovering the mouse over avatar images. Change Screens ^^^^^^^^^^^^^^ * link:https://code.google.com/p/gerrit/issues/detail?id=667[Issue 667]: Highlight patch sets that have drafts. + Patch sets having unpublished draft comments are highlighted with an icon. * Option to show relative times in change tables. + A new preference setting allows the user to decide if absolute or relative dates should be shown in change tables. * Option to set default visibility of change comments. + A new preference setting allows the user to set the default visibility of change comments. Diff Screens ^^^^^^^^^^^^ * Show images in side-by-side and unified diffs. * Show diffed images above/below each other in unified diffs. * Harmonize unified diff's styling of images with that of text. REST API ~~~~~~~~ Several new link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api.html[ REST API endpoints] are added. Accounts ^^^^^^^^ * link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api-accounts.html#get-diff-preferences[ Get account diff preferences] * link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api-accounts.html#set-diff-preferences[ Set account diff preferences] Changes ^^^^^^^ * link:https://code.google.com/p/gerrit/issues/detail?id=1820[Issue 1820]: link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api-changes.html#list-comments[ List comments] * link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api-changes.html#get-comment[ Get comment] Projects ^^^^^^^^ * link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api-projects.html#get-config[ Get project configuration] ssh ~~~ * link:https://code.google.com/p/gerrit/issues/detail?id=1088[Issue 1088]: Support link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/config-gerrit.html#sshd.kerberosKeytab[ Kerberos authentication for ssh interaction]. Bug Fixes --------- General ~~~~~~~ * Postpone check for first account until adding an account. * Mark `ALREADY_MERGED` changes as merged in the database. + If a change was marked `ALREADY_MERGED`, likely due to a bug in merge code, it does not end up in the list of changes to be submitted and never gets marked as merged despite the branch head already having advanced. + Works around (but does not fix) link:https://code.google.com/p/gerrit/issues/detail?id=1985[Issue 1985] and link:https://code.google.com/p/gerrit/issues/detail?id=600[Issue 600] to allow recovery from certain kind of bad state. Web UI ~~~~~~ * link:https://code.google.com/p/gerrit/issues/detail?id=1848[Issue 1848]: Don't discard inline comments when escape key is pressed. * link:https://code.google.com/p/gerrit/issues/detail?id=1863[Issue 1863]: Drop Arial Unicode MS font and request only sans-serif. + Arial Unicode MS does not have a bold version. Selecting this font prevents correct display of bold text on Mac OS X. Simplify the selector to sans-serif and allow the browser to use the user's preferred font in this family. REST API ~~~~~~~~ * link:https://code.google.com/p/gerrit/issues/detail?id=1819[Issue 1819]: Include change-level messages to the payload returned from the link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/rest-api-changes#get-change-detail[ Get Change Detail REST API endpoint]. * Correct URL encoding in 'GroupInfo'. Email ~~~~~ * Log failure to access reviewer list for notification emails. * Log when appropriate if email delivery is skipped. ssh ~~~ * link:https://code.google.com/p/gerrit/issues/detail?id=2016[Issue 2016]: Flush caches after adding or deleting ssh keys via the `set-account` ssh command. Tools ~~~~~ * The release build now builds for all browser configurations. Upgrades -------- * `gwtexpui` is now built in the gerrit tree rather than linking a separate module. Documentation ------------- * Update the access control documentation to clarify how to set link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/access-control.html#global_capabilities[ global capabilities]. * Clarify the link:http://gerrit-documentation.googlecode.com/svn/Documentation/2.7/config-gerrit.html#cache_names[ change cache configuration].