4f5ad9d313
This eliminates the last Makefile in our code base.
Also change the section style within ReleaseNotes from asciidoc style to
asciidoctor style.
Also I feel that put images/link.png under ReleaseNotes and deal with
all the resource packing is too stupid, so I used the unicode emoji
instead of the picture ("🔗"). If this is too crazy, we can also use "#"
instead :) This also affects documentation rendering.
Other side effects:
1. The css of release notes switched from default asciidoc css into
default asciidoctor css.
2. The section anchors for ReleaseNotes/index.html changed from "2_13"
to "s2_13", because asciidoctorj is unhappy with anchors without
letters.
Change-Id: I4adf2ce090385cc6b699445012f10a009892aaac
838 lines
30 KiB
Plaintext
838 lines
30 KiB
Plaintext
= Release notes for Gerrit 2.11
|
|
|
|
|
|
Gerrit 2.11 is now available:
|
|
|
|
link:https://www.gerritcodereview.com/download/gerrit-2.11.war[
|
|
https://www.gerritcodereview.com/download/gerrit-2.11.war]
|
|
|
|
Gerrit 2.11 includes the bug fixes done with
|
|
link:ReleaseNotes-2.10.1.html[Gerrit 2.10.1],
|
|
link:ReleaseNotes-2.10.2.html[Gerrit 2.10.2] and
|
|
link:ReleaseNotes-2.10.3.html[Gerrit 2.10.3].
|
|
These bug fixes are *not* listed in these release notes.
|
|
|
|
|
|
== Important Notes
|
|
|
|
|
|
*WARNING:* This release contains schema changes. To upgrade:
|
|
----
|
|
java -jar gerrit.war init -d site_path
|
|
----
|
|
|
|
Gerrit 2.11 requires a secondary index, which can be created offline
|
|
by running the `reindex` program:
|
|
|
|
----
|
|
java -jar gerrit.war reindex -d site_path
|
|
----
|
|
|
|
If the site that is upgraded already has a secondary index, the
|
|
secondary index can be upgraded online. This is important for large
|
|
sites since running the `reindex` program can take a long time and
|
|
contributes significantly to the downtime that is required for the
|
|
upgrade.
|
|
|
|
Gerrit 2.11 supports online reindexing only from the index version `11`
|
|
which is the index version of Gerrit 2.10. This means if you come from
|
|
an older release it makes sense to first upgrade to 2.10 and then do
|
|
the upgrade to 2.11 so that you can profit from online reindexing.
|
|
|
|
In case you are upgrading from 2.10 it is *important* to check *before*
|
|
the upgrade to 2.11 that the index version of your Gerrit 2.10 site is
|
|
`11`. You can check the index version in
|
|
`$site_path/index/gerrit_index.config`. Your Gerrit 2.10 site may run
|
|
with an older index version (e.g. if online reindexing to index version
|
|
`11` is still running or if online reindexing to version `11` has
|
|
failed). In this case you first need to successfully migrate your index
|
|
version of your Gerrit 2.10 site to `11` and only then start with the
|
|
2.11 upgrade. If you start the 2.11 upgrade when the schema version of
|
|
your Gerrit 2.10 site is older than `11`, online reindexing is no longer
|
|
possible and you need to reindex offline by using the `reindex` program.
|
|
|
|
*WARNING:* Upgrading to 2.11.x requires the server be first upgraded to 2.8 (or
|
|
2.9) and then to 2.11.x. If you are upgrading from 2.8.x or later, you may ignore
|
|
this warning and upgrade directly to 2.11.x.
|
|
|
|
*WARNING:* When upgrading from version 2.8.4 or older with a site that uses
|
|
Bouncy Castle Crypto, new versions of the libraries will be downloaded. The old
|
|
libraries should be manually removed from site's `lib` folder to prevent the
|
|
startup failure described in
|
|
link:https://code.google.com/p/gerrit/issues/detail?id=3084[Issue 3084].
|
|
|
|
*WARNING:* The 'Generate HTTP Password' capability has been
|
|
link:#remove-generate-http-password-capability[removed].
|
|
|
|
*WARNING:* Google will
|
|
link:https://developers.google.com/+/api/auth-migration[shut down their OpenID
|
|
service on 20th April 2015]. Administrators of sites whose users are registered
|
|
with Google OpenID accounts should encourage the users to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-sso.html#_multiple_identities[
|
|
add an alternative identity to their account] before this date. Users who do
|
|
not add an alternative identity before this date will need to create a new
|
|
account and ask the site administrator to
|
|
link:https://code.google.com/p/gerrit/wiki/SqlMergeUserAccounts[merge it].
|
|
|
|
*WARNING:* The
|
|
link:https://gerrit-review.googlesource.com/Documentation/2.10/rest-api-changes.html#message[
|
|
Edit Commit Message] REST API endpoint is removed
|
|
|
|
*WARNING:* The deprecated '/query' URL is removed and will now return `Not Found`.
|
|
|
|
== Release Highlights
|
|
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=505[Issue 505]:
|
|
Changes can be created and edited directly in the browser. See the
|
|
link:#inline-editing[Inline editing] section for more details.
|
|
|
|
* Many improvements in the new change screen.
|
|
|
|
* The old change screen is removed.
|
|
|
|
|
|
== New Features
|
|
|
|
|
|
=== Web UI
|
|
|
|
[[inline-editing]]
|
|
==== Inline Editing
|
|
|
|
Refer to the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/user-inline-edit.html[
|
|
inline editing user guide] for detailed instructions.
|
|
|
|
* New changes can be created directly in the browser via a 'Create Change'
|
|
button on the project info screen.
|
|
|
|
* New follow-up changes can be created via a 'Follow-Up' button on the change
|
|
screen.
|
|
|
|
* File content can be edited in a full screen CodeMirror editor with support for
|
|
themes and syntax highlighting.
|
|
|
|
* The CodeMirror screen can be configured in the same way as the side-by-side
|
|
diff screen.
|
|
|
|
* The file table in the change screen supports seamless navigation to the
|
|
CodeMirror editor.
|
|
|
|
* Edit mode can be started from the side-by-side diff screen with seamless
|
|
navigation to the CodeMirror editor.
|
|
|
|
* The commit message must now be changed in the context of a change edit. The
|
|
'Edit Message' button is removed from the change screen.
|
|
|
|
* Files can be added, deleted, restored and modified directly in browser.
|
|
|
|
==== Change Screen
|
|
|
|
* Remove the 'Edit Message' button from the change screen.
|
|
+
|
|
The commit message is now edited using the inline edit feature.
|
|
|
|
* Add support for changing parent revision with the 'Rebase' button.
|
|
+
|
|
Using the 'Rebase' button it is now possible to rebase a change onto a
|
|
different change (on the same destination branch), rather than only onto the
|
|
head of the destination branch or the latest patch set of the predecessor change.
|
|
|
|
* Show the parent commit's subject as a tooltip.
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=2541[Issue 2541],
|
|
link:http://code.google.com/p/gerrit/issues/detail?id=2974[Issue 2974]:
|
|
Allow the 'Reply' button's
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#change.replyLabel[
|
|
label and tooltip] to be configured.
|
|
|
|
* Improve file sorting for C and C++ files.
|
|
+
|
|
Header files are now listed before implementation files.
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3148[Issue 3148]:
|
|
Allow display of colored size bars to be enabled or disabled per user.
|
|
+
|
|
The 'Show Change Sizes As Colored Bars In Changes Table' setting is renamed to
|
|
'Show Change Sizes As Colored Bars' and is now used to also control how the
|
|
change size is shown per file in the file table.
|
|
+
|
|
When enabled (which is the default), the change size per file is shown as a sum
|
|
of lines added/removed, and also representated by a colored bar showing the
|
|
proportion of added/removed lines.
|
|
+
|
|
When disabled, the colored bar is not shown and the change size per file is shown
|
|
in the same way as it used to be in the old change screen.
|
|
|
|
* Show changes across all projects and branches in the `Same Topic` tab.
|
|
|
|
|
|
==== Side-By-Side Diff
|
|
|
|
* New button to switch between side-by-side diff and unified diff.
|
|
|
|
* New preference setting to toggle auto-hiding of the diff table header.
|
|
+
|
|
The setting determines whether or not the diff table header with the patch set
|
|
selection should be automatically hidden when scrolling down more than half of
|
|
a page.
|
|
|
|
* Highlight search results on scrollbar.
|
|
+
|
|
Search results in vim mode are highlighted in the scrollbar with gold
|
|
colored annotations.
|
|
|
|
* Set line length to 72 characters for commit messages.
|
|
|
|
* Add syntax highlighting for several new modes:
|
|
|
|
** link:https://code.google.com/p/gerrit/issues/detail?id=2848[Issue 2848]: CSharp
|
|
** Dart
|
|
** Dockerfile
|
|
** GLSL shader
|
|
** Go
|
|
** Objective C
|
|
** RELAX NG
|
|
** link:http://code.google.com/p/gerrit/issues/detail?id=2779[Issue 2779]: reStructured text
|
|
** Soy
|
|
|
|
|
|
==== Projects Screen
|
|
|
|
* Add pagination and filtering on the branch list page.
|
|
|
|
* Add an 'Edit Config' button on the project info page.
|
|
+
|
|
The button creates a new change on the `refs/meta/config` branch and opens the
|
|
`project.config` file in the inline editor.
|
|
+
|
|
This allows project owners to easily edit the `project.config` file from the
|
|
browser, which is useful since it is possible that not all configuration options
|
|
are available in the UI.
|
|
|
|
=== REST
|
|
|
|
==== Accounts
|
|
|
|
* Add new link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-accounts.html#suggest-account[
|
|
Suggest Account endpoint].
|
|
|
|
==== Changes
|
|
|
|
* The link:https://gerrit-review.googlesource.com/Documentation/2.10/rest-api-changes.html#message[
|
|
Edit Commit Message] endpoint is removed in favor of the new
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#put-change-edit-message[
|
|
Change commit message in Change Edit] and
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#publish-edit[
|
|
Publish Change Edit] endpoints.
|
|
|
|
* Add new
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#check-change[
|
|
Check Change endpoint].
|
|
+
|
|
In the past, Gerrit bugs, lack of transactions, and unreliable NoSQL backends
|
|
have at various times produced a bewildering variety of corrupt states.
|
|
+
|
|
This endpoint can be used to detect, explain, and repair some of these possible
|
|
states of a change.
|
|
|
|
* Add new
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#get-revision-actions[
|
|
Get Revision Actions endpoint].
|
|
|
|
* Add
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#change-actions[
|
|
`CHANGE_ACTIONS`] option on the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#get-change-detail[
|
|
Get Change Detail] endpoint.
|
|
|
|
|
|
==== Change Edits
|
|
|
|
Several new endpoints are added to support the inline edit feature.
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#get-edit-detail[
|
|
Get Edit Detail].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#put-edit-file[
|
|
Change file content in Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#post-edit[
|
|
Restore file content in Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#put-change-edit-message[
|
|
Change commit message in Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#delete-edit-file[
|
|
Delete file in Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#get-edit-file[
|
|
Retrieve file content from Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#get-edit-message[
|
|
Retrieve commit message from Change Edit or current patch set of the change].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#publish-edit[
|
|
Publish Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#rebase-edit[
|
|
Rebase Change Edit].
|
|
|
|
* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#delete-edit[
|
|
Delete Change Edit].
|
|
|
|
|
|
==== Projects
|
|
|
|
* Add new
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-projects.html#delete-branches[
|
|
Delete Branches] endpoint.
|
|
|
|
* Add filtering and pagination options on the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-projects.html#list-branches[
|
|
List Branches] endpoint.
|
|
|
|
* Add new
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-projects.html#list-tags[
|
|
List Tags] endpoint.
|
|
|
|
* Add new
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-projects.html#get-tag[
|
|
Get Tag] endpoint.
|
|
|
|
|
|
=== Configuration
|
|
|
|
* Add support for
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#auth.httpExternalIdHeader[
|
|
HTTP external ID header].
|
|
+
|
|
This can be used when authenticating with a federated identity token from
|
|
an external system, e.g. GitHub's OAuth 2.0 authentication.
|
|
|
|
* Add
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-labels.html#label_copyAllScoresIfNoChange[
|
|
`copyAllScoresIfNoChange`] setting for labels.
|
|
+
|
|
Allows to copy scores forward when a new patch set is uploaded that has the same
|
|
parent tree, code delta, and commit message as the previous patch set.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2786[Issue 2786]:
|
|
Allow non-administrators to modify user accounts.
|
|
+
|
|
A new global capability,
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/access-control.html#capability_modifyAccount[
|
|
'Modify Account'], which allows the granted group members to modify user account
|
|
settings via the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-set-account.html[
|
|
`set-account` SSH command].
|
|
+
|
|
Modification of users' SSH keys is still restricted to administrators.
|
|
|
|
* Add support for
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#ldap.useConnectionPooling[
|
|
LDAP connection pooling].
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=699[Issue 699]: Allow to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#receive.maxBatchChanges[
|
|
limit max number of changes pushed in a batch].
|
|
+
|
|
Can be overridden by members of groups that are granted the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/access-control.html#capability_batchChangesLimit[
|
|
Batch Changes Limit] capability.
|
|
|
|
* Allow to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#gerrit.disableReverseDnsLookup[
|
|
disable reverse DNS lookup].
|
|
+
|
|
This option can be set to improve push time from hosts without a reverse DNS
|
|
entry.
|
|
|
|
* Allow to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#cache.projects.loadOnStartup[
|
|
load the project cache at server startup].
|
|
|
|
* Allow members of groups granted the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/access-control.html#capability_accessDatabase[
|
|
AccessDatabase capability] to view metadata refs.
|
|
|
|
* Allow to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#http.addUserAsRequestAttribute[
|
|
add the user to the http request attributes].
|
|
|
|
* Allow to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#suggest.fullTextSearch[
|
|
enable full text search in memory for review suggestions].
|
|
+
|
|
The maximum number of reviewers evaluated can be limited with
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#suggest.fullTextSearchMaxMatches[
|
|
suggest.fullTextSearchMaxMatches].
|
|
|
|
* Allow to provide an alternative
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#gerrit.secureStoreClass[
|
|
secure store implementation].
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=1195[Issue 1195]:
|
|
Allow projects to be configured to create a new change for every uploaded commit that is not in the target branch.
|
|
|
|
* Allow to configure
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#container.daemonOpt[
|
|
options to pass to the daemon].
|
|
|
|
=== Daemon
|
|
|
|
* Allow to enable the http daemon when running in slave mode.
|
|
+
|
|
The `--enable-httpd` option can be used in conjunction with the `--slave` option
|
|
to allow clients to fetch from the slave over the http protocol.
|
|
+
|
|
HTTP Authentication may also be used when running in slave mode.
|
|
|
|
* Include the submitter's name in the change message when a change is submitted.
|
|
|
|
* Add a message to changes created via cherry pick.
|
|
+
|
|
When a change is cherry-picked to another branch using the cherry-pick action,
|
|
the message 'Patch Set <number>: Cherry Picked from branch <name>.' is added as
|
|
a change message on the created change.
|
|
|
|
* Don't send 'new patch set' notification emails for trivial rebases.
|
|
|
|
|
|
=== SSH
|
|
|
|
* Add new commands
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-logging-ls-level.html[
|
|
`logging ls-level`] and
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-logging-set-level.html[
|
|
`logging set-level`] to show and set the logging level at runtime.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=602[Issue 602]:
|
|
Add `--json` option to the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-review.html[
|
|
`review` SSH command].
|
|
+
|
|
Review input can be given to the `review` command in JSON format corresponding
|
|
to the REST API's
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#review-input[
|
|
ReviewInput] entity.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2824[Issue 2824]:
|
|
Add `--rebase` option to the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-review.html[
|
|
`review` SSH command].
|
|
|
|
* Add `--clear-http-password` option to the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-set-account.html[
|
|
`set-account` SSH command].
|
|
|
|
* Add `--preferred-email` option to the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/cmd-set-account.html[
|
|
`set-account` SSH command].
|
|
|
|
=== Email
|
|
|
|
* Add `$change.originalSubject` field for email templates.
|
|
+
|
|
GMail threads messages together by subject and ignores the list headers included
|
|
by Gerrit.
|
|
+
|
|
Site administrators that run servers whose end-user base is mostly on GMail can
|
|
modify the site's `ChangeSubject.vm` template to use `$change.originalSubject` to
|
|
improve threading for GMail inboxes.
|
|
+
|
|
The `originalSubject` field is automatically taken from the existing subject
|
|
field during first use.
|
|
|
|
|
|
=== Plugins
|
|
|
|
==== General
|
|
|
|
* Plugins can listen to account group membership changes.
|
|
+
|
|
The audit log service allows to register listeners to group member added and
|
|
group member deleted events. A default listener logs these events to the database
|
|
as before, but additional listeners may now be registered for these events using
|
|
the `GroupMemberAuditListener` interface.
|
|
|
|
* Plugins can validate ref operations.
|
|
+
|
|
Plugins implementing the `RefOperationValidationListener` interface can
|
|
perform additional validation checks against ref creation/deletion operations
|
|
before they are applied to the git repository.
|
|
|
|
* Plugins can provide project-aware top menu extensions
|
|
+
|
|
Plugins can provide sub-menu items within the 'Projects' context. The
|
|
'$\{projectName\}' placeholder is replaced by the project name.
|
|
|
|
* Auto register static/init.js as JavaScript plugin.
|
|
+
|
|
When a plugin does not expose Guice Modules explicitly, auto discover and
|
|
register static/init.js as WebUi extension if found by the plugin content
|
|
scanner.
|
|
|
|
* Plugins can validate outgoing emails.
|
|
+
|
|
Plugins implementing `OutgoingEmailValidationListener` interface can filter
|
|
and modify outgoing emails before they are sent.
|
|
|
|
* Plugins that provide initialization steps may now use functionality
|
|
from InitUtil in core Gerrit.
|
|
|
|
* Plugins can post change reviews with historic timestamps.
|
|
+
|
|
This allows, for example, to write a plugin that can import a project including
|
|
review information from another Gerrit server.
|
|
|
|
* New extensions in the Java Plugin API:
|
|
|
|
** Set/Put topic.
|
|
** Get mergeable status.
|
|
** link:https://code.google.com/p/gerrit/issues/detail?id=461[Issue 461]:
|
|
Get current user.
|
|
** Get file content.
|
|
** Get file diff.
|
|
** Get comments and drafts.
|
|
** Get change edit.
|
|
|
|
==== Replication
|
|
|
|
* Projects can be specified with wildcard in the `start` command.
|
|
|
|
|
|
== Bug Fixes
|
|
|
|
=== Daemon
|
|
|
|
* Change 'Merge topic' to 'Merge changes from topic'.
|
|
+
|
|
When multiple changes from a topic are submitted resulting in a merge commit,
|
|
the title of the merge commit is now 'Merge changes from topic' instead of
|
|
'Merge topic'.
|
|
|
|
* Fix visibility checks for `refs/meta/config`.
|
|
+
|
|
Under some conditions it was possible for the `refs/meta/config` branch to be
|
|
erroneously considered not visible to the user.
|
|
|
|
* Sort list of updated changes in output from push.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2940[Issue 2940]:
|
|
Improve warning messages when `Change-Id` is missing in the commit message.
|
|
|
|
** Add a hint to amend the commit after installing the commit-msg hook.
|
|
** Don't show 'Suggestion for commit message' when `Change-Id` is missing.
|
|
|
|
* Allow to publish draft patch sets even when `allowDrafts` is false.
|
|
+
|
|
If a user uploaded a change while `allowDrafts` was enabled, and then it was
|
|
disabled by the administrator, the uploaded change could not be published and
|
|
was stuck in the draft state.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=3249[Issue 3249]:
|
|
Fix server error when checking mergeability of a change.
|
|
|
|
* Workaround Guice bug "getPathInfo not decoded".
|
|
+
|
|
Due to link:https://github.com/google/guice/issues/745[Guice issue 745], cloning
|
|
of a repository with a space in its name was impossible.
|
|
|
|
|
|
=== Secondary Index / Search
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2822[Issue 2822]:
|
|
Improve Lucene analysis of words linked with underscore or dot.
|
|
+
|
|
Instead of treating words linked with underscore or dot as one word, Lucene now
|
|
treats them as separate words.
|
|
|
|
* Fix support for `change~branch~id` in query syntax.
|
|
|
|
|
|
=== Configuration
|
|
|
|
[[remove-generate-http-password-capability]]
|
|
* Remove the 'Generate HTTP Password' capability.
|
|
+
|
|
The 'Generate HTTP Password' capability has been removed to close a security
|
|
vulnerability. Now only administrators are allowed to generate and delete other
|
|
users' http passwords via the REST or SSH interface.
|
|
+
|
|
It is encouraged to clean up your `project.config` settings after upgrading.
|
|
|
|
* Fix support for multiple `footer` tokens in tracking ID config.
|
|
+
|
|
Contrary to
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#trackingid[
|
|
the documentation], if more than one `footer` token was specified in the
|
|
`trackingid` section, only the first was used.
|
|
|
|
* Treat empty
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#hooks[
|
|
`hooks.*`] values as missing, rather than trying to execute the hooks
|
|
directory.
|
|
|
|
* Fix `changed-merged` hook configuration.
|
|
+
|
|
Contrary to the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/config-gerrit.html#hooks[
|
|
documentation], the changed-merged hook configuration value was being
|
|
read from `hooks.changeMerged`. Fix to use `hooks.changeMergedHook` as
|
|
documented.
|
|
|
|
=== Web UI
|
|
|
|
==== Change List
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3304[Issue 3304]:
|
|
Always show a tooltip on the label column entries.
|
|
|
|
==== Change Screen
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3147[Issue 3147]:
|
|
Allow to disable muting of common path prefixes in the file list.
|
|
+
|
|
In the file table, parts of the file path that are common to the file previously
|
|
listed are muted. The purpose of this is to make it easier to see files that all
|
|
belong under the same path, but some users find it annoying.
|
|
+
|
|
This feature can now be enabled or disabled, per user, with the 'Mute Common
|
|
Path Prefixes In File List' setting.
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3130[Issue 3130]:
|
|
Remove special handling of 'LGTM' in review comments
|
|
+
|
|
Typing 'LGTM' in the review cover message no longer automatically selects the
|
|
highest available Code-Review score.
|
|
|
|
* Show a confirmation dialog before deleting a draft change or patch set.
|
|
+
|
|
Previously there was no confirmation and a draft change or revision patch
|
|
set would be lost if the button was accidentally clicked.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2533[Issue 2533]:
|
|
Improve the layout and color scheme of buttons.
|
|
+
|
|
Several improvements have been made:
|
|
+
|
|
** Move 'Publish' and 'Delete Change/Revision' buttons into header.
|
|
+
|
|
If a change/revision is a draft the natural next step is to publish (or delete)
|
|
it, hence these buttons should be displayed in a more prominent place.
|
|
|
|
** Highlight the 'Publish' button in blue.
|
|
+
|
|
If a change is a draft the natural next step is to publish it, hence
|
|
the 'Publish' button should be highlighted similar to the quick
|
|
approve button.
|
|
|
|
** Fix the border color of buttons on the reply popup.
|
|
+
|
|
The buttons are blue but had white borders, which was inconsistent with the
|
|
buttons on the change screen.
|
|
|
|
** Remove red color for 'Abandon' and 'Restore' buttons.
|
|
+
|
|
There is nothing dangerous about these operations that justifies
|
|
highlighting the buttons in red color. When the buttons are clicked
|
|
there is a popup where the user must confirm the operation, so it can
|
|
still be canceled.
|
|
|
|
** Hide quick approve button for draft changes.
|
|
+
|
|
A draft change cannot be submitted, hence quick approving it is not that
|
|
important. Hiding the quick approve button on draft changes makes space in the
|
|
header for displaying more important actions such as 'Publish'.
|
|
|
|
* Differentiate between conflicts and already merged errors in cherry-pick
|
|
+
|
|
When a cherry-pick operation failed with 'Cherry pick failed' error, there was no
|
|
way to know the reason for the failure: merge conflict or the commit is already
|
|
on the target branch. These failures are now differentiated and an appropriate
|
|
error is reported.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2837[Issue 2837]:
|
|
Improve display of long user names for collapsed comments in history.
|
|
+
|
|
If there were several users with long user names with the same prefix, e.g.
|
|
'AutomaticGerritVoterLinux' and 'AutomaticGerritVoterWindows', they would both
|
|
be shown as 'AutomaticGerritVo...' and users had to expand the comment to see
|
|
the full user name.
|
|
+
|
|
The ellipsis is now inserted in the middle of the user name so that the start
|
|
and end of the user name are always visible, e.g. 'AutomaticG...VoterLinux' and
|
|
'AutomaticG...terWindows'.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2992[Issue 2992]:
|
|
Fix display of review comments for Chrome on Android.
|
|
+
|
|
Chrome for Android has Font Boosting, which caused the review comments to
|
|
be displayed too large.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2909[Issue 2909]:
|
|
Make change owner votes removable.
|
|
+
|
|
If a change owner voted on a change, it was not possible for anyone other
|
|
than the owner to remove the vote.
|
|
|
|
* Preserve topic when cherry-picking.
|
|
+
|
|
When a change is cherry-picked, the topic from the source change is preserved
|
|
on the newly created change.
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3007[Issue 3007]:
|
|
Make the selected tab persistent.
|
|
+
|
|
If a change from the 'Same Topic' tab was clicked, the selected tab would reset
|
|
to the default tab ('Related Changes').
|
|
|
|
* Left-align column titles in the file list.
|
|
|
|
* Increase right margin of download box to make space for scrollbar.
|
|
+
|
|
Under some circumstances the browser's scrollbar would be shown over the
|
|
copy-to-clipboard icons in the download dropdown.
|
|
|
|
* Display +1 score's text next to the checkbox for simple boolean labels.
|
|
+
|
|
In the reply box, the text of the label score is displayed on the right hand
|
|
side when a score is selected, but this was missing for simple boolean labels.
|
|
|
|
* Don't show missing accounts as reviewer suggestions.
|
|
|
|
* Show the email address that matched the search in reviewer suggestions.
|
|
+
|
|
When matching accounts by email address against an external account, results
|
|
now show the email address that matched, not the preferred email address.
|
|
|
|
* Fix accidental reviewer selection on slow networks.
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3120[Issue 3120]:
|
|
Align parent weblinks with parent commits in the commit box.
|
|
|
|
|
|
==== Side-By-Side Diff
|
|
|
|
* Return to normal mode after editing a draft comment.
|
|
+
|
|
Previously it would remain in visual mode.
|
|
|
|
* Fix C++ header and source syntax highlighting
|
|
+
|
|
cpp and hpp files were sometimes rendered with C mode and not the extended C++
|
|
mode. This prevented keywords like `class` from being colored by the
|
|
highlighter.
|
|
|
|
|
|
==== Project Screen
|
|
|
|
* Fix alignment of checkboxes on project access screen.
|
|
+
|
|
The 'Exclusive' checkbox was not aligned with the other checkboxes.
|
|
|
|
=== REST API
|
|
|
|
==== Changes
|
|
|
|
* Remove the administrator restriction on the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#index-change[
|
|
index change] endpoint.
|
|
+
|
|
The endpoint can now be used by any user who has visibility of the change.
|
|
|
|
* Only include account ID in responses unless `DETAILED_ACCOUNTS` option is set.
|
|
+
|
|
The behavior was inconsistent with the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-accounts.html#account-info[
|
|
documentation]. In the default case it was including only the account name,
|
|
rather than only the account ID.
|
|
|
|
* Include revision's ref in responses.
|
|
+
|
|
The ref of a revision was only returned as part of the fetch info, which is only
|
|
available if the download commands are installed.
|
|
|
|
* Correctly set the limit to the default when no limit is given in the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-changes.html#suggest-reviewers[
|
|
suggest reviewers] endpoint.
|
|
|
|
* Return correct response from 'delete draft' endpoints.
|
|
+
|
|
When the `change.allowDrafts` setting is False, it is not allowed to delete
|
|
draft changes or patch sets.
|
|
+
|
|
In this case the response `405 Method Not Allowed` is now returned, instead of
|
|
`409 Conflict`.
|
|
|
|
|
|
==== Projects
|
|
|
|
* Make it mandatory to specify at least one of the `--prefix`, `--match` or `--regex`
|
|
options in the
|
|
link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.11/rest-api-projects.html#list-projects[
|
|
list projects] endpoint.
|
|
|
|
* link:https://code.google.com/p/gerrit/issues/detail?id=2706[Issue 2706]:
|
|
Do not delete branches concurrently.
|
|
+
|
|
Deleting multiple branches from the UI was resulting in a server error when
|
|
branches were in the packed-refs.
|
|
|
|
* Add retry logic for lock failure when deleting a branch.
|
|
|
|
* link:http://code.google.com/p/gerrit/issues/detail?id=3153[Issue 3153]:
|
|
Fix handling of project names ending with `.git`.
|
|
+
|
|
The projects REST API documentation states that the `.git` suffix will be
|
|
stripped off the input project name, if present.
|
|
+
|
|
This was working for the 'Create Project' endpoint, but not for any of the
|
|
others.
|
|
|
|
|
|
=== Plugins
|
|
|
|
==== Replication
|
|
|
|
* Create missing repositories on the remote when replicating with the git
|
|
protocol.
|
|
|
|
* Make `createMissingRepositories = false` take effect on `project-created` event.
|
|
+
|
|
Previously `createMissingRepositories = false` would prevent the replication
|
|
plugin from trying to create a new project when a `ref-updated` event was fired,
|
|
but when a `project-created` event was fired the replication plugin would try to
|
|
create a project on the remote.
|
|
|
|
|
|
== Upgrades
|
|
|
|
* Update Antlr to 3.5.2.
|
|
|
|
* Update ASM to 5.0.3.
|
|
|
|
* Update CodeMirror to 4.10.0-6-gd0a2dda.
|
|
|
|
* Update Guava to 18.0.
|
|
|
|
* Update Guice to 4.0-beta5.
|
|
|
|
* Update GWT to 2.7.
|
|
|
|
* Update gwtjsonrpc to 1.7-2-g272ca32.
|
|
|
|
* Update gwtorm to 1.14-14-gf54f1f1.
|
|
|
|
* Update Jetty to 9.2.9.v20150224.
|
|
|
|
* Update JGit to 3.7.0.201502260915-r.58-g65c379e.
|
|
|
|
* Update Lucene to 4.10.2.
|
|
|
|
* Update Parboiled to 1.1.7.
|
|
|
|
* Update Pegdown to 1.4.2.
|