Gerrit 2.0.24 is now available in the usual location:

Schema Change

WARNING: This version contains a schema change (since 2.0.21)

Apply the database specific schema script:

  java -jar gerrit.war --cat sql/upgrade018_019_postgres.sql | psql reviewdb
  java -jar gerrit.war --cat sql/upgrade018_019_mysql.sql    | mysql reviewdb

LDAP Change

LDAP groups are now bound via their full distinguished name, and not by their common name. Sites using LDAP groups will need to have the site administrator visit every LDAP backed group through the web UI (Admin > Groups), search for, and select the underlying LDAP group from the directory server.

This change was made to remove some of the guesswork when it comes to setting up an LDAP enabled group, as well as to permit creating new LDAP enabled groups completely from the web UI. It also removes an ambiguous case when different parts of the same directory space create identically named groups.

New Features

  • Check if the user has permission to upload changes

    The new READ +2 permission is required to upload a change to a project, while READ +1 permits read but denies uploading a change. The schema upgrade script automatically converts READ +1 to +2.

  • Use LDAP DN to match LDAP group to Gerrit group

  • issue 297 Allow admins to search for and bind to LDAP groups

    As noted above, LDAP groups now use the full DN to match to their Gerrit database counterpart, rather than just the common name. Administrators may now create Gerrit groups and attach them to any LDAP group, by performing a query on the LDAP directory for matching groups and selecting a result.

  • issue 301 Try to prevent forgotten git add during replace

    Users are now stopped from performing a replace of a patch set if they have not made a meaningful change (modify a file, or modify the commit message). If only the commit message was modified, a warning is printed, but the replace still occurs.

  • issue 126 Link to our issue tracker in the page footer

    The footer now includes a link to the Gerrit project’s issue tracker, so end-users can more easily report bugs or feature requests back to the developers.

  • issue 300 Support SMTP over SSL/TLS

    Encrypted SMTP is now supported natively within Gerrit, see sendemail.smtpEncryption

Bug Fixes

  • issue 290 Fix invalid drop index in upgrade017_018_mysql

    Minor syntax error in SQL script.

  • Fixed ActiveDirectory LDAP group support. Allows recu…

  • issue 307 Set proper LDAP defaults for Active Directory

    ActiveDirectory is now better supported out of the box. Defaults for the LDAP configuration settings are automatically guessed at startup based upon the type of server configured in ldap.server. Recursive groups (group which is a member of a group) is also now supported when using an ActiveDirectory server. Other LDAP servers (e.g. OpenLDAP) probably don’t support this.

  • "250-AUTH " will be returned if AUTH response does …

  • Fix: Authentication fail when authTypes is empty

  • Fix a typo that broke the gerrit build

    Outgoing SMTP sometimes failed to authenticate against a SMTP server due to slightly incorrect handling of the AUTH advertisement.

  • Correct scp commands in documentation to include -p

    Our documentation of how to copy the commit-msg hook down via scp did not include the -p option, which is necessary to make the client preserve the executable flag on the hook script.

  • issue 291 Suggest latin1 charset for MySQL databases

    Documentation was updated to encourage using latin1 for MySQL as MySQL fails with key too long errors during schema creation when the database is using the UTF-8 character set.

  • issue 294 Fix OpenID self registration dialog

    OpenID Register hyperlink was broken due to the dialog having no content added to it before display. This bug was fixed by using the proper OpenID login dialog.

  • issue 309 Clear message on publish comments screen after submit…

    The publish comments button preserved your last comment, making it easy for a user to accidentally publish the same message on the same change twice. The message is now cleared after it has been successfully sent.

  • issue 299 Remove the branches table from the database

  • Display current branch SHA-1 in Branches tab

  • issue 299 Display not-yet-born HEAD branch in Branches tab

    The not-yet-born branch in an empty project is now shown in the Branches tab. (This is based on the value of the HEAD symbolic reference within the project’s Git repository.) The branches table was removed from the database. We now fully rely upon the Git repository to determine which branches exist and thus permit changes to be uploaded to.

  • issue 296 Make help more friendly over SSH

    ssh -p 29418 localhost help is now more user friendly.

  • Don’t request registration if the account exists

  • issue 38 Fix OpenID delegate authentication

    OpenID authentication was sometimes asking providers for registation data when we already had it on hand, fixed. OpenID delegate identities were being stored rather than claimed identities when the claimed identity is just a delegate to the delegate provider. We now store both in the account.

Fixes in 2.0.24.1

  • Fix unused import in OpenIdServiceImpl

  • dev-readme: Fix formatting of initdb command

    Minor documentation/code fixes with no impact on execution.

  • Fix LDAP account lookup when user not in group

    Fixes a NullPointerException when a user is not in any group and the underlying LDAP server is ActiveDirectory.

  • issue 315 Correct sendemail.smtppass

    Fixes sendemail configuration to use the documented smtppass variable and not the undocumented smtpuserpass variable.

Fixes in 2.0.24.2

  • Fix CreateSchema to create Administrators group

  • Fix CreateSchema to set type of Registered Users group

  • Default AccountGroup instances to type INTERNAL

  • Document the various AccountGroup.Type states better

    CreateSchema was broken in 2.0.24 and 2.0.24.1 due to the default groups being misconfigured during insertion. Fixed.

  • Grant anonymous uses READ +1, registered users READ +…

    Default permissions were a bit confusing, there is no point in an anonymous user having READ +2.

  • Use the H2 database for unit tests

  • Unit test for SystemConfigProvider and CreateSchema

    Added unit tests to validate CreateSchema works properly, so we don’t have a repeat of breakage here.

Other Changes

  • Start 2.0.24 development

  • Merge change Ie16b8ca2

  • Switch to the new org.eclipse.jgit package

  • Allow default of $JETTY_HOME in to_jetty.sh

  • LdapRealm: Remove unused throws declaration

  • LdapRealm: Fix missing type parameter warnings

  • Remove dead exists method from AccountManager

  • Document ldap.groupPattern

  • AuthSMTPClient: Fix formatting errors

  • style fixup: remote trailing whitespace from our sour…

  • show-caches: Correct example output in documentation

  • Move server programs section under User Guide

  • Revert "Remove dead exists method from AccountManager"

  • Ensure prior commit body is parsed before comparing m…

  • Gerrit 2.0.24