diff options
Diffstat (limited to 'ReleaseNotes/ReleaseNotes-2.1.txt')
-rw-r--r-- | ReleaseNotes/ReleaseNotes-2.1.txt | 371 |
1 files changed, 0 insertions, 371 deletions
diff --git a/ReleaseNotes/ReleaseNotes-2.1.txt b/ReleaseNotes/ReleaseNotes-2.1.txt deleted file mode 100644 index 28cc90d105..0000000000 --- a/ReleaseNotes/ReleaseNotes-2.1.txt +++ /dev/null @@ -1,371 +0,0 @@ -= Release notes for Gerrit 2.1 - -Gerrit 2.1 is now available in the usual location: - -link:https://www.gerritcodereview.com/download/index.html[https://www.gerritcodereview.com/download/index.html] - - -== New site_path Layout - -The layout of the `$site_path` directory has been changed in 2.1. -Configuration files are now stored within the `etc/` subdirectory -and will be automatically moved there by the init subcommand. - -== Upgrading From 2.0.x - - If the server is running a version older than 2.0.24, upgrade the - database schema to the current schema version of 19. Download - 'schema-upgrades003_019.zip' from the download area and run the - scripts by hand as listed in README until the server is caught up. - -Run init to convert the layout of $site_path: ----- - java -jar gerrit.war init -d $site_path ----- - -If there is a GerritServer.properties file handy, ensure it is in the -current working directory or inside of $site_path when running init. -If present, init will reuse this information rather than prompting -for it. If the file is not found, init will prompt for database -connection information. - -While moving the server's configuration files into the new -etc/ subdirectory, init will also move secret settings such as -sendemail.smtpPass and ldap.password out of gerrit.config into a -read-protected secure.config file. - -== New Daemon Mode - -Gerrit 2.1 and later embeds the Jetty servlet container, and -runs it automatically as part of `java -jar gerrit.war daemon`. -This is the preferred method of running Gerrit Code Review, and is -how sites like review.source.android.com are operating. - -To simplify management on UNIX systems an rc.d style startup script -is created in `$site_path/bin/gerrit.sh`. This script can be used -to start and stop the background daemon process. When started -from this script the daemon calls itself `GerritCodeReview` in ps, -but may still show up in top as `java`. - -Configuration of the daemon is handled by gerrit.config. For more -information see the 2.1 documentation. - -link:http://gerrit.googlecode.com/svn/documentation/2.1/index.html[http://gerrit.googlecode.com/svn/documentation/2.1/index.html] - - -== New Features - -* issue 19 Link to issue tracker systems from commits -+ -Hyperlinks from commit messages and any inline comments to -bug tracking systems can be enabled by configuring one or -more commentlink regular expressions in gerrit.config. - -* Git replication security -+ -Git replication can now be controlled on the sending side by -configuring one or more authGroups for a remote and granting -READ +1 access to only certain projects. - -* Better repo upload/git push throughput -+ -MINA SSHD was misconfiguring the host's TCP/IP stack, this -limited throughput of git push to under 16 KiB/s. Fixed. -Its such a huge improvement that its an important feature, -rather than a bug fix. :-) - -* issue 320 Queue SSH commands and ensure consistent throughput -+ -SSH commands are entered into a queue and executed in FIFO order -as processor capacity becomes available. The queue enables -the server to work on a finite number of commands at once and -ensures running commands complete in a timely fashion, no matter -how many concurrent connections are being established. -The queue allows sites to maintain consistent throughput without -thrashing, even as the number of requests increase beyond server -capacity. The change was made in anticipation of `repo sync` -learning how to fetch all projects at once, inducing a load of -over 200 concurrent commands per user/Android checkout. -Server administrative commands such as kill or gsql (below) bypass -the queue and are allowed to execute as soon as they are received. - -* kill: Support killing any queued task -+ -A new administrative kill command was introduced to terminate -any queued or running tasks. Unlike UNIX kill, a killed task -will continue until its next safe interruption point, which is -usually at the next network read or write. - -* issue 327 gsql: query tool on command line and SSH -+ -Gerrit supports an interactive SQL query tool for administrators. -The query tool is available over SSH as `gerrit gsql`, or locally -as `java -jar gerrit.war gsql`. The query tool is primarily -useful with H2 databases, where the database is only accessible -to the running Java process. - -* issue 202 Self contained daemon mode -* issue 328 daemon: Automatically log into $site_path/logs -* daemon: Automatically compress our log files -+ -As noted above, Jetty 7.0.1.v20091125 is now bundled, making new -site installation easier. Logs from daemon mode are written -out to the site's logs/ subdirectory. Logs are rotated and -compressed daily. - -* issue 330 init: Create a command to setup a new site -* issue 343 init: Create database indexes during schema creation -* Remove CreateSchema command -+ -The init command can be used to initialize a new site, or -as noted above, to upgrade an existing site to the current -software version. Since init now does the work of CreateSchema, -and everything else that used to be listed out as individual -steps in the installation guide, CreateSchema was deleted. - -* issue 325 Allow secure.config to overlay gerrit.config -* Configure database from gerrit.config -+ -Database connectivity is now configured out of gerrit.config -and secure.config, rather than GerritServer.properties. - -* Bundle PostgreSQL, H2, DBCP, MySQL, Bouncy Castle -+ -JDBC drivers for PostgreSQL, H2, and the Apache Commons DBCP -connection pool implementation are now bundled, reducing the -number of external dependencies that must be obtained before -getting a working installation. -The MySQL driver is automatically downloaded and verified by -init if required, as is the Bouncy Castle Crypto provider. -These JARs are not packaged in the standard distribution due to -export and/or license restrictions. - -* issue 183 Support invoking gitweb from within Gerrit -+ -The standard gitweb.cgi can now be automatically configured and -executed through Gerrit's servlet container, making it easier to -publish a repository for browsing on the web. -Project level access controls are honored when browsing through -this gitweb interface. - -* issue 105 Support OpenID when behind an HTTP proxy -* issue 323 Use JGit's http_proxy based initialization -+ -HTTP proxies are now supported for OpenID authentication, as -well as for init's optional external library download. - -* Add a Register link when using LDAP authentication -+ -When auth.type is LDAP the Register link in the top right corner -can point to an administrator defined URL. This external URL -might be as simple as a 'mailto:...' link, to help the user -request a new LDAP account from the directory administrators. - -* Switch remote JSON services to use JSON-RPC 2.0 -+ -The JSON-RPC interface now speaks the JSON-RPC 2.0 draft -specification, in addition to the prior JSON-RPC 1.1 -specification previously used. - -* issue 336 Update MINA SSHD to SVN 891122 -* issue 324 Update JGit to 0.5.1.51-g96b2e76 -* Update JUnit to 3.8.2 -* Update args4j to 2.0.16 -* Update slf4j-log4j12 to 1.5.8 -* Update Ehcache to 1.7.1 -* Update commons-pool to 1.5.4 -* Update H2 to 1.2.125 -* Update to gwtjsonrpc 1.2.0, gwtexpui 1.1.4 -+ -Most dependencies were updated to their current stable versions. - -== Bug Fixes - -* issue 259 Improve search hint to include owner:email -+ -The hint text in the search box in the upper right corner has -been improved to suggest owner:email and reviewer:email, as -these tags were not discoverable. - -* issue 335 daemon: Refuse to launch unless gerrit.config exists -+ -Gerrit now refuses to launch until the site path has been -properly initialized with init. This is true both in daemon -mode and also when deployed inside of any servlet container. - -* issue 152 Allow adding users who are missing a preferred email -+ -The user suggestion boxes now permit adding a user that has not -yet selected a preferred email address on their contact panel. - -* issue 319 Automatically set preferred email to first configured -+ -If a user has no email addresses, the first address they register -through the next OpenID login, LDAP login, or 'Register New Email' -feature will be automatically set as the preferred email address -for their account. - -* issue 356 Fix committer identity on cherry-pick -+ -The committer identity created when cherry-picking a change was -formatted incorrectly, it used the internal account identity. -Fixed to use the submitter's preferred email address only. - -* issue 345 Make "call11" readable in file content -+ -The prior font made the string "call11" (c-a-ell-ell-one-one) -impossible to read because the ell and one looked the same. -Fixed by changing to different fonts for the fixed width file -content display. - -* Automatically make first user account administrator -+ -To simplify installation, the first user to login to a brand -new site is added to the 'Administrators' group. This avoids -the need to update the database manually via SQL and restart -the daemon to have it be picked up. - -* Always trim Change-Id lines to handle whitespace -+ -Some users were adding trailing whitespace on a Change-Id line -by accident, causing Gerrit to not always honor it when uploading -a replacement patch. Fixed. - -* Fix duplicate branches in the branches panel -+ -The Branches tab under a project displayed the HEAD branch twice, -but every other branch once. Fixed. - -* Enforce all HTTP requests through SSL -+ -JSON-RPC requests are now required to be over SSL if the site -prefers to use SSL for communication. -Prior to 2.1 the JSON-RPC requests from the web UI were performed -over https:// if the web UI loaded over https://, but JSON-RPC -requests from other tools (e.g. a command line script) were -still allowed over plain text HTTP. - -* Work around NPE when patch list fails to compute -+ -Rather than return NullPointerException to the browser return -a "not found" error, as the source of the null pointer is the -underlying diff operation returned no results. - -* Fix stuck "Loading Gerrit Code Review ..." -+ -Many users have noticed that after about a week of server uptime -Gerrit no longer loads in their browser, until the server is -restarted. This was usually caused by Jetty unpacking the WAR -file contents to /tmp, and the system having a cron task that -deleted files more than a week old from /tmp. -Under the daemon command the WAR file contents are unpacked into -`$HOME/.gerritcodereview/tmp`, which should be isolated from -the host system's /tmp cleaner. - -== Other= - -* Pick up gwtexpui 1.1.4-SNAPSHOT -* Merge change Ia64286d3 -* Merge branch 'maint-2.0.24.1' -* Merge change Ic6f00304 -* Merge branch 'maint-2.0.24.2' -* Add H2 database as a test dependency -* Update Ehcache to 1.7.0 -* Fix formatting -* Rewrite our build as modular maven components -* Forbid use of anonymous servlets on any container -* Use listeners to manage server startup/shutdown -* Load additional JARs from $site_path/lib -* Fix PostgreSQL/H2 access under gwtdebug sessions -* Fix Become link in hosted mode debugging sessions -* Fix ssh:// URLs on change pages -* daemon: Update help for --slave option -* daemon: Remove -DGerritServer from documentation -* Launcher: Clarify the purpose of the daemon command -* daemon: Fix --site-path documentation -* Remove unused imports from pgm.DataSourceProvider -* launcher: Don't print stack trace with reflection frames -* Move H2 database down into $site_path/db -* Remove dead code identified by Eclipse 3.5.1 -* Add missing default serialVersionUID -* pgm_daemon: Remove unnecessary -DGerritServer flag -* Move configuration files under $site_path/etc -* Update documentation to point to etc subdirectory -* Display the full stack trace if requested -* init: Don't delete site path on database creation fail -* Simplify errors reported by command line database fail -* init: Correct defaults for httpd.listenUrl in --batch -* issue 341 gsql: Fix \d on H2 -* gsql: Improve formatting of column types and indexes -* pgm: Move non commands into a util package -* issue 342 gsql: Reduce connections used to only 1 -* WorkQueue: Drop the word "-thread" from thread names -* documentation: Correct links in dev-design -* Fix port number in ssh pull lines in emails -* Update MINA SSHD to 0.3.0 -* Update Jetty to 7.0.1.v20091125 -* launcher: Refactor how we return the status code -* cat, ls: move inside our main program package -* Default temporary directory to $HOME/.gerritcodereview -* Clean up stale empty temporary directories -* daemon: Unpack the WAR contents to a local directory -* daemon: Run correctly under Eclipse debugger -* Create a rc.d style start/stop script for our daemon -* Remove unused ADMIN_PEOPLE link -* Ignore unsupported ulimit -x errors -* Use more portable printf instead of echo -n -* Support starting as current user without start-stop-daemon -* Make startup output universally the same -* Get the canonical path to our temporary directory -* init: Start daemon and open web browser when done -* documentation: Clean up references to 'Gerrit2' -* Cleanup the reflog identity generation -* Update to gwtjsonrpc 1.2.0-SNAPSHOT -* init: Configure gerrit.canonicalWebUrl if reverse proxy -* tools/version.sh: Quick hack to edit our Maven version -* Call the next version 2.1 -* documentation: Rewrite installation guide -* Fix gerrit.sh to run properly on SuSE systems -* documentation: Fix formatting of remote.name.authGroup -* Fix missing @Override warning in IoUtil -* Don't enable replication if replication.config is empty -* Give H2 a canonical file path -* init: Add --no-auto-start to prevent starting the daemon -* init: Support updating an existing site configuration -* init: Open browser to gerrit.canonicalWebUrl -* daemon: Allow httpd.listenUrl to end with / -* issue 358 init: Don't abort on empty directory -* init: Initialize system_config.site_path -* Remove dead class MessagePanel -* issue 331 documentation: Update developer docs -* documentation: Link to apache2 reverse proxy setup -* init: Fix LDAP prompts to store to ldap section -* init: Store httpd.sslKeyPasword in secure.config -* init: Fix a minor source code formatting error -* commentlink: Support raw HTML replacements -* documentation: Cleanup formatting in gerrit-config -* Delete legacy schema upgrade scripts -* Remove legacy tools/to_jetty.sh -* Remove standalone Jetty 6.x support scripts -* Move all resource files into src/main/resources -* init: Move optional library download configuration -* init: Refactor init to be small parts created -* Test SitePaths class -* Test SocketUtil class -* Test init's Libraries class -* Test init's upgrade from 2.0.x layout to 2.1 layout -* pgm_daemon launch: Run ../test_site like docs suggest... -* tools/version.sh: Don't mangle the git describe output -* Use SitePaths to locate the logs directory -* Resolve out any symlinks before starting logging -* Mark compressed log files read-only -* tools/release.sh: Simplify our release build process -* Teach Main to check the Java runtime version -* documentation: Mention Google Code Prettify in licens... -* Refactor GitRepositoryManager to be an interface -* issue 346 Fix duplicate branches showing in the Branches tab -* Completely remove GerritServer.properties -* Clean up the DWIMery for database.* configuration set... -* Never compress a pid file under $site_path/logs -* Fix reading the $site_path/etc/ssh_host_key in serial... -* gerrit 2.1
\ No newline at end of file |