blob: c026914e48b71cb3f7ba8adf2343b72952156978 [file] [log] [blame]
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -07001= Release notes for Gerrit 2.9
David Pursehouse44a45702013-10-18 14:25:06 +09002
3
4Gerrit 2.9 is now available:
5
Shawn Pearce6d7ebc62015-06-12 16:34:42 -07006link:https://www.gerritcodereview.com/download/gerrit-2.9.war[
7https://www.gerritcodereview.com/download/gerrit-2.9.war]
David Pursehouse44a45702013-10-18 14:25:06 +09008
David Ostrovsky6b018062013-11-27 04:33:01 +01009*WARNING:* Support for Java 1.6 has been discontinued.
10As of Gerrit 2.9, Java 1.7 is required.
11
David Pursehouse96e2c992014-04-08 15:13:38 +090012Gerrit 2.9 includes the bug fixes done with
13link:ReleaseNotes-2.8.1.html[Gerrit 2.8.1],
14link:ReleaseNotes-2.8.2.html[Gerrit 2.8.2],
Edwin Kempin84415792014-05-09 13:06:16 +020015link:ReleaseNotes-2.8.3.html[Gerrit 2.8.3],
David Pursehouse72875672014-06-27 16:25:09 +090016link:ReleaseNotes-2.8.4.html[Gerrit 2.8.4],
David Pursehouse878a5052014-07-10 16:14:33 +090017link:ReleaseNotes-2.8.5.html[Gerrit 2.8.5],
18link:ReleaseNotes-2.8.6.html[Gerrit 2.8.6] and
19link:ReleaseNotes-2.8.6.1.html[Gerrit 2.8.6.1].
David Pursehouse96e2c992014-04-08 15:13:38 +090020These bug fixes are *not* listed in these release notes.
David Ostrovsky6b018062013-11-27 04:33:01 +010021
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070022== Important Notes
David Pursehouse44a45702013-10-18 14:25:06 +090023
24
25*WARNING:* This release contains schema changes. To upgrade:
26----
27 java -jar gerrit.war init -d site_path
David Pursehouse0623c5b2014-01-22 15:47:54 +090028 java -jar gerrit.war reindex --recheck-mergeable -d site_path
David Pursehouse44a45702013-10-18 14:25:06 +090029----
30
David Pursehouse610f5972015-02-27 16:37:38 +090031*WARNING:* Upgrading to 2.9.x requires the server be first upgraded to 2.1.7 (or
32a later 2.1.x version), and then to 2.9.x. If you are upgrading from 2.2.x.x or
33later, you may ignore this warning and upgrade directly to 2.9.x.
34
35*WARNING:* When upgrading from version 2.8.4 or older with a site that uses
36Bouncy Castle Crypto, new versions of the libraries will be downloaded. The old
37libraries should be manually removed from site's `lib` folder to prevent the
38startup failure described in
39link:https://code.google.com/p/gerrit/issues/detail?id=3084[Issue 3084].
40
41
Edwin Kempin8d5bbcd2014-07-18 10:12:09 +020042*WARNING:* Support for query via the SQL index is removed. The usage of
Edwin Kempin6076b7a2014-05-14 14:52:16 +020043a secondary index is now mandatory.
44
David Pursehouse7655df02014-09-02 18:27:51 +090045*WARNING:* The `sortkey` and `sortkey_prev` options on the query changes
46REST endpoint are link:#sortkey-deprecation[deprecated].
47
Edwin Kempin8d5bbcd2014-07-18 10:12:09 +020048*WARNING:* The new change screen only displays download commands if the
49`download-commands` core plugin or any other plugin providing download
50commands is installed. The `download-commands` plugin provides the
51standard download schemes and commands. It is packaged together with
David Pursehouseed82b662014-07-18 18:22:03 +090052Gerrit and can be installed, or upgraded, during the
Edwin Kempin8d5bbcd2014-07-18 10:12:09 +020053link:https://gerrit-review.googlesource.com/Documentation/pgm-init.html[
54site initialization]:
55
David Pursehouseed82b662014-07-18 18:22:03 +090056.Installing the plugin for the first time
Edwin Kempin8d5bbcd2014-07-18 10:12:09 +020057- Batch init:
58+
59By default the batch init does *not* install any core plugin. To
60install the `download-commands` plugin during batch init, specify the
61'--install-plugin download-commands' option:
62+
63----
64 $ java -jar gerrit-2.9.war init -d site --batch --install-plugin download-commands
65----
66
67- Interactive init:
68+
69There is a question whether the `download-commands` plugin should be
70installed. To install the plugin the question must be answered with `y`:
71+
72----
73 Install plugin download-commands version v2.9 [y/N]? y
74----
75
David Pursehouseed82b662014-07-18 18:22:03 +090076.Upgrading the plugin
77Pay attention that the `download-commands` plugin from Gerrit 2.8 is
Edwin Kempin8d5bbcd2014-07-18 10:12:09 +020078*not* compatible with Gerrit 2.9 and must be upgraded:
79
80- Batch init:
81+
82With the batch init it is *not* possible to upgrade core plugins.
83
84- Interactive init:
85+
86The interactive init asks whether the plugin should be upgraded:
87+
88----
89 Install plugin download-commands version v2.9 [y/N]? y
90 version v2.8.6.1 is already installed, overwrite it [y/N]? y
91----
92
93- Manual upgrade:
94+
95The plugin can be upgraded manually by copying the new plugin jar into
96the site's `plugins` folder.
97
David Pursehouse44a45702013-10-18 14:25:06 +090098
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070099== Release Highlights
David Pursehouse44a45702013-10-18 14:25:06 +0900100
101
Edwin Kempin55e5e352014-05-15 13:13:27 +0200102* link:http://code.google.com/p/gerrit/issues/detail?id=2065[Issue 2065]:
103The new change screen is now the default change screen.
Edwin Kempin0ff3a652014-05-09 13:51:09 +0200104+
105The
106link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-review-ui.html[
107documentation of the new review UI] describes the new screens in detail
108and highlights the important functionality with screenshots.
109+
110Users that are accessing the new change screen for the first time are
111informed about the new change screen by a welcome popup. The welcome
112popup links to the review UI documentation and allows users to go back
113to the old change screen.
114
David Pursehouse44a45702013-10-18 14:25:06 +0900115
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700116== New Features
David Pursehouse44a45702013-10-18 14:25:06 +0900117
118
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700119=== Web UI
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200120
121
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700122==== Global
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200123
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900124* Project links by default link to the project dashboard.
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200125
126
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700127==== New Change Screen
Edwin Kempin9e324562014-05-14 17:08:42 +0200128
129
130* The new change screen is now the default change screen.
131
132* The layout was changed so that the focus is now on the commit
133message, the change ID and the change status.
134
135* Draft comments are displayed in the reply box.
136+
137There are links to navigate to the inline comments which can be used if
138a comment needs to be edited.
139
140* New inline comments from other users, that were published after the
141current user last reviewed this change, are highlighted in bold.
142
143* New summary comments from other users, that were published after the
144current user last reviewed this change, are automatically expanded in
145the change history.
146+
147The support for the old comment visibility strategy is discontinued.
148
Edwin Kempin55e5e352014-05-15 13:13:27 +0200149* link:http://code.google.com/p/gerrit/issues/detail?id=93[Issue 93]:
150Inline comments are shown in the change history.
Edwin Kempin9e324562014-05-14 17:08:42 +0200151
Edwin Kempin55e5e352014-05-15 13:13:27 +0200152* link:http://code.google.com/p/gerrit/issues/detail?id=592[Issue 592]:
153A reply icon is shown on each change message.
Edwin Kempin9e324562014-05-14 17:08:42 +0200154
155* Quoting is possible when replying to a comment.
156
Edwin Kempin55e5e352014-05-15 13:13:27 +0200157* link:http://code.google.com/p/gerrit/issues/detail?id=2313[Issue 2313]:
158Show whether a related change is merged or old.
159
Edwin Kempin9e324562014-05-14 17:08:42 +0200160* New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-review-ui.html#related-changes[
161Related Changes] tabs:
162** `Cherry-Picks`
163** `Same Topic`
164** `Conflicts With`
165
166* The title of the `Patch Sets` drop-down panel shows the number of the
167currently viewed patch set and the total number of patch sets, in the
168form: "current patch set/number of patch sets".
169
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900170* The currently viewed patch set is displayed in the `Patch Sets` title.
Edwin Kempin9e324562014-05-14 17:08:42 +0200171
172* Keyboard shortcuts to navigate to next/previous patch set.
173
174* Support `[`, `/` and `]` keys to navigate between files in a cycle.
175
Edwin Kempin55e5e352014-05-15 13:13:27 +0200176* link:http://code.google.com/p/gerrit/issues/detail?id=2078[Issue 2078]:
177Show a tooltip on reviewers indicating on which labels they can vote.
Edwin Kempin9e324562014-05-14 17:08:42 +0200178
179* The `Submit` button is enabled even if the change is not mergeable.
180+
181This allows to do the conflict resolution for a change series in a
182single merge commit and submit the changes in reverse order.
183
184* New `Open All` button in files header.
185
186* If a merge commit is viewed this is highlighted by an icon. In this
187case the parent commits are also shown.
188
Edwin Kempin55e5e352014-05-15 13:13:27 +0200189* link:http://code.google.com/p/gerrit/issues/detail?id=2191[Issue 2191]:
190New copy-to-clipboard button for commit ID.
191
192
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700193==== New Side-by-Side Diff Screen
Edwin Kempin55e5e352014-05-15 13:13:27 +0200194
195* link:http://code.google.com/p/gerrit/issues/detail?id=348[Issue 348]:
196The lines of a patch file are linkable.
197+
198These links can be used to directly link to certain inline comments.
199
200* link:http://code.google.com/p/gerrit/issues/detail?id=2395[Issue 2395]:
201The line length preference is used to draw a margin line at that many
202columns of text.
203+
204This allows a user to configure their preferred width (e.g. 80 columns
205or 100 columns) and see the margin, making it easier to identify lines
206that run over that width.
207
208* link:http://code.google.com/p/gerrit/issues/detail?id=2530[Issue 2530]:
209All diff preferences are honored.
210
211* link:http://code.google.com/p/gerrit/issues/detail?id=148[Issue 148]:
212The full file path is shown.
213
Edwin Kempin9e324562014-05-14 17:08:42 +0200214
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700215==== Change List / Dashboards
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200216
217* The `Status` column shows `Merge Conflict` for changes that are not
218mergeable.
219
220* A new `Size` column shows the change size as a colored bar.
221** The user preference `Show Change Sizes As Colored Bars In Changes Table`
222can be disabled to get the size information displayed as text.
223** The number of changed lines by which a change is considered as a
224large change can be
225link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-gerrit.html#change.largeChange[
226configured].
227
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900228* Support to drill down into dashboard section.
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200229+
230Clicking on the section title executes the query of this section
231without the `limit` operator.
232
233
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700234==== Project Screens
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200235
236* The general project screen provides a copyable clone command that
237automatically installs the `commit-msg` hook.
238
Edwin Kempin55e5e352014-05-15 13:13:27 +0200239* link:http://code.google.com/p/gerrit/issues/detail?id=562[Issue 562]:
240Project owners can change `HEAD` from the project branches screen.
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200241
Edwin Kempin55e5e352014-05-15 13:13:27 +0200242* link:http://code.google.com/p/gerrit/issues/detail?id=1298[Issue 1298]:
243Administrators can change the parent project from the project access
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200244screen; other users can save changes to the parent project for review
245and get the change approved by an administrator.
246
247* The project list displays icons for projects that are read only or
248hidden.
249
250* The Git garbage collection can be triggered from the general project
251screen if the user has the
252link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/access-control.html#capability_runGC[
253Run Garbage Collection] global capability.
254
255
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700256==== User Preferences
Edwin Kempin7ab00c42014-05-14 16:31:23 +0200257
258* Users can choose the UK date format to render dates and timestamps in
259the UI.
260
261
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700262=== Secondary Index
David Pursehouse0623c5b2014-01-22 15:47:54 +0900263
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900264* Support for query via the SQL index is removed. The usage of
265a secondary index is now mandatory.
David Pursehouse0623c5b2014-01-22 15:47:54 +0900266
267* New `--recheck-mergeable` option on the
268link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/pgm-reindex.html[
Edwin Kempina06338eb2014-05-14 13:37:40 +0200269reindex] program.
David Pursehouse0623c5b2014-01-22 15:47:54 +0900270
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700271=== ssh
David Pursehouse44a45702013-10-18 14:25:06 +0900272
Edwin Kempin650b7c02014-05-14 14:27:29 +0200273* New `--notify` option on the
274link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/cmd-review.html[
275review] command allowing to control when email notifications should be
276sent.
277
Edwin Kempin55e5e352014-05-15 13:13:27 +0200278* link:http://code.google.com/p/gerrit/issues/detail?id=1752[Issue 1752]:
279New `--branch` option on the
Edwin Kempin650b7c02014-05-14 14:27:29 +0200280link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/cmd-review.html[
281review] command.
David Pursehouse44a45702013-10-18 14:25:06 +0900282
Edwin Kempina06338eb2014-05-14 13:37:40 +0200283* New `--all-reviewers` option on the
284link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/cmd-query.html[
285query] command allowing query results to include information about all
286reviewers added on the change.
David Pursehouse44a45702013-10-18 14:25:06 +0900287
288* New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/cmd-apropos.html[
Edwin Kempina06338eb2014-05-14 13:37:40 +0200289apropos] command to search the Gerrit documentation.
David Pursehouse44a45702013-10-18 14:25:06 +0900290
Edwin Kempin55e5e352014-05-15 13:13:27 +0200291* link:http://code.google.com/p/gerrit/issues/detail?id=1156[Issue 1156]:
292New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/cmd-create-branch.html[
Edwin Kempin650b7c02014-05-14 14:27:29 +0200293create-branch] command.
294
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700295=== REST API
David Pursehouse44a45702013-10-18 14:25:06 +0900296
297
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700298==== Changes
David Pursehouse7655df02014-09-02 18:27:51 +0900299
300
301[[sortkey-deprecation]]
302* Results returned by the
303link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/rest-api-changes.html#list-changes[
304query changes] endpoint are now paginated using offsets instead of sortkeys.
305+
306The `sortkey` and `sortkey_prev` parameters on the endpoint are deprecated. The
307results are now paginated using the `--limit` (`-n`) option to limit the number
308of results, and the `-S` option to set the start point.
309+
310Queries with sortkeys are still supported against old index versions, to enable
311online reindexing while clients have an older JS version.
312
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700313==== Projects
Edwin Kempin237e2242014-05-14 14:57:29 +0200314
315
316* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/rest-api-projects.html#get-content[
317Get content of a file from HEAD of a branch].
318
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700319==== Documentation
David Pursehouse44a45702013-10-18 14:25:06 +0900320
321
Edwin Kempina06338eb2014-05-14 13:37:40 +0200322* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/rest-api-documentation.html#search-documentation.html[
David Pursehouse44a45702013-10-18 14:25:06 +0900323Search documentation].
324
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700325=== Access Rights
Edwin Kempin4bae1202014-05-14 14:35:38 +0200326
327
328* New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/access-control.html#capability_viewAllAccounts[
329global capability for viewing all accounts].
330
331* New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/access-control.html#capability_viewPlugins[
332global capability for viewing the list of installed plugins].
333
Edwin Kempin55e5e352014-05-15 13:13:27 +0200334* link:http://code.google.com/p/gerrit/issues/detail?id=1993[Issue 1993]:
335New `Change Owner` group that allows to assign label permissions to the change owner.
Edwin Kempin4bae1202014-05-14 14:35:38 +0200336
337* Support link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/access-control.html#category_submit_on_behalf_of[
338on behalf of for submit].
339
340* Allow service users to access REST API if `auth.gitBasicAuth = true`.
341+
342If link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-gerrit.html#auth.gitBasicAuth[
343auth.gitBasicAuth] is set to `true` in the `gerrit.config` file all
344HTTP traffic is authenticated using standard `BasicAuth` and the
345credentials are validated using the same auth method as configured for
346the Gerrit Web UI. E.g. for LDAP this means that users must use their
347LDAP password for Git over HTTP and for accessing the REST API.
348+
349Service users are technical users that were created by the
350`create-account` SSH command. These users only exist in Gerrit and
351hence they do not have any LDAP password. This is why service users
352were not able to make use of the REST API if `auth.gitBasicAuth` was
353set to `true`.
354+
355Now if `auth.gitBasicAuth` is set to `true` users that exist only in
356Gerrit but not in LDAP are authenticated with their HTTP password from
357the Gerrit database.
358
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700359=== Search
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200360
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200361* New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-search.html#mergeable[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900362is:mergeable] search operator.
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200363+
364Finds changes that have no merge conflicts and can be merged into the
365destination branch.
366
Edwin Kempin55e5e352014-05-15 13:13:27 +0200367* link:http://code.google.com/p/gerrit/issues/detail?id=2163[Issue 2163]:
368New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-search.html#parentproject[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900369parentproject] search operator.
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200370+
371Finds changes in the specified project or in one of its child projects.
372
Edwin Kempin55e5e352014-05-15 13:13:27 +0200373* link:http://code.google.com/p/gerrit/issues/detail?id=2162[Issue 2162]:
374New link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-search.html#conflicts[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900375conflicts] search operator.
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200376+
377Finds changes that conflict with the specified change.
378
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900379* New operators for absolute last-updated-on search.
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200380** link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-search.html#before_until[
381before / until]
382** link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-search.html#after_since[
383after / since]
384
385* Support exact match on file parts in
386link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-search.html#file[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900387file] operator.
Edwin Kempin6076b7a2014-05-14 14:52:16 +0200388
389* Query shortcuts
390** `o` = `owner`
391** `r` = `reviewer`
392** `p` = `project`
393** `f` = `file`
394
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700395=== Daemon
David Pursehouse44a45702013-10-18 14:25:06 +0900396
397
398* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-inspector.html[
399Gerrit Inspector]: interactive Jython shell.
400+
401New `-s` option is added to the Daemon to start an interactive Jython shell for inspection and
402troubleshooting of live data of the Gerrit instance.
403
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700404=== Documentation
Edwin Kempin51f4ab72014-05-14 14:12:04 +0200405
406
407* The documentation is now
408https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/rest-api-documentation.html#search-documentation.html[
409searchable]:
410+
411On each documentation page there is search box in the right top corner
412that allows to search in the documentation.
413
414* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/user-review-ui.html[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900415Documentation of the new review UI].
Edwin Kempin51f4ab72014-05-14 14:12:04 +0200416
417* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/intro-project-owner.html[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900418New Project Owner Guide].
Edwin Kempin51f4ab72014-05-14 14:12:04 +0200419
420* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/index.html[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900421Newly structured documentation index].
Edwin Kempin51f4ab72014-05-14 14:12:04 +0200422
David Pursehouse44a45702013-10-18 14:25:06 +0900423
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700424=== Configuration
Edwin Kempin2a2a6462014-05-14 15:36:04 +0200425
426* New init step for installing the `Verified` label.
427
Edwin Kempin55e5e352014-05-15 13:13:27 +0200428* link:http://code.google.com/p/gerrit/issues/detail?id=2257[Issue 2257]:
429link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-gerrit.html#repository.name.defaultSubmitType[
Edwin Kempin2a2a6462014-05-14 15:36:04 +0200430Default submit type] for newly created projects can be configured.
431
432* `sshd_log` and `httpd_log` can use log4j configuration.
433
434* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-gerrit.html#change.allowDrafts[
435Draft workflow can be disabled].
436
437* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-project-config.html#receive.checkReceivedObjects[
438Project configuration for checking of received objects].
439
Edwin Kempin55e5e352014-05-15 13:13:27 +0200440* link:http://code.google.com/p/gerrit/issues/detail?id=2318[Issue 2318]:
441Allow the text of the "Report Bug" link to be configured.
442
Edwin Kempin2a2a6462014-05-14 15:36:04 +0200443
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700444=== Misc
Edwin Kempin886e5432014-05-14 15:38:46 +0200445
446* The removal of reviewers and their votes is recorded as a change
447message.
448
Edwin Kempin55e5e352014-05-15 13:13:27 +0200449* link:http://code.google.com/p/gerrit/issues/detail?id=2229[Issue 2229]:
450The change URL is returned on push if the change is updated.
Edwin Kempin886e5432014-05-14 15:38:46 +0200451
452* The topic is included into merge commit messages if all merged
453changes have the same topic.
454
455* Stable CSS class names.
456
457
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700458=== Plugins
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200459
460
461* Plugin API to invoke the REST API.
462
463* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#screen[
464Plugins can add entire screens to Gerrit].
465
466* Plugins can have a
467link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#settings-screen[
468settings screen] which is linked from plugin list screen.
469
470* Support to edit
471link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#simple-project-specific-configuration[
472project plugin configuration parameters] in the UI.
473
474* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-gerrit.html#plugins.allowRemoteAdmin[
475Remote plugin administration is by default disabled].
476
477
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700478==== Extension Points
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200479
480
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900481* Extension point to provide a "Message Of The Day".
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200482
483* Validation for
484** link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-validation.html#new-project-validation[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900485project creation].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200486** link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-validation.html#new-group-validation[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900487group creation].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200488
489* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#init_step[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900490Init steps can do initialization after the site is created].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200491** The `All-Projects` `project.config` can be read and edited
492
493* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#receive-pack[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900494Initialization of ReceivePack].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200495
496* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#post-receive-hook[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900497Registration of PostReceiveHooks].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200498
499* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#root-level-commands[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900500Registration of root level commands].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200501
502* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/dev-plugins.html#multiple-commands[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900503Multiple SSH commands can be bound to the same class].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200504
505* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/config-gerrit.html#database.dataSourceInterceptorClass[
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900506DataSource Interception].
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200507
508
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700509==== JavaScript Plugins
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200510
511
512* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.9/js-api.html#self_on[
513JavaScript Callbacks]
514** Gerrit.on(\'history\', f)
515** Gerrit.on(\'submitchange\', f)
516** Gerrit.on(\'showchange\', f)
517
518* `change_plugins` element on the new change screen that allows to
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900519insert arbitrary HTML fragments from plugins.
Edwin Kempina6b8f9b2014-05-14 16:04:28 +0200520
521
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700522== Bug Fixes
David Pursehouse44a45702013-10-18 14:25:06 +0900523
524
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700525=== Access Rights
Edwin Kempin55e5e352014-05-15 13:13:27 +0200526
527
528* Fix possibility to overcome BLOCK permissions.
529
530
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700531=== Web UI
Edwin Kempin55e5e352014-05-15 13:13:27 +0200532
533
534* link:http://code.google.com/p/gerrit/issues/detail?id=2652[Issue 2652]:
535Copy label approvals when cherry-picking change to same branch.
536
Edwin Kempin6ef93502014-05-21 13:15:08 +0200537* link:http://code.google.com/p/gerrit/issues/detail?id=2662[Issue 2662]:
538Limit file list in new change screen to files that were touched in new
539patch set.
540
541* link:http://code.google.com/p/gerrit/issues/detail?id=2308[Issue 2308]:
542Show related changes in new change screen for merged changes if there
543are open descendants.
544
545* link:http://code.google.com/p/gerrit/issues/detail?id=2635[Issue 2635]:
546Fix copying of download commands by 'Cmd-C' in Safari.
547
Edwin Kempin55e5e352014-05-15 13:13:27 +0200548* link:http://code.google.com/p/gerrit/issues/detail?id=2178[Issue 2178]:
549Fix background of reply box on new change screen getting transparent.
550
551* link:http://code.google.com/p/gerrit/issues/detail?id=2362[Issue 2362]:
552Show quick approve button only for current patch set.
553
554* link:http://code.google.com/p/gerrit/issues/detail?id=2405[Issue 2405]:
555Update `Patch Sets` drop-down panel when draft patch set is deleted.
556
557* link:http://code.google.com/p/gerrit/issues/detail?id=2397[Issue 2397]:
558Fix linkifying of topics that are set to a URL.
559
560* link:http://code.google.com/p/gerrit/issues/detail?id=2151[Issue 2151]:
561Fix overflowing of long lines in commit message block.
562
563* link:http://code.google.com/p/gerrit/issues/detail?id=2401[Issue 2401]:
564Fix truncated long lines in new side-by-side diff screen.
565
566* link:http://code.google.com/p/gerrit/issues/detail?id=2225[Issue 2225]:
567Display larger icons for Prev / Next and Up to Change links on new
568side-by-side diff screen.
569
570* link:http://code.google.com/p/gerrit/issues/detail?id=2340[Issue 2340]:
571Fix selection in new side-by-side diff screen.
572
Edwin Kempin6ef93502014-05-21 13:15:08 +0200573* link:http://code.google.com/p/gerrit/issues/detail?id=2409[Issue 2409]:
574Show in new side-by-side diff screen updates of submodule links.
575
576* link:http://code.google.com/p/gerrit/issues/detail?id=2481[Issue 2481]:
577After showing a binary file in the unified diff screen switch back to
578the side-by-side diff screen when the user navigates to the
579next/previous file.
580
Edwin Kempin55e5e352014-05-15 13:13:27 +0200581* link:http://code.google.com/p/gerrit/issues/detail?id=2417[Issue 2417]:
582Respect base diff revision for files REST call.
583
584* link:http://code.google.com/p/gerrit/issues/detail?id=2654[Issue 2654]:
585Require the user to confirm setting the username.
586+
587Once the username has been set, it cannot be edited. This can cause
588problems for users who accidentally set the wrong username. A
589confirmation dialog now warns the user that setting the username is
590permanent and the username is only set when the user confirms.
591
592* link:https://code.google.com/p/gerrit/issues/detail?id=2635[Issue 2635]:
593Fix copying from copyable label in Safari.
594
595
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700596=== Secondary Index
Edwin Kempin94c24682014-05-14 16:10:54 +0200597
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900598* Fix Online Reindexing.
Edwin Kempin94c24682014-05-14 16:10:54 +0200599
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900600* Fix for full-text search with Lucene.
Edwin Kempin94c24682014-05-14 16:10:54 +0200601+
602The full-text search was using a fuzzy query which used the edit
603distance to find terms in the index close to the provided search term.
604This produced bizarre results for queries like "message:1234".
605+
606Instead, use Lucene's QueryBuilder with an analyzer to convert a
607full-text search word/phrase into a phrase query.
608
Edwin Kempin55e5e352014-05-15 13:13:27 +0200609* link:http://code.google.com/p/gerrit/issues/detail?id=2281[Issue 2281]:
610Reindex change after updating commit message.
611
612
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700613=== REST
Edwin Kempin55e5e352014-05-15 13:13:27 +0200614
615
616* link:http://code.google.com/p/gerrit/issues/detail?id=2568[Issue 2568]:
617Update description file during `PUT /projects/{name}/config`.
618
619
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700620=== SSH
Edwin Kempin55e5e352014-05-15 13:13:27 +0200621
622
623* link:http://code.google.com/p/gerrit/issues/detail?id=2516[Issue 2516]:
624Fix parsing of label name on `review` command.
625
626* link:http://code.google.com/p/gerrit/issues/detail?id=2440[Issue 2440]:
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900627Clarify for review command when `--verified` can be used.
Edwin Kempin55e5e352014-05-15 13:13:27 +0200628
629
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700630=== Plugins
Edwin Kempin55e5e352014-05-15 13:13:27 +0200631
632
633* link:http://code.google.com/p/gerrit/issues/detail?id=2551[Issue 2551]:
634Handle absolute URLs in the top level menu.
635
636* link:http://code.google.com/p/gerrit/issues/detail?id=2391[Issue 2391]:
637Respect servlet context path in URL for top menu items.
638
639
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700640=== Other
Edwin Kempin55e5e352014-05-15 13:13:27 +0200641
642
643* link:http://code.google.com/p/gerrit/issues/detail?id=2382[Issue 2382]:
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900644Clean left over data migration after removal of TrackingIds table.
Edwin Kempin55e5e352014-05-15 13:13:27 +0200645
Edwin Kempin94c24682014-05-14 16:10:54 +0200646
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700647== Upgrades
David Pursehouse43e54b72013-12-12 19:19:51 +0900648
Edwin Kempind0ac9ec2014-05-14 15:26:44 +0200649* Update JGit to 3.4.0.201405051725-m7
Edwin Kempin55e5e352014-05-15 13:13:27 +0200650+
651This upgrade fixes the MissingObjectExceptions in Gerrit that are
652described in link:http://code.google.com/p/gerrit/issues/detail?id=2025[
653issue 2025].
654
Edwin Kempina06338eb2014-05-14 13:37:40 +0200655* Update gwtjsonrpc to 1.5
David Pursehouseb4c181d2014-07-11 14:53:27 +0900656* Update gwtorm to 1.13
Edwin Kempind0ac9ec2014-05-14 15:26:44 +0200657* Update guava to 16.0
Edwin Kempin55e5e352014-05-15 13:13:27 +0200658
Edwin Kempind0ac9ec2014-05-14 15:26:44 +0200659* Update H2 to 1.3.174
Edwin Kempin55e5e352014-05-15 13:13:27 +0200660+
661This version includes a fix for an LOB deadlock between reading and
662updating LOB columns. This could lead to a deadlock between web and SSH
663clients as described in
664link:http://code.google.com/p/gerrit/issues/detail?id=2365[issue 2365].
665
Edwin Kempind0ac9ec2014-05-14 15:26:44 +0200666* Update Jetty to 9.1.0.v20131115
667* Update Servlet API to 3.1
668* Update Lucene to 4.6.0
669* Update GWT to 2.6.0
670
Luca Milanesioeb649322013-11-29 09:17:41 +0000671
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700672== Plugins
Luca Milanesioeb649322013-11-29 09:17:41 +0000673
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700674=== Replication
Luca Milanesioeb649322013-11-29 09:17:41 +0000675
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900676* Default push refSpec is changed to `refs/*:refs/*` (non-forced push).
Edwin Kempinecbc1ece2014-05-14 15:11:18 +0200677+
678The default push refSpec for the replication plugin has changed from `forced`
Luca Milanesioeb649322013-11-29 09:17:41 +0000679to `non-forced` push (was `+refs/*:refs/*` and now is `refs/*:refs/*`). This change
680should not impact typical replication topologies where the slaves are read-only
681and can be pushed by their masters only. If you wanted explicitly to overwrite
682all changes on the slaves, you need to add a `push=+refs/*:refs/*` configuration
683entry for each replication target.
Edwin Kempin39269d82014-05-14 15:07:38 +0200684
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900685* Support replication of HEAD updates.
Edwin Kempinecbc1ece2014-05-14 15:11:18 +0200686
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900687* Stream events for ref replication.
Edwin Kempinecbc1ece2014-05-14 15:11:18 +0200688
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900689* Replications failed due to "failed to lock" errors are retried.
Edwin Kempinecbc1ece2014-05-14 15:11:18 +0200690
691* Configuration changes can be detected and replication is
David Pursehouse70b4f8f2014-07-20 22:11:30 +0900692automatically restarted.
Edwin Kempinecbc1ece2014-05-14 15:11:18 +0200693
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700694=== Issue Tracker System plugins
Edwin Kempin39269d82014-05-14 15:07:38 +0200695
696*WARNING:* The `hooks-*` plugins (`plugins/hooks-bugzilla`,
697`plugins/hooks-jira` and `plugins/hooks-rtc`) are deprecated with
698Gerrit 2.9.
699
700There are new plugins for the integration with Bugzilla, Jira and IBM
701Rational Team Concert:
702
703* link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-bugzilla[plugins/its-bugzilla]
704* link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-jira[plugins/its-jira]
705* link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-rtc[plugins/its-rtc]
706
707The new issue tracker system plugins have a common base which is
708link:https://gerrit-review.googlesource.com/#/admin/projects/plugins/its-base[plugins/its-base].
709
710The configuration of the new plugins is slightly different than the
711configuration of the old plugins because they use different section
712names in the Gerrit configuration. For easy migration the new plugins
713have an init step that allows to take over the configuration from the
714old plugins during the Gerrit initialization phase.
715
716New Features:
717
718* The issue tracker integration can be enabled/disabled per project.
719* Parent projects can enforce the issue tracker integration for their
720 child projects.
721* It can be configured for which branches of a project the issue
722 tracker integration is enabled.
723* Whether the issue tracker integration is enabled/disabled for a
724 project can be changed from the ProjectInfoScreen in the Gerrit
725 WebUI.