title: “Gerrit 3.0.0 Release” permalink: 3.0.html hide_sidebar: true hide_navtoggle: true toc: true

Download: 3.0.0

Documentation: 3.0.0

Release Highlights

  • Removal of GWT UI

    The GWT UI is removed and PolyGerrit is now the only UI.

  • Removal of ReviewDb

    The database backend for changes, accounts, groups and projects (“ReviewDb”) is removed and this metadata is now stored in git (“NoteDb”).

    A database is still needed for account patch reviews, which stores the ‘reviewed’ flag for files in a review per user. The default backend is H2, but MySQL, PostgreSQL and MariaDb are also supported. It is also possible for plugins to provide another backend by implementing the AccountPatchReviewStore interface.

  • New quota enforcer extension point.

  • Issue 4040: Support for signed push with GPG subkeys.

  • New core plugins: delete-project, gitiles, plugin-manager, and webhooks.

Important Notes

Schema Changes

This release contains schema changes. To upgrade:

  java -jar gerrit.war init -d site_path

Breaking Changes

  • Reverse DNS lookup is now disabled by default

    The gerrit.disableReverseDnsLookup option with default value false is replaced by gerrit.enableReverseDnsLookp also with default value false. This means that reverse DNS lookup is now disabled by default.

New Features

  • New quota enforcer extension point.

    Plugins may implement the QuotaEnforcer interface to enforce quotas.

  • Issue 4040: Support for signed push with GPG subkeys.

    It is now possible to use a GPG subkey when pusing commits with signed push.

  • Issue 6053: Support for searching on mobile devices.

  • Issue 8535: Support for plugin config entries in the PolyGerrit UI.

    Configuration entries defined by server-side plugins are now displayed in the UI.

  • New method to get UI top menus in the config API.

  • New core plugins.

    The delete-project, gitiles, plugin-manager, and webhooks plugins are now core plugins bundled with the release, and can be installed during site initialization.

Dependency Updates

  • Add dependency on resemblejs

  • Remove dependency on apache derby

  • Remove dependency on gwtjsonrpc

  • Remove dependency on gwtorm

  • Remove dependency on postgresql

  • Upgrade asm to 7.0

  • Upgrade auto-value to 1.6.5

  • Upgrade codemirror-minified to 5.43.0

  • Upgrade commons-lang3 to 3.8.1

  • Upgrade gitiles-blame-cache and gitiles-servlet to 0.2-8

  • Upgrade guava to 27.0.1-jre

  • Upgrade guice to 4.2.2

  • Upgrade prolog-cafe to 1.4.4

  • Upgrade soy to 2019-03-11

  • Upgrade truth to 0.43

Native packaging

  • Upgrade the Docker/Ubuntu image to Ubuntu 18.04

  • Upgrade the Docker/CentOS image to CentOS 7.6.1810

  • RPM/Deb: Remove Gerrit service start upon package setup.

    Gerrit service is no longer started automatically after the package installation, but requires manual invocation of the /etc/init.d/gerrit start command, or the configuration of the service for auto-start and the reboot of the machine.

  • Docker: auto-init the Gerrit site during first start of the container.

    Simplify the configuration and management of Docker setups by automatically detecting if a $GERRIT_SITE/git/All-Projects.git exists and, if it doesn't, invoke the Gerrit init step in batch mode.