Gerrit 2.0.20 is now available in the usual location:

Schema Change

A prior bug (GERRIT-262) permitted some invalid data to enter into some databases. Administrators should consider running the following update statement as part of their upgrade to .20 to make any comments which were created with this bug visible:

  UPDATE patch_comments SET line_nbr = 1 WHERE line_nbr < 1;

Unfortunately the correct position of the comment has been lost, and the statement above will simply position them on the first line of the file. Fortunately the lost comments were only on the wrong side of an insertion or deletion, and are generally rare. (On my servers only 0.33% of the comments were created like this.)

New Features

  • New ssh command approve

    Patch sets can now be approved remotely via SSH. For more details on this new feature please see the user documentation: http://gerrit.googlecode.com/svn/documentation/2.0/cmd-approve.html

  • Support changing Google Account identity strings

    For various reasons, including but not being limited to server host name changes, the Google Accounts OpenID provider service may change the identity string it returns to users. By setting auth.allowGoogleAccountUpgrade = true in the configuration file administrators may permit automatically updating an existing account with a new identity by matching on the email address.

Bug Fixes

  • GERRIT-262 Disallow creating comments on line 0

    Users were able to create comments in dead regions of a file. That is, if a region was deleted, and thus the left hand side showed red deletion of lines, and the right hand side showed a grey background of nothing, users were able to place a comment on the right hand side in the nothing area. Since this line did not actually exist, the comment was positioned on line 0 of the file. Because line 0 does not exist (lines are numbered 1..n), these comments become hidden and could not be seen, but showed up in the "X comments" counter seen on the Patch History or in the listing of files in a patch set. The UI and RPC layer was fixed to prevent comments on line 0, but existing comments need to be manually moved to a real line. See above for the suggested SQL UPDATE command.

  • Make ID column same font size as rest of table

    The font size of the ID column was too small, it is now the same size as the other columns in the table.

  • Fix ALTER INDEX in upgrade015_016_part1_mysql

  • GERRIT-269 Fix bad change_key creation in upgrade016_017_mysql

    MySQL schema upgrade scripts had a few bugs, fixed.

Other Changes

  • Restart 2.0.20

  • Update MINA SSHD to 0.2.0 release

  • Update args4j to snapshot built from current CVS

  • Cleanup newCmdLineParser method in BaseCommand

  • Remove unnecessary throws IOException in ApproveCommand

  • Cleanup formatting in ApproveCommand

  • Cleanup assumption of Branch.NameKey parent is Project…

  • Fix deprecated constructor warning in PatchSetIdHandler

  • Don’t log command line caused failures in flush-caches

  • Use Guice to create custom arg4j OptionHandler instanc…

  • gerrit approve: Allow --code-review=+2

  • gerrit approve: Cleanup invalid patch set error handli…

  • gerrit approve: Cleanup error reporting for missing ob…

  • Parse project names through custom args4j OptionHandler

  • git receive-pack: Use args4j to parse --reviewer and -…

  • Move args4j handlers to their own package

  • gerrit approve: Cleanup option parsing to reduce unnec…

  • gerrit approve: accept commit SHA-1s for approval too

  • gerrit approve: Allow approving multiple commits at on…

  • gerrit approve: Add user documentation

  • Remove unused imports from PatchSetDetailServiceImpl

  • Only enable auth.allowGoogleAccountUpgrade when auth.t…

  • Rename loginType to authType

  • gerrit 2.0.20