blob: f3f1741aa113db818afddb82a873eaac4d4ed422 [file] [log] [blame]
David Pursehouseed5a8992014-01-30 11:44:40 +09001Release notes for Gerrit 2.8.2
2==============================
3
4There are no schema changes from link:ReleaseNotes-2.8.1.html[2.8.1].
5
6Download:
7link:https://gerrit-releases.storage.googleapis.com/gerrit-2.8.2.war[
8https://gerrit-releases.storage.googleapis.com/gerrit-2.8.2.war]
9
10
David Pursehousefe2882a2014-02-18 19:14:19 +090011Lucene Index
12------------
13
14* Support committing Lucene writes within a fixed interval.
15+
16The `ramBufferSize` and `maxBufferedDocs` options control how often the
17writer is flushed, but this does not fsync files on disk and thus
18might not be permanent, particularly in a machine under heavy load.
19+
20As a result, commits to the index may not be completed, and updates may
21be lost if the server goes down.
22+
23A new option `commitWithin` is added, to control how frequently the
24indexes are committed.
25
26
David Pursehouseed5a8992014-01-30 11:44:40 +090027General
28-------
29
30* Only add "cherry picked from" when cherry picking a merged change.
31+
32The "(cherry picked from commit ...)" line was being added in the commit
David Pursehousef67d09d2014-03-07 19:30:21 +090033message when cherry picking from closed changes, which included those that were
34abandoned.
35
36* link:https://code.google.com/p/gerrit/issues/detail?id=2513[Issue 2513]:
37Improve the "This patchset was cherry picked" message.
38+
39When cherry-picking a change, the message "This patchset was cherry picked to
40change: <Change-Id>" was added as a message on the change. This was not very
41useful as the Change-Id is the same on the newly created change.
42+
43The message is changed to "This patchset was cherry picked to branch <branch
44name> as commit <SHA1>".
David Pursehouseed5a8992014-01-30 11:44:40 +090045
46* Fix PUSH permission check for draft changes.
47+
48It was not possible to block pushes to the `refs/drafts` namespace.
49
50* Don't allow project owners to create branches if create is blocked.
51+
52Project owners were able to create branches through the WebUI, REST and SSH
53even when the 'create reference' permission was actually blocked for them.
54
55* link:https://code.google.com/p/gerrit/issues/detail?id=2397[Issue 2397]:
56Remove quotes and trailing period from "topic edited" messages.
57+
58The quotes and trailing period were causing linkification to fail for topics
59that were set to a URL.
60
61* Check if user can read HEAD commit when resolving detached HEAD.
62+
63If HEAD was detached the `GetHead` REST endpoint refused to resolve HEAD
64when the user was not a project owner.
65
David Pursehouse4ff2f2c2014-02-12 23:08:26 +090066* link:https://code.google.com/p/gerrit/issues/detail?id=2932[Issue 2932]:
67Keep `status:closed` limit below MySQL Connector/J's hard limit.
68+
69Since MySQL Connector/J 5.1.21 does not allow limits above 50M rows
70and aborts them with 'setMaxRows() out of range', we cannot use `MAX_VALUE`
71as limit for plain `status:closed` queries.
72
73* Fix IllegalArgumentException when running query with `limit:0` on secondary
74index.
75+
76Running a query with `limit:0` when the secondary index is enabled was causing
77an internal server error.
78
David Pursehousefe2882a2014-02-18 19:14:19 +090079* link:https://code.google.com/p/gerrit/issues/detail?id=2331[Issue 2331]:
David Pursehouse4ff18052014-02-25 11:38:06 +090080Make sure `change-merged` event contains correct patch set number.
David Pursehousefe2882a2014-02-18 19:14:19 +090081+
82When a change is submitted with the cherry-pick strategy, or when the
83change is rebased with the "rebase if necessary" strategy, a new patch
84set is created. The newly created patch set was not being set in the
David Pursehouse4ff18052014-02-25 11:38:06 +090085`change-merged` event.
86
87* Guard against `diff.mnemonicprefix` in `commit-msg` hook.
88+
89When `diff.mnemonicprefix` was enabled in the git config, committing
90changes with `git commit -v` caused the diff to be included in the
91generated commit message.
92
93* link:https://code.google.com/p/gerrit/issues/detail?id=2453[Issue 2453]:
94Fix submit rule evaluation for non blocking labels.
95+
96Putting a negative score on a label configured as `NoBlock` was causing
97the submit button to be disabled.
98
99* link:https://code.google.com/p/gerrit/issues/detail?id=2331[Issue 2331]:
100Allow to create branch with new commits.
101+
102Branches could not be created with a new commit which is not on other branches
103already.
104
105* Fix incompatibility between "Rebase if Necessary" and "copy scores".
106+
107When a project was set up with "Rebase if Necessary", one of its labels had
108`copyAllScoresOnTrivialRebase` or `copyMaxScore`, and a change that actually
109needed a trivial rebase was submitted, Gerrit first rebased the change, and in
110the process copied the approval for the label. It then copied all the
111approvals, including the one already copied, which resulted in a constraint
112violation on the database.
113
114* Add `Implementation-Vendor` default manifest entry for plugins.
115+
116In buck, the `java_binary` rule merges manifest entries from dependent JARs
117unless the input JAR possesses these entries itself. This was causing some
118plugins to display the wrong vendor information if they had dependency on
119another JAR file that provided a `Implementation-Vendor` value.
David Pursehousefe2882a2014-02-18 19:14:19 +0900120
David Pursehousef67d09d2014-03-07 19:30:21 +0900121* link:https://code.google.com/p/gerrit/issues/detail?id=2498[Issue 2498]:
122Handle null commits when updating submodules.
123+
124In some edge cases it was possible that a null commit would exist, and this
125caused a crash when updating submodules.
126
David Pursehousefed49272014-03-11 10:42:58 +0900127* Update and insert comments/approvals in a single step.
128+
129When a review includes both new label scores and updates to existing label
130scores, use `upsert` to record them all at the same time, rather than in
131separate `update` and `insert` operations.
132
David Pursehouse4ff2f2c2014-02-12 23:08:26 +0900133* Remove dependency on joda time library in gerrit launcher.
134+
135The joda time library was being unnecessarily packaged in the root of
136the gerrit.war file.
David Pursehouseed5a8992014-01-30 11:44:40 +0900137
138Change Screen / Diff Screen
139---------------------------
140
141
142* link:https://code.google.com/p/gerrit/issues/detail?id=2398[Issue 2398]:
143Enable syntax highlighting for Groovy, Clojure, Lisp, Ruby and Perl.
144
145* link:https://code.google.com/p/gerrit/issues/detail?id=2416[Issue 2416]:
146Fix copy functionality in Firefox and Safari.
147+
148Ctrl-C/Cmd-C was activating the 'insert comment' feature, and preventing the
149browser from copying the selected text to the clipboard.
150
151* link:https://code.google.com/p/gerrit/issues/detail?id=2428[Issue 2428]:
152Fix truncation of long lines in side-by-side diff.
153+
154Lines whose length exceeded the width of the window were being truncated
155and only shown fully after zooming out/in on the browser.
156
157* Fix handling of the enter key when editing the topic.
158+
159The enter key was causing the file diff view to open, instead of confirming
160the topic edit.
161
162* Fix wrong button being passed to the 'revert' action.
163+
164The action was using the cherry-pick button instead of the revert button.
165
David Pursehouse4ff2f2c2014-02-12 23:08:26 +0900166* Improve the error message shown when cherry picking a change fails.
167+
168The error message "Could not create merge commit during cherry pick" was
169confusing for users, and is replaced with simply "Cherry pick failed".
170
171* Add newline on commit messages created by cherry picking a change in the UI
172or via the REST API.
173+
174If a commit was cherry-picked from the UI or via the REST API, the
175trailing newline on the end of the commit message was lost.
176
177* link:https://code.google.com/p/gerrit/issues/detail?id=2405[Issue 2405]:
178Update change to invalidate cache after deletion of draft revision.
179+
180When a non-current draft patch set was deleted no update of the change
181was made, causing the change screen to not work properly because it
182relied on cached data.
183
184* Extend change screen's horizontal bars to full width.
185+
186This allows the title of the change message to have some padding within
187the bar.
188
189* Fix tab alignment to be correct width in side-by-side diff.
190+
191This fixes the tab width to be the user's preference, rather than
1921 + user's preference when show tabs is enabled.
193
194* Fill the browser width in side-by-side diff.
195+
196Filling the browser available space with each side of the diff at
19750% size allows the user to more easily view long lines if they
198have a wide display, and better fit on more narrow displays by
199splitting the available width at 50%.
David Pursehouseed5a8992014-01-30 11:44:40 +0900200
David Pursehouse4ff18052014-02-25 11:38:06 +0900201* Fire `comment-added` stream event even when mail notification is not sent.
202+
203Unchecking the "and send email" option on the change screen prevented the
204`comment-added` event from being sent to the event stream.
205
206* link:https://code.google.com/p/gerrit/issues/detail?id=2493[Issue 2493]:
207Set uploader to current user in `patchset-created` event upon rebasing
208a change in the UI.
209+
210When a change was rebased from the change screen, the `uploader` field
211of the `patchset-created` event was incorrectly set to the original
212change uploader, rather than the user that performed the rebase.
213
David Pursehousef67d09d2014-03-07 19:30:21 +0900214* Display a warning instead of an error when the intraline diff times out.
215+
216Displaying an error was confusing for users and administrators.
217
218* link:https://code.google.com/p/gerrit/issues/detail?id=2514[Issue 2514]:
219Display an error message when commentlink regex is invalid.
220+
221If a commentlink was configured with an invalid regular expression, for example
222an expression that is valid in Java but not in JavaScript, the change screen
223failed to load.
224+
225Now, an error message will be displayed in the UI.
226
David Pursehouseed5a8992014-01-30 11:44:40 +0900227ssh
228---
229
230
231* Support for nio2 backend is removed.
232+
233The nio2 backend is link:https://issues.apache.org/jira/browse/SSHD-252[
234broken in MINA SSHD]. Support is removed until the next release of MINA
235SSHD in which it is fixed.
236
237* link:https://code.google.com/p/gerrit/issues/detail?id=2424[Issue 2424]:
238Add descriptions on commands that are disabled in slave mode.
239+
240Commands that are disabled on a server running in slave mode were being listed
241with an empty description.
242
243* Remove obsolete commands from slave mode commands list.
244+
245The `approve` and `replicate` commands, which no longer exist, were still being
246listed in the available commands shown when running the ssh `gerrit` command
247without any arguments on a server running in slave mode.
248
249* Remove 'including replication' from the `show-queue` command description.
250+
251The `replication` command is provided by the replication plugin, so it is no
252longer relevant to mention this in the description of a core command.
253
David Pursehouse4ff2f2c2014-02-12 23:08:26 +0900254* Fix aliasing of SSH commands.
255
David Pursehouse4ff18052014-02-25 11:38:06 +0900256* link:https://code.google.com/p/gerrit/issues/detail?id=2515[Issue 2515]:
257Fix internal server error when updating an existing label with `gerrit review`.
David Pursehouseed5a8992014-01-30 11:44:40 +0900258
259Replication Plugin
260------------------
261
262
263* Never replicate automerge-cache commits.
264+
265Commits in the `automerge-cache` namespace are used on the master to
266improve performance of the diff UI. They are not needed on remote
267mirrors and it is wasteful to replicate them.
268
269* link:https://code.google.com/p/gerrit/issues/detail?id=2420[Issue 2420]:
270Fix failure to create missing remote repository via git:// protocol.
271+
272When replicating to a mirror over the anonymous git:// protocol and the
273repository did not exist on the remote (i.e. if the remote was offline
274when the repository was originally created), the replication failed with
275a "remote repository error", rather than the expected "no repository".
276
277* Improve info logging related to repository creation and deletion, and
278differentiate between local and remote repository errors.
279
280* Update documentation to clarify replication of refs/meta/config when
281refspec is 'all refs'.
282
David Pursehouse4ff2f2c2014-02-12 23:08:26 +0900283Upgrades
284--------
285
286
287* JGit is upgraded to 3.2.0.201312181205-r
David Pursehouseed5a8992014-01-30 11:44:40 +0900288
289Documentation
290-------------
291
292
293* Add missing documentation of the secondary index configuration.
294+
295Document that open and closed changes are indexed in separate indexes,
296and for Lucene indexes the RAM buffer size and maximum buffered documents
297can be configured.
298
299* Correct the Gerrit download link.
300+
301The link on the documentation index was pointing to the Google Code page,
302which has not been used for some time.
303
304* Correct the description of the `revisions` field in the REST API's
305`ChangeInfo` entity.
306
307* Add a link from the plugin documentation to the validation listeners API
308documentation.
David Pursehouse4ff18052014-02-25 11:38:06 +0900309
310* Remove double border around code snippets.
311
312* Add border around tables.