|  | Release notes for Gerrit 2.8.2 | 
|  | ============================== | 
|  |  | 
|  | There are no schema changes from link:ReleaseNotes-2.8.1.html[2.8.1]. | 
|  |  | 
|  | Download: | 
|  | link:https://gerrit-releases.storage.googleapis.com/gerrit-2.8.2.war[ | 
|  | https://gerrit-releases.storage.googleapis.com/gerrit-2.8.2.war] | 
|  |  | 
|  |  | 
|  | Lucene Index | 
|  | ------------ | 
|  |  | 
|  | * Support committing Lucene writes within a fixed interval. | 
|  | + | 
|  | The `ramBufferSize` and `maxBufferedDocs` options control how often the | 
|  | writer is flushed, but this does not fsync files on disk and thus | 
|  | might not be permanent, particularly in a machine under heavy load. | 
|  | + | 
|  | As a result, commits to the index may not be completed, and updates may | 
|  | be lost if the server goes down. | 
|  | + | 
|  | A new option `commitWithin` is added, to control how frequently the | 
|  | indexes are committed. | 
|  |  | 
|  |  | 
|  | General | 
|  | ------- | 
|  |  | 
|  | * Only add "cherry picked from" when cherry picking a merged change. | 
|  | + | 
|  | The "(cherry picked from commit ...)" line was being added in the commit | 
|  | message when cherry picking from closed changes, which included those that were | 
|  | abandoned. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2513[Issue 2513]: | 
|  | Improve the "This patchset was cherry picked" message. | 
|  | + | 
|  | When cherry-picking a change, the message "This patchset was cherry picked to | 
|  | change: <Change-Id>" was added as a message on the change.  This was not very | 
|  | useful as the Change-Id is the same on the newly created change. | 
|  | + | 
|  | The message is changed to "This patchset was cherry picked to branch <branch | 
|  | name> as commit <SHA1>". | 
|  |  | 
|  | * Fix PUSH permission check for draft changes. | 
|  | + | 
|  | It was not possible to block pushes to the `refs/drafts` namespace. | 
|  |  | 
|  | * Don't allow project owners to create branches if create is blocked. | 
|  | + | 
|  | Project owners were able to create branches through the WebUI, REST and SSH | 
|  | even when the 'create reference' permission was actually blocked for them. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2397[Issue 2397]: | 
|  | Remove quotes and trailing period from "topic edited" messages. | 
|  | + | 
|  | The quotes and trailing period were causing linkification to fail for topics | 
|  | that were set to a URL. | 
|  |  | 
|  | * Check if user can read HEAD commit when resolving detached HEAD. | 
|  | + | 
|  | If HEAD was detached the `GetHead` REST endpoint refused to resolve HEAD | 
|  | when the user was not a project owner. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2392[Issue 2392]: | 
|  | Keep `status:closed` limit below MySQL Connector/J's hard limit. | 
|  | + | 
|  | Since MySQL Connector/J 5.1.21 does not allow limits above 50M rows | 
|  | and aborts them with 'setMaxRows() out of range', we cannot use `MAX_VALUE` | 
|  | as limit for plain `status:closed` queries. | 
|  |  | 
|  | * Fix IllegalArgumentException when running query with `limit:0` on secondary | 
|  | index. | 
|  | + | 
|  | Running a query with `limit:0` when the secondary index is enabled was causing | 
|  | an internal server error. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2331[Issue 2331]: | 
|  | Make sure `change-merged` event contains correct patch set number. | 
|  | + | 
|  | When a change is submitted with the cherry-pick strategy, or when the | 
|  | change is rebased with the "rebase if necessary" strategy, a new patch | 
|  | set is created.  The newly created patch set was not being set in the | 
|  | `change-merged` event. | 
|  |  | 
|  | * Guard against `diff.mnemonicprefix` in `commit-msg` hook. | 
|  | + | 
|  | When `diff.mnemonicprefix` was enabled in the git config, committing | 
|  | changes with `git commit -v` caused the diff to be included in the | 
|  | generated commit message. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2453[Issue 2453]: | 
|  | Fix submit rule evaluation for non blocking labels. | 
|  | + | 
|  | Putting a negative score on a label configured as `NoBlock` was causing | 
|  | the submit button to be disabled. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2441[Issue 2441]: | 
|  | Allow to create branch with new commits. | 
|  | + | 
|  | Branches could not be created with a new commit which is not on other branches | 
|  | already. | 
|  |  | 
|  | * Fix incompatibility between "Rebase if Necessary" and "copy scores". | 
|  | + | 
|  | When a project was set up with "Rebase if Necessary", one of its labels had | 
|  | `copyAllScoresOnTrivialRebase` or `copyMaxScore`, and a change that actually | 
|  | needed a trivial rebase was submitted, Gerrit first rebased the change, and in | 
|  | the process copied the approval for the label.  It then copied all the | 
|  | approvals, including the one already copied, which resulted in a constraint | 
|  | violation on the database. | 
|  |  | 
|  | * Add `Implementation-Vendor` default manifest entry for plugins. | 
|  | + | 
|  | In buck, the `java_binary` rule merges manifest entries from dependent JARs | 
|  | unless the input JAR possesses these entries itself.  This was causing some | 
|  | plugins to display the wrong vendor information if they had dependency on | 
|  | another JAR file that provided a `Implementation-Vendor` value. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2498[Issue 2498]: | 
|  | Handle null commits when updating submodules. | 
|  | + | 
|  | In some edge cases it was possible that a null commit would exist, and this | 
|  | caused a crash when updating submodules. | 
|  |  | 
|  | * Update and insert comments/approvals in a single step. | 
|  | + | 
|  | When a review includes both new label scores and updates to existing label | 
|  | scores, use `upsert` to record them all at the same time, rather than in | 
|  | separate `update` and `insert` operations. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2374[Issue 2374]: | 
|  | Prevent duplicate commits in same project when uploading to `refs/changes/n`. | 
|  | + | 
|  | Under certain circumstances, when pushing to `refs/changes/n`, the same | 
|  | commit could be pushed onto multiple changes even if the changes were on the | 
|  | same branch. | 
|  |  | 
|  | * Remove dependency on joda time library in gerrit launcher. | 
|  | + | 
|  | The joda time library was being unnecessarily packaged in the root of | 
|  | the gerrit.war file. | 
|  |  | 
|  | Change Screen / Diff Screen | 
|  | --------------------------- | 
|  |  | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2398[Issue 2398]: | 
|  | Enable syntax highlighting for Groovy, Clojure, Lisp, Ruby and Perl. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2416[Issue 2416]: | 
|  | Fix copy functionality in Firefox and Safari. | 
|  | + | 
|  | Ctrl-C/Cmd-C was activating the 'insert comment' feature, and preventing the | 
|  | browser from copying the selected text to the clipboard. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2428[Issue 2428]: | 
|  | Fix truncation of long lines in side-by-side diff. | 
|  | + | 
|  | Lines whose length exceeded the width of the window were being truncated | 
|  | and only shown fully after zooming out/in on the browser. | 
|  |  | 
|  | * Fix handling of the enter key when editing the topic. | 
|  | + | 
|  | The enter key was causing the file diff view to open, instead of confirming | 
|  | the topic edit. | 
|  |  | 
|  | * Fix wrong button being passed to the 'revert' action. | 
|  | + | 
|  | The action was using the cherry-pick button instead of the revert button. | 
|  |  | 
|  | * Improve the error message shown when cherry picking a change fails. | 
|  | + | 
|  | The error message "Could not create merge commit during cherry pick" was | 
|  | confusing for users, and is replaced with simply "Cherry pick failed". | 
|  |  | 
|  | * Add newline on commit messages created by cherry picking a change in the UI | 
|  | or via the REST API. | 
|  | + | 
|  | If a commit was cherry-picked from the UI or via the REST API, the | 
|  | trailing newline on the end of the commit message was lost. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2405[Issue 2405]: | 
|  | Update change to invalidate cache after deletion of draft revision. | 
|  | + | 
|  | When a non-current draft patch set was deleted no update of the change | 
|  | was made, causing the change screen to not work properly because it | 
|  | relied on cached data. | 
|  |  | 
|  | * Extend change screen's horizontal bars to full width. | 
|  | + | 
|  | This allows the title of the change message to have some padding within | 
|  | the bar. | 
|  |  | 
|  | * Fix tab alignment to be correct width in side-by-side diff. | 
|  | + | 
|  | This fixes the tab width to be the user's preference, rather than | 
|  | 1 + user's preference when show tabs is enabled. | 
|  |  | 
|  | * Fill the browser width in side-by-side diff. | 
|  | + | 
|  | Filling the browser available space with each side of the diff at | 
|  | 50% size allows the user to more easily view long lines if they | 
|  | have a wide display, and better fit on more narrow displays by | 
|  | splitting the available width at 50%. | 
|  |  | 
|  | * Fire `comment-added` stream event even when mail notification is not sent. | 
|  | + | 
|  | Unchecking the "and send email" option on the change screen prevented the | 
|  | `comment-added` event from being sent to the event stream. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2493[Issue 2493]: | 
|  | Set uploader to current user in `patchset-created` event upon rebasing | 
|  | a change in the UI. | 
|  | + | 
|  | When a change was rebased from the change screen, the `uploader` field | 
|  | of the `patchset-created` event was incorrectly set to the original | 
|  | change uploader, rather than the user that performed the rebase. | 
|  |  | 
|  | * Display a warning instead of an error when the intraline diff times out. | 
|  | + | 
|  | Displaying an error was confusing for users and administrators. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2514[Issue 2514]: | 
|  | Display an error message when commentlink regex is invalid. | 
|  | + | 
|  | If a commentlink was configured with an invalid regular expression, for example | 
|  | an expression that is valid in Java but not in JavaScript, the change screen | 
|  | failed to load. | 
|  | + | 
|  | Now, an error message will be displayed in the UI. | 
|  |  | 
|  | ssh | 
|  | --- | 
|  |  | 
|  |  | 
|  | * Support for nio2 backend is removed. | 
|  | + | 
|  | The nio2 backend is link:https://issues.apache.org/jira/browse/SSHD-252[ | 
|  | broken in MINA SSHD].  Support is removed until the next release of MINA | 
|  | SSHD in which it is fixed. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2424[Issue 2424]: | 
|  | Add descriptions on commands that are disabled in slave mode. | 
|  | + | 
|  | Commands that are disabled on a server running in slave mode were being listed | 
|  | with an empty description. | 
|  |  | 
|  | * Remove obsolete commands from slave mode commands list. | 
|  | + | 
|  | The `approve` and `replicate` commands, which no longer exist, were still being | 
|  | listed in the available commands shown when running the ssh `gerrit` command | 
|  | without any arguments on a server running in slave mode. | 
|  |  | 
|  | * Remove 'including replication' from the `show-queue` command description. | 
|  | + | 
|  | The `replication` command is provided by the replication plugin, so it is no | 
|  | longer relevant to mention this in the description of a core command. | 
|  |  | 
|  | * Fix aliasing of SSH commands. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2515[Issue 2515]: | 
|  | Fix internal server error when updating an existing label with `gerrit review`. | 
|  |  | 
|  | Replication Plugin | 
|  | ------------------ | 
|  |  | 
|  |  | 
|  | * Never replicate automerge-cache commits. | 
|  | + | 
|  | Commits in the `automerge-cache` namespace are used on the master to | 
|  | improve performance of the diff UI.  They are not needed on remote | 
|  | mirrors and it is wasteful to replicate them. | 
|  |  | 
|  | * link:https://code.google.com/p/gerrit/issues/detail?id=2420[Issue 2420]: | 
|  | Fix failure to create missing remote repository via git:// protocol. | 
|  | + | 
|  | When replicating to a mirror over the anonymous git:// protocol and the | 
|  | repository did not exist on the remote (i.e. if the remote was offline | 
|  | when the repository was originally created), the replication failed with | 
|  | a "remote repository error", rather than the expected "no repository". | 
|  |  | 
|  | * Improve info logging related to repository creation and deletion, and | 
|  | differentiate between local and remote repository errors. | 
|  |  | 
|  | * Update documentation to clarify replication of refs/meta/config when | 
|  | refspec is 'all refs'. | 
|  |  | 
|  | Upgrades | 
|  | -------- | 
|  |  | 
|  |  | 
|  | * JGit is upgraded to 3.2.0.201312181205-r | 
|  |  | 
|  | Documentation | 
|  | ------------- | 
|  |  | 
|  |  | 
|  | * Add missing documentation of the secondary index configuration. | 
|  | + | 
|  | Document that open and closed changes are indexed in separate indexes, | 
|  | and for Lucene indexes the RAM buffer size and maximum buffered documents | 
|  | can be configured. | 
|  |  | 
|  | * Correct the Gerrit download link. | 
|  | + | 
|  | The link on the documentation index was pointing to the Google Code page, | 
|  | which has not been used for some time. | 
|  |  | 
|  | * Correct the description of the `revisions` field in the REST API's | 
|  | `ChangeInfo` entity. | 
|  |  | 
|  | * Add a link from the plugin documentation to the validation listeners API | 
|  | documentation. | 
|  |  | 
|  | * Remove double border around code snippets. | 
|  |  | 
|  | * Add border around tables. |