Sasa Zivkov | d39763d | 2012-04-23 15:52:14 +0200 | [diff] [blame] | 1 | Release notes for Gerrit 2.4 |
| 2 | ============================ |
| 3 | |
| 4 | Gerrit 2.4 is now available: |
| 5 | |
| 6 | link:http://code.google.com/p/gerrit/downloads/detail?name=gerrit-2.4.war[http://code.google.com/p/gerrit/downloads/detail?name=gerrit-2.4.war] |
| 7 | |
| 8 | Schema Change |
| 9 | ------------- |
| 10 | *WARNING:* This release contains schema changes. To upgrade: |
| 11 | ---- |
| 12 | java -jar gerrit.war init -d site_path |
| 13 | ---- |
| 14 | |
| 15 | *WARNING:* Upgrading to 2.4.x requires the server be first upgraded to 2.1.7 (or |
| 16 | a later 2.1.x version), and then to 2.4.x. If you are upgrading from 2.2.x.x or |
| 17 | newer, you may ignore this warning and upgrade directly to 2.4.x. |
| 18 | |
| 19 | New Features |
| 20 | ------------ |
| 21 | |
| 22 | Security |
| 23 | ~~~~~~~~ |
| 24 | |
| 25 | * Restrict visibility to arbitrary user dashboards |
| 26 | + |
| 27 | Administrators have some expectation when using the 'suggest.accounts' |
| 28 | visibility restriction feature that users cannot get the names or |
| 29 | email addresses for arbitrary accounts. In fact, because account IDs |
| 30 | are sequential, it would be easy for an adversary to get personal |
| 31 | information of all users on the server by requesting every user's |
| 32 | dashboard. |
| 33 | + |
| 34 | This includes changing the meaning of the 'suggest.accounts' config |
| 35 | option to be a boolean indicating whether account suggestion should |
| 36 | happen at all, which is now orthogonal to the account visibility |
| 37 | restriction policy. We still recognize the old values for |
| 38 | 'suggest.accounts', with the slight behavior change that |
| 39 | 'suggest.accounts=OFF' now means that users cannot access the dashboards |
| 40 | of any other users. Administrators who do not want this behavior can |
| 41 | update their configuration. |
| 42 | |
| 43 | * Indicate that 'not found' may actually be a permission issue |
| 44 | |
| 45 | Web |
| 46 | ~~~ |
| 47 | |
| 48 | * Add user preference to mark files reviewed automatically or manually |
| 49 | + |
| 50 | Add a checkbox to the preferences header on the diff |
| 51 | screen which allows a user to specify whether they |
| 52 | want manual-reviewing enabled or disabled. Previously, |
| 53 | every file was auto marked reviewed when a user first |
| 54 | displayed it. The new manual mode prevents this auto |
| 55 | marking and only marks a file reviewed when the user |
| 56 | explicitly clicks on the reviewed checkbox. |
| 57 | |
| 58 | * Use 'Auto Merge' for merge commit's base comparison |
| 59 | + |
| 60 | When reviewing a merge commit, the old wording in the version history dropdown |
| 61 | of 'Base' doesn't really match Gerrit's behavior. Updating this to use |
| 62 | 'Auto Merge' as suggested by Shawn Pearce on IRC. |
| 63 | |
| 64 | * issue 1035 Add rebase button to the change screen |
| 65 | + |
| 66 | This change adds a rebase button along with the rest of |
| 67 | the action buttons in the change page. When pressing the |
| 68 | button, the most recent patch set will be rebased onto |
| 69 | the tip of the destination branch or the latest patchset |
| 70 | of the change we depend upon. A new patch set containing |
| 71 | the rebased commit will be produced and added to the |
| 72 | change. |
Sasa Zivkov | 63a0fcc | 2012-05-23 13:10:24 +0200 | [diff] [blame] | 73 | + |
| 74 | Rebasing of a change in web UI is restricted to change owner, submitter or |
| 75 | those with the (new) 'rebase' permission. |
| 76 | |
| 77 | * Add a new permission 'rebase' to permit rebasing changes in the web UI |
Sasa Zivkov | d39763d | 2012-04-23 15:52:14 +0200 | [diff] [blame] | 78 | |
| 79 | * Make a user's dashboard visible if any of the changes are visible to the |
| 80 | current user. |
| 81 | |
| 82 | * Change 'Loading ...' to say 'Working ...' as, often, there is more going on |
| 83 | than just loading a response. |
| 84 | |
| 85 | Performance |
| 86 | ~~~~~~~~~~~ |
| 87 | |
| 88 | * Asynchronously send email so it does not block the UI |
| 89 | * Optimize queries for open/merged changes by project + branch |
| 90 | |
| 91 | Git |
| 92 | ~~~ |
| 93 | |
| 94 | * Implement a multi-sub-task progress monitor for ReceiveCommits |
| 95 | |
| 96 | * Close corresponding change when pushing to 'refs/heads/*' |
| 97 | + |
| 98 | Gerrit would not close the open changes with matching change-ids, |
| 99 | when the user pushes commits directly to 'refs/heads/*'. |
| 100 | + |
| 101 | This issue could be triggered for two reasons: |
| 102 | |
| 103 | . It is triggered when Gerrit detects no changes between the |
| 104 | pushed commits and the current patchset on the open changes. This |
| 105 | patch make sure that the matching open change is always closed when |
| 106 | pushing to 'refs/heads/*', even if no visible changes is detected. |
| 107 | |
| 108 | . The same commit exists on another branch than the destination |
| 109 | branch. This could trick gerrit into just "re-closing" the wrong |
| 110 | change. |
| 111 | |
| 112 | * Run ReceiveCommits in a shared thread pool |
| 113 | + |
| 114 | Since the work to ReceiveCommits may take a long, potentially unbounded |
| 115 | amount of time, we would like to have it run in the background so it |
| 116 | can be monitored for timeouts and cancelled, and have stalls reported |
| 117 | to the user from the main thread. |
| 118 | |
| 119 | Search |
| 120 | ~~~~~~ |
| 121 | |
| 122 | * Add the '--dependencies' option to the 'query' command. |
| 123 | + |
| 124 | This option includes information about patch sets which depend on, or are |
| 125 | needed by, each patch set. |
| 126 | |
| 127 | * Branch Operator: Support full branch names |
| 128 | + |
| 129 | The search operator for branches required the provided value to be the |
| 130 | short branch name that is shown in the web interface (without the |
| 131 | 'refs/heads/' prefix). Change the branch operator so that it also |
| 132 | supports full branch names as value. |
| 133 | + |
David Pursehouse | 4d7ac77 | 2013-06-25 17:14:30 +0900 | [diff] [blame] | 134 | It is intuitive that searching with 'branch:master' and searching with |
Sasa Zivkov | d39763d | 2012-04-23 15:52:14 +0200 | [diff] [blame] | 135 | 'branch:refs/for/master' deliver the same result. So far |
| 136 | 'branch:refs/for/master' was the same as searching with |
| 137 | 'refs:refs/heads/refs/heads/master' which is unexpected for most users. |
| 138 | |
| 139 | * Add comment inclusion via '&comments=true' over HTTP |
| 140 | + |
| 141 | With this change, we can fetch the comments on a patchset by sending a |
| 142 | request to 'https://site/query?comments=true' |
| 143 | |
| 144 | Access Rights |
| 145 | ~~~~~~~~~~~~~ |
| 146 | |
| 147 | * Added the 'emailReviewers' as a global capability. |
| 148 | + |
| 149 | This replaces the 'emailOnlyAuthors' flag of account groups. |
| 150 | |
| 151 | Dev |
| 152 | ~~~ |
| 153 | |
| 154 | * issue 1272 Add scripts to create release notes from git log |
| 155 | + |
| 156 | These script generates a list of commits from git log between two given commits |
David Pursehouse | 4d7ac77 | 2013-06-25 17:14:30 +0900 | [diff] [blame] | 157 | and outputs the asciidoc format containing list of commits subject and body. |
Sasa Zivkov | d39763d | 2012-04-23 15:52:14 +0200 | [diff] [blame] | 158 | |
| 159 | * Update URL for m2eclipse |
| 160 | + |
| 161 | The project is now under the Eclipse Foundation umbrella. |
| 162 | |
| 163 | * Add missing ignore for m2e prefs in gerrit-ehcache |
| 164 | |
| 165 | * Add '--issues' and '--issue_numbers' options to the 'gitlog2asciidoc.py' |
| 166 | |
| 167 | Miscellaneous |
| 168 | ~~~~~~~~~~~~~ |
| 169 | |
| 170 | * Remove perl from 'commit-msg' hook |
| 171 | + |
| 172 | Removing perl from the commit-msg hook reduces the dependencies |
| 173 | gerrit imposes on its users. |
| 174 | |
| 175 | * updating contrib 'trivial_rebase.py' for 2.2.2.1 |
| 176 | |
| 177 | Upgrades |
| 178 | -------- |
| 179 | |
| 180 | * Updated to Guice 3.0. |
| 181 | * Updated to gwtorm 1.4. |
| 182 | * Update JGit to 1.3.0.201202151440-r.75-gff13648 |
| 183 | * Update to gwtjsonrpc 1.3 |
| 184 | + |
| 185 | The change also shrinks the built WAR from 38M to 23M |
| 186 | by excluding the now unnecessary GWT server code. |
| 187 | |
| 188 | Bug Fixes |
| 189 | --------- |
| 190 | |
| 191 | * issue 904 Users who starred a change should receive all the emails about a change. |
| 192 | |
| 193 | * Fix: 'Diff All Side-by-Side' and 'Diff All Unified' buttons |
| 194 | + |
| 195 | When pressing the 'Diff All Side-by-Side' or |
| 196 | 'Diff All Unified' button on the change screen, the |
| 197 | opened browser windows/tabs shows diffs using "Base" |
| 198 | as old version and the latest one as active patch set, |
| 199 | regardless what has been set using the |
| 200 | "Old Version History:" drop down menu and what is |
| 201 | currently active patch set. |
| 202 | + |
| 203 | Gerrit doesn't remember the base patch set in the URL, |
| 204 | making it impossible to copy-and-paste the URL to |
| 205 | co-workers to show them the same diff a user is |
| 206 | looking at. |
| 207 | + |
| 208 | This change fixes this behavior to make sure that |
| 209 | the opened new browser windows shows diffs using the |
| 210 | correct old patch set and active patch set. |
| 211 | |
| 212 | * Fix NPEs looking up groups by UUID in GroupCache |
| 213 | |
| 214 | * Fix default 'receive.timeout' |
| 215 | + |
| 216 | This should be in milliseconds, not seconds. Set the default to be |
| 217 | 2 minutes in milliseconds and update the documentation to reflect |
| 218 | that milliseconds are the default unit of time used here. |
| 219 | |
| 220 | * Fix 'development_become_any_account' redirects |
| 221 | * issue 1299 Allow configuration of optional pattern for gitweb file history link |
| 222 | * Use servlet context path during logout |
| 223 | |
Sasa Zivkov | d35f3e8 | 2012-05-09 03:27:12 +0200 | [diff] [blame] | 224 | * issue 1353 Fix case check for project name so that symlinks work again |
Sasa Zivkov | c6ceefd | 2012-05-15 12:42:07 +0200 | [diff] [blame] | 225 | * Fix merging of access sections |
David Pursehouse | 4d7ac77 | 2013-06-25 17:14:30 +0900 | [diff] [blame] | 226 | * Fix inconsistent behavior when replicating refs/meta/config |
Sasa Zivkov | 3e8255e | 2012-05-22 16:56:31 +0200 | [diff] [blame] | 227 | * Fix duplicated results on status:open project:P branch:B |
Sasa Zivkov | d35f3e8 | 2012-05-09 03:27:12 +0200 | [diff] [blame] | 228 | |
Sasa Zivkov | d39763d | 2012-04-23 15:52:14 +0200 | [diff] [blame] | 229 | Documentation |
| 230 | ------------- |
| 231 | |
| 232 | Access Rights |
| 233 | ~~~~~~~~~~~~~ |
| 234 | * Capabilities introduced |
| 235 | * Kill and priority capabilities |
| 236 | * Administrate server capability |
| 237 | * Create account capability |
| 238 | * Create group and project capability |
| 239 | * Flush caches capability |
| 240 | * Capability replication and view caches |
| 241 | * Capability view conn. & queue |
| 242 | * Example roles introduced |
| 243 | * Developer example role |
| 244 | * CI system example role |
| 245 | * Integrator example role |
| 246 | * Project owner example role |
| 247 | * Administrator example role |
| 248 | |
| 249 | Miscellaneous |
| 250 | ~~~~~~~~~~~~~ |
| 251 | * User upload documentation: Replace changes |
| 252 | * Add visible-to-all flag in the documentation for cmd-create-group |
| 253 | * Add a contributing guideline for annotations |
| 254 | * Add missing header for suggest.accounts documentation |
| 255 | * Fix anchors for description of gitweb config parameters |
| 256 | * Add missing section name to config-gerrit documentation |
| 257 | * Fix documentation of ls-projects |