= Release notes for Gerrit 2.0.7

Gerrit 2.0.7 is now available in the usual location:

link:https://www.gerritcodereview.com/download/index.html[https://www.gerritcodereview.com/download/index.html]

Of note is the WAR file doubled in size.  This is due to the switch to openid4java for the OpenID relying party implementation, as it is more compliant to the OpenID 2.0 draft standard than the prior relying party, dyuproject.

Installation of openid4java may require installing Xalan/Xerces from the WAR into your application container's secure classes directory or something equally obtuse.  Under stock Jetty it still works fine to just drop the WAR in.  If you aren't using Jetty and are using OpenID authentication, be warned, the upgrade may be a bit harder than just dropping the WAR in due to Xalan/Xerces issues.

Gerrit is still Apache 2/MIT/BSD licensed, despite the switch of a dependency.

== New Features

* GERRIT-103  Display our server host keys for the client to copy an...
+
For the paranoid user, they can check the key fingerprint, or even copy the complete host key line for ~/.ssh/known_hosts, directly from Settings > SSH Keys.

== Bug Fixes

* GERRIT-98   Require that a change be open in order to abandon it
* GERRIT-101  Switch OpenID relying party to openid4java
* GERRIT-102  Never place an OpenID provider into an iframe
+
These are fixes suggested by the OpenID team at Google, or by the security team at Google.

* Use a TOPO sort when processing commits in the merge q...
* Upgrade JGit to 0.4.0-236-gcb63365
+
The upgrade of JGit should resolves issues relating to not being able to upload a merge commit change for review when merging in an upstream change that is already available under another tracking branch.  Multiple groups have reported this problem late last week.

* Fix a NullPointerException in OpenIdServiceImpl on res...

== Other Changes
* Start 2.0.7 development
* Upgrade JGit to 0.4.0-212-g9057f1b
* Make the sign in dialog a bit taller to avoid clipping...
* Define our own version of a URL encoding helper
* Refactor the openid_identifier field name to be a cons...
* GERRIT-102  Simplify the OpenID login code now that the iframe is ...
* Sort request parameters during OpenID response handling
* Shorten our OpenID return_to URL by removing unnecessa...
* Honor the "Remember Me" checkbox when it comes to cook...
* Remove the now dead SetCookie.html page
* Don't ask for registration information on existing acc...
* Disable spell checking on the SSH key add text area
* Hide the SSH key add field if we already have keys reg...
* gerrit 2.0.7