blob: 472f0dcc5d1c7387547b632aa1118876557588ac [file] [log] [blame]
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -07001= Release notes for Gerrit 2.8
David Pursehouse58b58de2013-05-20 19:11:58 +09002
3
4Gerrit 2.8 is now available:
5
Shawn Pearce6d7ebc62015-06-12 16:34:42 -07006link:https://www.gerritcodereview.com/download/gerrit-2.8.war[
7https://www.gerritcodereview.com/download/gerrit-2.8.war]
David Pursehouse58b58de2013-05-20 19:11:58 +09008
9
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070010== Schema Change
David Pursehouse58b58de2013-05-20 19:11:58 +090011
12
David Pursehouse3a2cc702013-08-15 11:06:46 +090013*WARNING:* This release contains schema changes. To upgrade:
14----
15 java -jar gerrit.war init -d site_path
16----
17
18*WARNING:* Upgrading to 2.8.x requires the server be first upgraded to 2.1.7 (or
19a later 2.1.x version), and then to 2.8.x. If you are upgrading from 2.2.x.x or
20later, you may ignore this warning and upgrade directly to 2.8.x.
David Pursehouse58b58de2013-05-20 19:11:58 +090021
David Pursehouse6e2dcc92013-09-18 09:17:33 +090022*WARNING:* The replication plugin now automatically creates missing repositories
23on the destination if during the replication of a ref the target repository is
24found to be missing. This is a change in behavior of the replication plugin. To go
25back to the old behavior, set the parameter `remote.NAME.createMissingRepositories`
26in the `replication.config` file to `false`.
27
Edwin Kempin76195862013-12-10 07:38:54 +010028*WARNING:* The deprecated `approve` alias for the
29link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-review.html[
30review] SSH command has been removed. This is important for all users
31of the Jenkins link:https://wiki.jenkins-ci.org/display/JENKINS/Gerrit+Trigger[
32Gerrit Trigger Plugin] since this plugin by default uses the `approve`
33command to vote and comment on changes in Gerrit. If you use the Gerrit
34Trigger Plugin, go to its global configuration in Jenkins and adapt the
35Gerrit commands to use the `review` command instead of the `approve`
36command.
37
Edwin Kempina2e9e6b62013-12-10 07:49:51 +010038*WARNING:* The new change screen only displays download commands if the
39`download-commands` core plugin or any other plugin providing download
40commands is installed. The `download-commands` plugin provides the
41standard download schemes and commands. It is packaged together with
42Gerrit and can be installed during the
43link:https://gerrit-review.googlesource.com/Documentation/pgm-init.html[
44site initialization].
45
David Pursehouse58b58de2013-05-20 19:11:58 +090046
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070047== Release Highlights
David Pursehouse58b58de2013-05-20 19:11:58 +090048
49
David Pursehouse0c62df92013-10-17 14:11:48 +090050* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/intro-change-screen.html[
David Pursehoused0c8e372013-10-10 10:14:18 +090051New change screen] with completely redesigned UI and fully using the REST API.
David Pursehouse67c07102013-09-24 09:55:23 +090052
David Pursehousef8f222e2013-12-03 17:40:08 +090053* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#__a_id_index_a_section_index[
David Pursehouse6e2dcc92013-09-18 09:17:33 +090054Secondary indexing with Lucene and Solr].
55
David Pursehouse0c62df92013-10-17 14:11:48 +090056* Lots of new link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api.html[
David Pursehouse58b58de2013-05-20 19:11:58 +090057REST API endpoints].
58
David Pursehouse6e2dcc92013-09-18 09:17:33 +090059* New
David Pursehouse0c62df92013-10-17 14:11:48 +090060link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#ui_extension[
David Pursehouse6e2dcc92013-09-18 09:17:33 +090061UI extension] and
David Pursehouse0c62df92013-10-17 14:11:48 +090062link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/js-api.html[
David Pursehouse6e2dcc92013-09-18 09:17:33 +090063JavaScript API] for plugins.
David Pursehouse73907be2013-08-08 15:18:55 +090064
David Pursehouse6e2dcc92013-09-18 09:17:33 +090065* New build system using Facebook's link:http://facebook.github.io/buck/[Buck].
David Pursehouse58b58de2013-05-20 19:11:58 +090066
David Pursehouse2e99e0f2013-10-17 10:05:39 +090067* New core plugin: Download Commands.
68
David Pursehouse58b58de2013-05-20 19:11:58 +090069
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070070== New Features
David Pursehouse58b58de2013-05-20 19:11:58 +090071
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070072=== Build
David Pursehouse6e2dcc92013-09-18 09:17:33 +090073
74* Gerrit is now built with
David Pursehouse0c62df92013-10-17 14:11:48 +090075link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-buck.html[
David Pursehouse6e2dcc92013-09-18 09:17:33 +090076Buck].
77
78* Documentation is now built with Buck and link:http://asciidoctor.org[Asciidoctor].
79
David Pursehouse58b58de2013-05-20 19:11:58 +090080
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -070081=== Indexing and Search
David Pursehousee21f4e12013-10-24 13:34:00 +090082
83Gerrit can be configured to use a
David Pursehousef8f222e2013-12-03 17:40:08 +090084link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#__a_id_index_a_section_index[
David Pursehousee21f4e12013-10-24 13:34:00 +090085secondary index] with Lucene or Solr.
86
87Existing search operations use the secondary index, when enabled, to increase
88performance and reduce resource usage.
89
90The following additional search operations are possible when secondary indexing
91is enabled:
92
93* New
94link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/user-search.html#comment[
95`comment` search operator].
96
97* The link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/user-search.html#file[
98`file` operator] can be used to find changes on the specified file.
99
100* Regular expressions are allowed in `file` searches.
101
102
David Pursehouse836ce9c2013-12-03 17:45:28 +0900103*WARNING:* After enabling the secondary index, the index must be built using the
104link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/pgm-reindex.html[
David Pursehouse834a3812013-12-04 13:33:17 +0900105reindex program] before restarting the Gerrit server.
David Pursehouse836ce9c2013-12-03 17:45:28 +0900106
107
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700108=== Configuration
David Pursehouse4143f952013-07-05 13:57:53 +0900109
110* Project owners can define `receive.maxObjectSizeLimit` in the
David Pursehouse0c62df92013-10-17 14:11:48 +0900111link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#receive.maxObjectSizeLimit[
David Pursehouse4143f952013-07-05 13:57:53 +0900112project configuration] to further reduce the global setting.
113
David Pursehouse2e3383f2013-07-08 10:50:26 +0900114* Site administrators can define a
David Pursehouse0c62df92013-10-17 14:11:48 +0900115link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-mail.html#_footer_vm[
David Pursehouse2e3383f2013-07-08 10:50:26 +0900116footer template] that will be appended to the end of all outgoing emails after
117the 'ChangeFooter' and 'CommentFooter'.
118
David Pursehouse87c69a02013-07-16 14:40:24 +0900119* New `topic-changed` hook and stream event is fired when a change's topic is
120edited from the Web UI or via a REST API.
121
David Pursehouse73907be2013-08-08 15:18:55 +0900122* New options `--list-plugins` and `--install-plugins` on the
David Pursehouse0c62df92013-10-17 14:11:48 +0900123link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/pgm-init.html[
David Pursehouse73907be2013-08-08 15:18:55 +0900124site initialization command].
125
126* New `auth.httpDisplaynameHeader` and `auth.httpEmailHeader` in the
Edwin Kempin0b7158a2013-10-17 09:05:00 +0200127link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#__a_id_auth_a_section_auth[
David Pursehouse73907be2013-08-08 15:18:55 +0900128authentication configuration].
129+
130When using HTTP-based authentication, the SSO can be delegated to check not only
131the user credentials but also to fetch the full user-profile.
132+
133With the config properties `auth.httpDisplaynameHeader` and `auth.httpEmailHeader`
134it is possible to configure the name of the headers used for propagating this extra
135information and enforce them on the user profile during login and beyond.
136
Edwin Kempin0b7158a2013-10-17 09:05:00 +0200137* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#__a_id_httpd_a_section_httpd[
David Pursehoused5c50f12013-08-21 11:36:09 +0900138Customizable registration page for HTTP authentication].
139
Edwin Kempin0b7158a2013-10-17 09:05:00 +0200140* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#__a_id_httpd_a_section_httpd[
David Pursehouse73907be2013-08-08 15:18:55 +0900141Configurable external `robots.txt` file].
David Pursehouse87c69a02013-07-16 14:40:24 +0900142
David Pursehouse3a2cc702013-08-15 11:06:46 +0900143* Support for
David Pursehouse0c62df92013-10-17 14:11:48 +0900144link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/database-setup.html#createdb_oracle[
David Pursehouse3a2cc702013-08-15 11:06:46 +0900145Oracle database].
146
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900147* New bash completion script for autocompletion of parameters to the gerrit.sh wrapper.
148
149* The site can be
David Pursehouse0c62df92013-10-17 14:11:48 +0900150link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-auto-site-initialization.html[
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900151auto-initialized on server startup].
152
David Pursehouse2e8b5822013-10-17 15:54:24 +0900153* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#httpd.filterClass[
David Pursehouse67c07102013-09-24 09:55:23 +0900154Configurable filtering of HTTP traffic through Gerrit's HTTP protocol].
155
David Pursehoused0c8e372013-10-10 10:14:18 +0900156* Labels can be
David Pursehouse2e8b5822013-10-17 15:54:24 +0900157link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-labels.html#httpd.label_copyAllScoresIfNoCodeChange[
David Pursehoused0c8e372013-10-10 10:14:18 +0900158configured to copy scores forward to new patch sets if there is no code change].
159
160* Labels can be
David Pursehouse2e8b5822013-10-17 15:54:24 +0900161link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-labels.html#httpd.label_copyAllScoresOnTrivialRebase[
David Pursehoused0c8e372013-10-10 10:14:18 +0900162configured to copy scores forward to new patch sets for trivial rebases].
163
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700164=== Web UI
David Pursehouse58b58de2013-05-20 19:11:58 +0900165
166
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700167==== Global
David Pursehouse58b58de2013-05-20 19:11:58 +0900168
169* The change status is shown in a separate column on dashboards and search results.
170
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700171==== Change Screens
David Pursehouse58b58de2013-05-20 19:11:58 +0900172
173
David Pursehoused0c8e372013-10-10 10:14:18 +0900174* New change screen with completely redesigned UI, using the REST API.
David Pursehouse67c07102013-09-24 09:55:23 +0900175+
176Site administrators can
David Pursehouse0c62df92013-10-17 14:11:48 +0900177link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#gerrit.changeScreen[
David Pursehouse67c07102013-09-24 09:55:23 +0900178configure which change screen is shown by default].
179+
180Users can choose which one to use in their personal preferences, either using
181the site default or explicitly choosing the old one or new one.
182
David Pursehoused0c8e372013-10-10 10:14:18 +0900183* link:https://code.google.com/p/gerrit/issues/detail?id=141[Issue 141]:
184In the new change screen, comments can be added on a range of lines.
185
David Pursehouse58b58de2013-05-20 19:11:58 +0900186* New button to cherry-pick the change to another branch.
187
188* When issuing a rebase via the Web UI, the committer is now the logged in
189 user, rather than "Gerrit Code Review".
190+
191If the user has more than one email address, the preferred email address will
192be used.
193
David Pursehouse87c69a02013-07-16 14:40:24 +0900194* Default user's full name to git committer name if user has not configured a
195full name in their profile.
196
197* Include comment author attributes in comment panels.
198+
199Comment author's email address and name are included as attributes in comment
200panels. This makes it easier to filter out CI-based comments using user
201scripts.
202
David Pursehoused7b0cb82013-08-14 11:49:22 +0900203* Copy reviewed flag to new patch sets for identical files.
204+
205If a user has already seen and reviewed a file, the 'reviewed' flag is forwarded
206on to the next patch set when the content of the file in the next patch set is
207identical to the reviewed file.
208
David Pursehouse67c07102013-09-24 09:55:23 +0900209* "Uploaded Patch Set 1" change message is added on changes when they
210are uploaded.
211
David Pursehouse58b58de2013-05-20 19:11:58 +0900212
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700213=== REST API
David Pursehouse58b58de2013-05-20 19:11:58 +0900214
David Pursehouse0c62df92013-10-17 14:11:48 +0900215* Several new link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api.html[
David Pursehouse58b58de2013-05-20 19:11:58 +0900216REST API endpoints] are added.
217
David Pursehouse87c69a02013-07-16 14:40:24 +0900218* REST views can determine how long their response should be cached.
219
David Pursehouse73907be2013-08-08 15:18:55 +0900220* REST views can handle 'HTTP 422 Unprocessable Entity' responses.
221
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700222==== Access Rights
David Pursehouse61927b72013-06-27 16:06:51 +0900223
224
David Pursehouse0c62df92013-10-17 14:11:48 +0900225* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-access.html#list-access[
David Pursehouse61927b72013-06-27 16:06:51 +0900226List access rights for project(s)]
227
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700228==== Accounts
David Pursehouse58b58de2013-05-20 19:11:58 +0900229
230
David Pursehouse0c62df92013-10-17 14:11:48 +0900231* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#create-account[
David Pursehouse58b58de2013-05-20 19:11:58 +0900232Create account]
233
David Pursehouse0c62df92013-10-17 14:11:48 +0900234* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-account-name[
David Pursehouse58b58de2013-05-20 19:11:58 +0900235Get account full name]
236
David Pursehouse0c62df92013-10-17 14:11:48 +0900237* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#set-account-name[
David Pursehouse58b58de2013-05-20 19:11:58 +0900238Set account full name]
239
David Pursehouse0c62df92013-10-17 14:11:48 +0900240* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#delete-account-name[
David Pursehouse58b58de2013-05-20 19:11:58 +0900241Delete account full name]
242
David Pursehouse0c62df92013-10-17 14:11:48 +0900243* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#list-account-emails[
David Pursehouse58b58de2013-05-20 19:11:58 +0900244List account email addresses]
245
David Pursehouse0c62df92013-10-17 14:11:48 +0900246* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-account-email[
David Pursehouse58b58de2013-05-20 19:11:58 +0900247Get account email address]
248
David Pursehouse0c62df92013-10-17 14:11:48 +0900249* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#set-preferred-email[
David Pursehouse58b58de2013-05-20 19:11:58 +0900250Set account preferred email address]
251
David Pursehouse0c62df92013-10-17 14:11:48 +0900252* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#create-account-email[
David Pursehouse58b58de2013-05-20 19:11:58 +0900253Create account email]
254
David Pursehouse0c62df92013-10-17 14:11:48 +0900255* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#delete-account-email[
David Pursehouse58b58de2013-05-20 19:11:58 +0900256Delete account email]
257
David Pursehouse0c62df92013-10-17 14:11:48 +0900258* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-active[
David Pursehouse58b58de2013-05-20 19:11:58 +0900259Get account state]
260
David Pursehouse0c62df92013-10-17 14:11:48 +0900261* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#set-active[
David Pursehouse58b58de2013-05-20 19:11:58 +0900262Set account state to active]
263
David Pursehouse0c62df92013-10-17 14:11:48 +0900264* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#delete-active[
David Pursehouse58b58de2013-05-20 19:11:58 +0900265Set account state to inactive]
266
David Pursehouse0c62df92013-10-17 14:11:48 +0900267* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-http-password[
David Pursehouse7f47d262013-06-04 10:04:59 +0900268Get account HTTP password]
269
David Pursehouse0c62df92013-10-17 14:11:48 +0900270* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#set-http-password[
David Pursehouse7f47d262013-06-04 10:04:59 +0900271Set or generate account HTTP password]
272
David Pursehouse0c62df92013-10-17 14:11:48 +0900273* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#delete-http-password[
David Pursehouse7f47d262013-06-04 10:04:59 +0900274Delete account HTTP password]
275
David Pursehouse0c62df92013-10-17 14:11:48 +0900276* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#list-ssh-keys[
David Pursehouse7f47d262013-06-04 10:04:59 +0900277List account SSH keys]
278
David Pursehouse0c62df92013-10-17 14:11:48 +0900279* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-ssh-key[
David Pursehouse7f47d262013-06-04 10:04:59 +0900280Get account SSH key]
281
David Pursehouse0c62df92013-10-17 14:11:48 +0900282* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#add-ssh-key[
David Pursehouse7f47d262013-06-04 10:04:59 +0900283Add account SSH key]
284
David Pursehouse0c62df92013-10-17 14:11:48 +0900285* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#delete-ssh-key[
David Pursehouse7f47d262013-06-04 10:04:59 +0900286Delete account SSH key]
287
David Pursehouse0c62df92013-10-17 14:11:48 +0900288* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-username[
David Pursehouse55817ab2013-06-07 15:54:29 +0900289Get account username]
290
David Ostrovskyea2272c2013-11-10 23:20:13 +0100291* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#get-starred-changes[
292Get starred changes]
293
294* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#star-change[
295Star change]
296
297* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-accounts.html#unstar-change[
298Unstar change]
299
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700300==== Changes
David Pursehouse58b58de2013-05-20 19:11:58 +0900301
302
David Pursehouse0c62df92013-10-17 14:11:48 +0900303* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#rebase-change[
David Pursehouse58b58de2013-05-20 19:11:58 +0900304Rebase change]
305
David Pursehouse0c62df92013-10-17 14:11:48 +0900306* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#cherry-pick[
David Pursehouse58b58de2013-05-20 19:11:58 +0900307Cherry-pick revision]
308
David Pursehouse0c62df92013-10-17 14:11:48 +0900309* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#get-content[
David Pursehouse58b58de2013-05-20 19:11:58 +0900310Get content of a file in a revision]
311
David Pursehouse0c62df92013-10-17 14:11:48 +0900312* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#get-patch[
David Pursehouse58b58de2013-05-20 19:11:58 +0900313Get revision as a formatted patch]
314
David Pursehouse0c62df92013-10-17 14:11:48 +0900315* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#get-diff[
David Pursehouse55817ab2013-06-07 15:54:29 +0900316Get diff of a file in a revision]
David Pursehouse58b58de2013-05-20 19:11:58 +0900317
David Pursehouse0c62df92013-10-17 14:11:48 +0900318* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#get-commit[
David Pursehouse87c69a02013-07-16 14:40:24 +0900319Get parsed commit of a revision]
320
David Pursehouse0c62df92013-10-17 14:11:48 +0900321* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#publish-draft-change[
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900322Publish draft change]
323
David Pursehouse0c62df92013-10-17 14:11:48 +0900324* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#delete-draft-change[
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900325Delete draft change]
326
David Pursehouse0c62df92013-10-17 14:11:48 +0900327* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#suggest-reviewers[
David Pursehouse67c07102013-09-24 09:55:23 +0900328Suggest reviewers]
329
David Pursehouse0c62df92013-10-17 14:11:48 +0900330* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-changes.html#get-included-in[
David Pursehoused0c8e372013-10-10 10:14:18 +0900331Get included in]
332
David Pursehouse58b58de2013-05-20 19:11:58 +0900333
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700334==== Config
David Pursehouse1bd4e8d2013-06-12 11:01:06 +0200335
David Pursehouse0c62df92013-10-17 14:11:48 +0900336* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-config.html#get-capabilities[
David Pursehouse1bd4e8d2013-06-12 11:01:06 +0200337Get capabilities]
338
David Pursehouse0c62df92013-10-17 14:11:48 +0900339* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-config.html#get-version[
David Pursehouse4143f952013-07-05 13:57:53 +0900340Get version] (of the Gerrit server)
341
David Pursehouse1bd4e8d2013-06-12 11:01:06 +0200342
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700343==== Projects
David Pursehouse58b58de2013-05-20 19:11:58 +0900344
345
David Pursehouse0c62df92013-10-17 14:11:48 +0900346* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#list-branches[
David Pursehouse58b58de2013-05-20 19:11:58 +0900347List branches]
348
David Pursehouse0c62df92013-10-17 14:11:48 +0900349* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#get-branch[
David Pursehouse58b58de2013-05-20 19:11:58 +0900350Get branch]
351
David Pursehouse0c62df92013-10-17 14:11:48 +0900352* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#create-branch[
David Pursehouse58b58de2013-05-20 19:11:58 +0900353Create branch]
354
David Pursehouse0c62df92013-10-17 14:11:48 +0900355* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#delete-branch[
David Pursehouse55817ab2013-06-07 15:54:29 +0900356Delete branch]
357
David Pursehouse0c62df92013-10-17 14:11:48 +0900358* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#list-child-projects[
David Pursehouse58b58de2013-05-20 19:11:58 +0900359List child projects]
360
David Pursehouse0c62df92013-10-17 14:11:48 +0900361* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#get-child-project[
David Pursehouse58b58de2013-05-20 19:11:58 +0900362Get child project]
363
David Pursehouse0c62df92013-10-17 14:11:48 +0900364* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/rest-api-projects.html#set-config[
David Pursehoused5c50f12013-08-21 11:36:09 +0900365Set configuration]
366
David Pursehouse58b58de2013-05-20 19:11:58 +0900367
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700368=== Capabilities
David Pursehouse1bd4e8d2013-06-12 11:01:06 +0200369
370
371New global capabilities are added.
372
David Pursehouse0c62df92013-10-17 14:11:48 +0900373* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/access_control.html#capability_generateHttpPassword[
David Pursehouse2e3383f2013-07-08 10:50:26 +0900374Generate Http Password] allows non-administrator users to generate HTTP
David Pursehouseaa9f8902013-06-23 21:08:12 +0900375passwords for users other than themselves.
David Pursehouse1bd4e8d2013-06-12 11:01:06 +0200376+
377This capability would typically be assigned to a non-interactive group
378to be able to generate HTTP passwords for users from a tool or web service
379that uses the Gerrit REST API.
380
David Pursehouse0c62df92013-10-17 14:11:48 +0900381* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/access_control.html#capability_runAs[
David Pursehouse2e3383f2013-07-08 10:50:26 +0900382Run As] allows users to impersonate other users by setting the `X-Gerrit-RunAs`
David Pursehouse1bd4e8d2013-06-12 11:01:06 +0200383HTTP header on REST API calls.
384+
385Site administrators do not inherit this capability; it must be granted
386explicitly.
387
388
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700389=== Emails
David Pursehouse87c69a02013-07-16 14:40:24 +0900390
391* The `RebasedPatchSet` template is removed. Email notifications for rebased
392changes are now sent with the `ReplacePatchSet` template.
393
David Pursehoused5c50f12013-08-21 11:36:09 +0900394* Comment notification emails now include context of comments that are replied
395to, and links to the file(s) in which comments are made.
396
David Pursehouse87c69a02013-07-16 14:40:24 +0900397
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700398=== Plugins
David Pursehouse58b58de2013-05-20 19:11:58 +0900399
400
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700401==== Global
David Pursehouse2e3383f2013-07-08 10:50:26 +0900402
David Pursehouse58b58de2013-05-20 19:11:58 +0900403
David Pursehouse73907be2013-08-08 15:18:55 +0900404* Plugins may now contribute buttons to various parts of the UI using the
David Pursehouse0c62df92013-10-17 14:11:48 +0900405link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#ui_extension[
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900406UI extension] and
David Pursehouse0c62df92013-10-17 14:11:48 +0900407link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/js-api.html[
David Pursehouse73907be2013-08-08 15:18:55 +0900408JavaScript API].
David Pursehouse58b58de2013-05-20 19:11:58 +0900409
David Pursehouse87c69a02013-07-16 14:40:24 +0900410* Plugins may now provide an 'About' section on their documentation index page.
411
David Pursehouse3a2cc702013-08-15 11:06:46 +0900412* Plugins may now provide separate sections for REST API and servlet
413documentation on their index page.
414
David Pursehouse73907be2013-08-08 15:18:55 +0900415* Plugins may now provide
David Pursehouse0c62df92013-10-17 14:11:48 +0900416link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-validation.html#pre-merge-validation[
David Pursehouse73907be2013-08-08 15:18:55 +0900417pre-merge validation steps].
418
David Pursehoused7b0cb82013-08-14 11:49:22 +0900419* Plugins may now provide
David Pursehouse0c62df92013-10-17 14:11:48 +0900420link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#capabilities[
David Pursehoused7b0cb82013-08-14 11:49:22 +0900421Global capabilities].
422
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900423* Plugins may now
David Pursehouse0c62df92013-10-17 14:11:48 +0900424link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#plugin_name[
David Pursehoused0c8e372013-10-10 10:14:18 +0900425define their own name] and get the name injected at runtime.
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900426
David Pursehoused7b0cb82013-08-14 11:49:22 +0900427* The "hello world" plugin is replaced with the "cookbook plugin" which has more
428examples of the plugin API's usage.
429
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900430* Plugins may now trigger and listen to a "project deleted"
David Pursehouse0c62df92013-10-17 14:11:48 +0900431link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#events[
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900432event].
433
434* link:https://code.google.com/p/gerrit/issues/detail?id=2101[Issue 2101]:
435Plugins implementing LifecycleListener can use auto registration.
436
437* Plugins may bind REST endpoints with empty view names.
438
David Pursehoused0c8e372013-10-10 10:14:18 +0900439* Plugins may now provide
David Pursehouse0c62df92013-10-17 14:11:48 +0900440link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#top-menu-extensions[
David Pursehoused0c8e372013-10-10 10:14:18 +0900441entries in Gerrit's top menu].
442
443* Plugins may now
David Pursehouse0c62df92013-10-17 14:11:48 +0900444link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#stream-events[
David Pursehoused0c8e372013-10-10 10:14:18 +0900445send events to the events stream].
446
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900447* Plugins may now bind multiple SSH commands to the same implementation class.
448
449* Plugins may now provide
David Pursehouse0c62df92013-10-17 14:11:48 +0900450link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/dev-plugins.html#download-commands[
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900451download schemes and download commands].
452+
453Commonly used download schemes and commands are moved out of core
454Gerrit and are now implemented by a new core plugin, `download-commands`.
455
456
David Pursehouse87c69a02013-07-16 14:40:24 +0900457
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700458==== Commit Message Length Checker
David Pursehouse2e3383f2013-07-08 10:50:26 +0900459
460
461* Commits whose subject or body length exceeds the limit can be rejected.
462
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700463==== Replication
David Pursehouse2e3383f2013-07-08 10:50:26 +0900464
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900465* Automatically create missing repositories on the destination.
466+
467If during the replication of a ref the target repository is found to be missing,
468the repository is automatically created.
469+
470This is a change in behavior of the replication plugin. To go back to the old
471behavior, set the parameter `remote.NAME.createMissingRepositories` in the
472`replication.config` file to `false`.
473
474* Support for replication of project deletions.
475+
476The replication plugin can now be configured to listen to project deletion events
477and to replicate the project deletions. By default project deletions are *not*
478replicated.
479
David Pursehouse91b7f7c2014-07-15 11:35:38 +0900480* link:http://code.google.com/p/gerrit/issues/detail?id=1880[Issue 1880]:
481Make `{name}` placeholder optional when replicating a single project.
482+
483The `{$name}` placeholder is optional when replicating a single project,
David Pursehouse2e3383f2013-07-08 10:50:26 +0900484allowing a single project to be replicated under a different name.
485
David Pursehoused7b0cb82013-08-14 11:49:22 +0900486* Project names can be matched with wildcard or regex patterns in `replication.config`.
David Pursehouse73907be2013-08-08 15:18:55 +0900487
488* The `replication start` command does not exit until replication is finished
489when the `--wait` option is used.
490
491* The `replication start` command displays a summary of the replication status.
David Pursehouse58b58de2013-05-20 19:11:58 +0900492
David Pursehoused7b0cb82013-08-14 11:49:22 +0900493* Retry counts are added to replication task names, so they can be seen in the
494output of the `show-queue` command.
495
496* The `remoteNameStyle` option can be set to `basenameOnly` to replicate projects
497using only the basename on the target server.
498
499* The `startReplication` global capability is now provided by the plugin.
500
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900501* Pushes to each destination URI are serialized.
502+
503Scheduling a retry to avoid collision with an in-flight push is differentiated
504from a retry due to a transport error. In the case of collision avoidance, the
505job is rescheduled according to the replication delay, rather than the retry
506delay.
507
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900508
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700509=== ssh
David Pursehouse58b58de2013-05-20 19:11:58 +0900510
511
512* The `commit-msg` hook installation command is now
David Pursehouse2e8b5822013-10-17 15:54:24 +0900513link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-gerrit.html#gerrit.installCommitMsgHookCommand[
David Pursehouse58b58de2013-05-20 19:11:58 +0900514configurable].
515
David Pursehouse0c62df92013-10-17 14:11:48 +0900516* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-ls-members.html[
David Pursehouse58b58de2013-05-20 19:11:58 +0900517New `ls-members` command].
518
David Pursehouse0c62df92013-10-17 14:11:48 +0900519* link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-set-members.html[
David Pursehouse2e3383f2013-07-08 10:50:26 +0900520New `set-members` command].
David Pursehouse621c2122013-06-19 09:30:16 +0900521+
522New command to manipulate group membership. Members can be added or removed
523and groups can be included or excluded in one specific group or number of groups.
524
David Pursehouse73907be2013-08-08 15:18:55 +0900525* The full commit message is now included in the data sent by the
David Pursehouse0c62df92013-10-17 14:11:48 +0900526link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-stream-events.html[
David Pursehouse73907be2013-08-08 15:18:55 +0900527`stream-events` command].
528
David Pursehouse0c62df92013-10-17 14:11:48 +0900529* The link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-show-queue.html[
David Pursehoused7b0cb82013-08-14 11:49:22 +0900530`show-queue` command] now shows the time that a task was added to the queue.
531
David Pursehouse737f3f52013-11-28 10:15:12 +0900532* The deprecated `approve` alias of the `review` command is removed.
533
534* The 'CHANGEID,PATCHSET' format for specifying a patch set in the `review` command
535is no longer considered to be a 'legacy' feature that will be removed in future.
David Pursehouse58b58de2013-05-20 19:11:58 +0900536
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700537=== Daemon
David Pursehouse7f47d262013-06-04 10:04:59 +0900538
539
540* Add `--init` option to Daemon to initialize site on daemon start.
541+
542The `--init` option will also upgrade an already existing site and is processed in
543non-interactive (batch) mode.
544
545
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700546== Bug Fixes
David Pursehouse58b58de2013-05-20 19:11:58 +0900547
548
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700549=== General
David Pursehouse73907be2013-08-08 15:18:55 +0900550
551
552* Use the parent change on the same branch for rebases.
553+
554Since there can be multiple changes with the same commit on different branches,
555use the parent change on the same branch during rebase.
556
David Pursehoused5c50f12013-08-21 11:36:09 +0900557* link:https://code.google.com/p/gerrit/issues/detail?id=600[Issue 600]:
558Fix change stuck in SUBMITTED state but actually merged.
559
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900560* link:https://code.google.com/p/gerrit/issues/detail?id=1699[Issue 1699]:
561Fix handling of projects with trailing ".git" suffix.
562
563* Limit retrying of submitted changes to 12 hours.
564
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900565* Don't allow project owners to delete branches if force push is blocked.
566
David Pursehousedfe9b0d2013-11-25 10:25:39 +0900567* Allow usernames to begin with digit.
568
David Pursehouse6a02eb72013-12-10 12:19:39 +0900569* Verify access to source ref during add branch operation.
570+
571Previously Gerrit didn't check access to source ref during add branch
572operation. Because of that users could create a branch from any known
573commit SHA1, even when they didn't have access to that commit.
574
575* Fix Gerrit API sources JAR contents.
576+
577The gerrit-extension-api-X.Y-all-sources.jar did not actually contain any
578sources.
579
580* Generate javadoc for Gerrit Extension and Plugin APIs.
581
582* link:https://code.google.com/p/gerrit/issues/detail?id=2244[Issue 2244]:
583Update patch status before skipping duplicate emails.
584
585* link:https://code.google.com/p/gerrit/issues/detail?id=1640[Issue 1640]:
586Catch missing LDAP accounts in group membership.
587
588* Use `rev-parse` to find gitdir when generating commit-msg hook hint.
589
590* Performance Fix: Minimize number of advertisedHaves.
591+
592By filtering the refs before the objectIds are added to advertisedHaves,
593lots of time can be saved when pushing to complex Gits.
594
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900595
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700596=== Configuration
David Pursehouse87c69a02013-07-16 14:40:24 +0900597
598
599* Do not persist default project state in `project.config`.
600
David Pursehouse1ff91c02015-05-19 15:05:26 +0900601* Honor the `gerrit.canonicalWebUrl` setting when opening the browser after init.
David Pursehouse87c69a02013-07-16 14:40:24 +0900602
603* Fix 'query disabled' error when Query Limit is set.
604
David Pursehouse73907be2013-08-08 15:18:55 +0900605* Honor the `gerrit.createChangeId` setting from the git config in the
David Pursehouse3cf6c0e2014-02-18 18:57:15 +0900606link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-hook-commit-msg.html[
David Pursehouse73907be2013-08-08 15:18:55 +0900607`commit-msg` hook].
608
David Pursehoused7b0cb82013-08-14 11:49:22 +0900609* link:https://code.google.com/p/gerrit/issues/detail?id=2045[Issue 2045]:
610Define user scope when parsing server config.
611
David Pursehoused5c50f12013-08-21 11:36:09 +0900612* link:https://code.google.com/p/gerrit/issues/detail?id=1990[Issue 1990]:
613Support optional Certificate Revocation List (CRL) with `CLIENT_SSL_CERT_LDAP`.
614
David Pursehoused0c8e372013-10-10 10:14:18 +0900615* Do not override error and gc logging configuration provided by the
616`-Dlog4j.configuration` parameter.
617
David Pursehouse6a02eb72013-12-10 12:19:39 +0900618* Fix JdbcSQLException when numbers are read from cache.
619
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700620=== Web UI
David Pursehouse58b58de2013-05-20 19:11:58 +0900621
622
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700623==== Global
David Pursehouse61927b72013-06-27 16:06:51 +0900624
625
626* link:https://code.google.com/p/gerrit/issues/detail?id=1574[Issue 1574]:
627Correctly highlight matches of text in escaped HTML entities in suggestion results.
628
David Pursehouse2e3383f2013-07-08 10:50:26 +0900629* link:https://code.google.com/p/gerrit/issues/detail?id=1996[Issue 1996]:
630The "Keyboard Shortcuts" help popup can be closed by pressing the Escape key.
631
David Pursehouse73907be2013-08-08 15:18:55 +0900632* link:https://code.google.com/p/gerrit/issues/detail?id=2013[Issue 2013]:
633Correctly populate the list of watched changes when watching more than one project.
David Pursehouse61927b72013-06-27 16:06:51 +0900634
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900635* Display "Working..." when header is hidden.
636
David Pursehouse6a02eb72013-12-10 12:19:39 +0900637* link:https://code.google.com/p/gerrit/issues/detail?id=2125[Issue 2125]:
638Correctly shows '-1' instead of '1' for label score.
639+
640If a user voted '-1', and then another user voted '+1' for a label, the
641label was shown as a red '1' in the change list instead of red '-1'.
642
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700643==== Change Screens
David Pursehouse61927b72013-06-27 16:06:51 +0900644
645
David Pursehouse58b58de2013-05-20 19:11:58 +0900646* Default review comment visibility is changed to expand all recent.
647+
648By default all comments within the last week are expanded, rather than
649only the most recent.
650
David Pursehouse7f47d262013-06-04 10:04:59 +0900651* link:https://code.google.com/p/gerrit/issues/detail?id=1814[Issue 1814]:
652Sort labels alphabetically by name in the approval table.
653
David Pursehoused0c8e372013-10-10 10:14:18 +0900654* Don't add "This patchset was cherry picked to ..." for the same change.
655+
656If a patchset is cherry-picked to the same destination branch and
657ends up on the same change, it does not make sense to add the "This
658patchset was cherry picked to change ..." message.
659+
660In this case, it makes more sense for the message to say "Uploaded
661patch set N" instead.
662
David Pursehouse6a02eb72013-12-10 12:19:39 +0900663* Make links appear with consistent colors.
664
665* Prevent duplicate permitted_labels from being shown in labels list.
666
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700667==== Diff Screens
David Pursehouse6a02eb72013-12-10 12:19:39 +0900668
669
670* link:https://code.google.com/p/gerrit/issues/detail?id=1233[Issue 1233]:
671Prevent expansion when whole file isn't loaded.
672
673* link:https://code.google.com/p/gerrit/issues/detail?id=2122[Issue 2122]:
674Show review comments for unchanged files.
675+
676When comparing patch sets and some comment was put in one side,
677that comment was not shown if there was no code changed between
678the two patch sets
679
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700680==== Project Screens
David Pursehouse61927b72013-06-27 16:06:51 +0900681
682
683* Only enable the delete branch button when branches are selected.
684
685* Disable the delete branch button while branch deletion requests are
686still being processed.
687
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700688==== User Profile Screens
David Pursehouse61927b72013-06-27 16:06:51 +0900689
690
691* The preferred email address field is shown as empty if the user has no
692preferred email address.
693
David Pursehouse58b58de2013-05-20 19:11:58 +0900694
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700695=== REST API
David Pursehouse58b58de2013-05-20 19:11:58 +0900696
697
David Pursehouse7f47d262013-06-04 10:04:59 +0900698* Support raw input also in POST requests.
699
David Pursehouse58b58de2013-05-20 19:11:58 +0900700* Show granted date for labels/all when using `/changes/`.
701
702* Return all revisions when `o=ALL_REVISIONS` is set on `/changes/`.
703
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700704=== ssh
David Pursehouse58b58de2013-05-20 19:11:58 +0900705
706
David Pursehouse73907be2013-08-08 15:18:55 +0900707* The `--force-message` option is removed from the
David Pursehouse0c62df92013-10-17 14:11:48 +0900708The link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-review.html[
David Pursehouse73907be2013-08-08 15:18:55 +0900709`review` command].
David Pursehouse58b58de2013-05-20 19:11:58 +0900710
711* link:https://code.google.com/p/gerrit/issues/detail?id=1908[Issue 1908]:
712Provide more informative error messages when rejecting updates.
713
David Pursehouse4143f952013-07-05 13:57:53 +0900714* Remove the limit in the query of patch sets by revision.
715
David Pursehouse73907be2013-08-08 15:18:55 +0900716* Add `isDraft` in the `patchSet` attribute of `stream-events` data.
David Pursehouse2e3383f2013-07-08 10:50:26 +0900717+
718This allows consumers of the event stream to determine whether or not
719the event is related to a draft patch set.
720
David Pursehouse73907be2013-08-08 15:18:55 +0900721* Normalize the case of review labels submitted via the
David Pursehouse0c62df92013-10-17 14:11:48 +0900722The link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/cmd-review.html[
David Pursehouse73907be2013-08-08 15:18:55 +0900723`review` command].
724
David Pursehoused7b0cb82013-08-14 11:49:22 +0900725* The `@CommandMetaData(descr)` annotation is deprecated in favor of `@CommandMetaData(description)`.
726
David Pursehouse6e2dcc92013-09-18 09:17:33 +0900727* Improve the error message when rejecting upload for review to a read-only project.
728
David Pursehouse2e3383f2013-07-08 10:50:26 +0900729
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700730=== Plugins
David Pursehouse67c07102013-09-24 09:55:23 +0900731
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700732==== Global
David Pursehoused0c8e372013-10-10 10:14:18 +0900733
David Pursehouse67c07102013-09-24 09:55:23 +0900734* Better error message when a Javascript plugin cannot be loaded.
735
David Pursehoused0c8e372013-10-10 10:14:18 +0900736* Plugin documentation links are opened in a new tab.
737
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900738* The GitReferenceUpdatedListener.Event API is simplified.
739+
740The Event exposed the getUpdates method which implied that one Event
741could contain updates of more than one reference. However, this feature
742was never used.
743+
744The API is simplified in the sense that one Event now corresponds to
745one ref update only.
746
David Pursehouse6a02eb72013-12-10 12:19:39 +0900747* Make plugin servlet's context path authorization aware.
748
David Pursehoused0c8e372013-10-10 10:14:18 +0900749
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700750==== Review Notes
David Pursehoused0c8e372013-10-10 10:14:18 +0900751
752* Do not try to create review notes for ref deletion events.
753
754* Fix committing the notes from the export command.
755
756* link:https://code.google.com/p/gerrit/issues/detail?id=2087[Issue 2087]:
757Fix note creation when the same commit exists in another Git repository.
758
759* Improve the export command performance.
760
761* Create review note also when newObjectId already present in another branch.
762
David Pursehouse6a02eb72013-12-10 12:19:39 +0900763* Correct documentation of the export command.
764
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700765=== Emails
David Pursehouse87c69a02013-07-16 14:40:24 +0900766
767* Email notifications are sent for new changes created via actions in the
768Web UI such as cherry-picking or reverting a change.
769
770
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700771=== Tools
David Pursehouse58b58de2013-05-20 19:11:58 +0900772
773
774* git-exproll.sh: return non-zero on errors
775
David Pursehouse58b58de2013-05-20 19:11:58 +0900776
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700777== Documentation
David Pursehouse58b58de2013-05-20 19:11:58 +0900778
779
David Pursehouse0c62df92013-10-17 14:11:48 +0900780* The link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/index.html[
David Pursehouse58b58de2013-05-20 19:11:58 +0900781documentation index page] is rewritten in a hierarchical structure.
782
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900783* Documentation of
David Pursehouse0c62df92013-10-17 14:11:48 +0900784link:https://gerrit-documentation.storage.googleapis.com/Documentation/2.8/config-project-config.txt[
David Pursehouse2e99e0f2013-10-17 10:05:39 +0900785project configuration] is added.
786
David Pursehouse61927b72013-06-27 16:06:51 +0900787* Various spelling mistakes are corrected in the documentation and previous
788release notes.
789
David Pursehouse24b063b2013-12-10 13:45:39 +0900790* link:https://code.google.com/p/gerrit/issues/detail?id=2144[Issue 2144]:
791Documentation of the query operator is fixed.
792
David Ostrovsky5116a4f2013-10-13 08:45:07 +0200793
Yuxuan 'fishy' Wang4f5ad9d2016-05-03 16:18:58 -0700794== Upgrades
David Ostrovsky5116a4f2013-10-13 08:45:07 +0200795
David Ostrovsky70f660b2013-11-04 05:55:38 +0100796* Update JGit to 3.1.0.201310021548-r
David Ostrovsky5116a4f2013-10-13 08:45:07 +0200797* Update gwtorm to 1.7
798* Update guice to 4.0-beta
799* Update guava to 15.0
800* Update H2 to 1.3.173
801* Update bouncycastle to 1.44
David Ostrovskyccd5ab32013-11-09 07:51:41 +0100802* Update Apache Mina to 2.0.7
David Pursehouse6a02eb72013-12-10 12:19:39 +0900803* link:https://code.google.com/p/gerrit/issues/detail?id=2232[Issue 2232]:
804Update Apache SSHD to 0.9.0.201311081
David Ostrovsky5116a4f2013-10-13 08:45:07 +0200805* asciidoctor 0.1.4 is now required to build the documentation
806* jsr305 library was removed
David Pursehouse6a02eb72013-12-10 12:19:39 +0900807* link:https://code.google.com/p/gerrit/issues/detail?id=2232[Issue 2232]:
808Update Jsch to 1.5.0