Corrections in the 2.5.x release notes

Change-Id: I54ee73b3dac1abc2c8015534e182d2858485f052
Fix login servlets when canonicalWebUrl is not set

Each login servlet knows enough about the incoming request to be able
to not need the canonical web address for redirection purposes.  In
the case gerrit.canonicalWebUrl is not set, use the incoming request
to build up the URL.

This solution is a work-around for the fact that somewhere before 2.5
Colby broke the HttpServletRequest scope based version of the
@CanonicalWebUrl provider.  Because Guice cannot supply the request in
some contexts we pass the request into the provider as an argument.

Long term all of these authentication methods will be ejected into
their own plugins and it will be possible to revisit how this
configuration is handled.

Change-Id: I0e00b89020860a02b5d6ea77da5c784f5f0bb1b8
Fix refreshing PatchScreen when fileList has not yet been loaded

Although PatchScreen and PatchTable typically guard against using a
not yet loaded PatchTable, refreshing a PatchScreen and the subsequent
moving of the pointer lacked such guards. Thereby, a race condition
was introduced that lead to issue 1749.
We now added guards in both PatchScreen, and PatchTable.

Bug: issue 1749
Change-Id: I03ee3e80c198373ebecc50b1135b9c542d8ecfe7
(cherry picked from commit da5ceb4c9c73306b90be4349a4e7e106ab78e676)
Merge "Fix login servlets when canonicalWebUrl is not set" into stable-2.6
Require preferred email to be a verified address

Warn the user if they attempt to select a preferred email
address that has not been previously verified and stored in the
account_external_ids table. This reduces the chances the server
will have email notifications bounce because a user subscribed to
changes and entered an invalid preferred email address.

Change-Id: Ib00fc25fb11445968bc4114a2b16ccb08437a699
Fix PatchScript's mapping of lines below the last edit

For comments below the last edit block of a PatchScript, the formulae
to obtain the line number shifts between sides subtracted one side's
end, but added the other side's beginning (instead of also the
end). This mismatch could cause the client to fetch lines beyond a
file's end and thereby cause an ArrayIndexofBoundException.

We now use the difference of the last edit block's ends to map lines
below the last edit.

Change-Id: I67d2baa0f5ede3af7348c609034de81e8acf9c17
Reference included plugins by absolute Urls

While the use of relative Urls for referencing included plugin
repositories works nicely when cloning directly from gerrit-review, it
caused problems when cloning from a mirror that only mirrored the main
gerrit repository. There 'git submodule update' did not work unless
the referenced plugin repositories were also mirrored in exactly the
same relative position as on gerrit-review. Hence, we switch to
referencing the included plugin repositories by absolute Urls.

Change-Id: I1230f398cc7d2323922aff7f7acf92eac30f3ab5
Work around MySQL refusing to be case sensitive

We can't trust MySQL to be case sensitive on VARCHAR columns.
Encode UUID sequences using only hex digits where MySQL cannot
run into conflicts over 'A' and 'a' being the "same".

Bug: issue 851
Change-Id: I0f68efcebe1a75ddd9269b302c27fa14b1151b80
Merge "Fix PatchScript's mapping of lines below the last edit" into stable-2.6
Merge 'preferred-email' into stable-2.5

* preferred-email:
  Require preferred email to be a verified address
Release notes for 2.5.4

Change-Id: Ie14e7253c1cab8e7c6fa5f5f7a33e0fc290bf0ff
Merge branch 'stable-2.6' into stable-2.7

* stable-2.6:
  Work around MySQL refusing to be case sensitive
  Reference included plugins by absolute Urls
  Fix PatchScript's mapping of lines below the last edit
  Fix refreshing PatchScreen when fileList has not yet been loaded
  Fix login servlets when canonicalWebUrl is not set
Merge branch 'stable-2.5' into stable-2.6

* stable-2.5:
  Release notes for 2.5.4
  Require preferred email to be a verified address
  Corrections in the 2.5.x release notes

Conflicts:
	ReleaseNotes/ReleaseNotes-2.5.2.txt
	gerrit-httpd/src/main/java/com/google/gerrit/httpd/rpc/account/AccountSecurityImpl.java

Change-Id: I08731949f0e7a87604ca003b81e6dbe63678bd82
Merge branch 'stable-2.6' into stable-2.7

* stable-2.6:
  Release notes for 2.5.4
  Require preferred email to be a verified address
  Corrections in the 2.5.x release notes
Update 2.6 release notes to include fixes from 2.5.3 and 2.5.4

Change-Id: Id8508819ab37cd6089df0f0158ec1ef883f224f7
Update the 2.6 release notes

Add more fixes that have gone in since the last release notes
update.

Change-Id: I75c56914ca8f67cb8bdd4ab1fb92f44204a49bc6
Use "abbreviation" instead of "abbreviatedName" for labels

Change-Id: I22b8c9e4323d73caa02f2768d74ab5f0fa53cbed
Merge branch 'stable-2.6' into stable-2.7

* stable-2.6:
  Use "abbreviation" instead of "abbreviatedName" for labels
  Update the 2.6 release notes
  Update 2.6 release notes to include fixes from 2.5.3 and 2.5.4

Conflicts:
	gerrit-server/src/main/java/com/google/gerrit/server/schema/SchemaCreator.java

Change-Id: If654a1444455102de0990d435a98fa313afa1699
Refactor highlighting patch sets that have drafts

As suggested in the comments under change
I537db90a940c9df7c4b7c28974adac5b29c8abf4:
- Remove an unrelated field from a PatchSet entity class
- Remove highlighting of the patch set label
- Add a "comment" icon to a patch set header to indicate that it has draft
  comment(s)

Bug: Issue 667
Change-Id: Ie37be962ecb7beb82e85174492e154db9df6175c
(cherry picked from commit 61e18b0595b48766f4aebe7431f66b012b596a1c)
Correctly handle paths with URL-escaped characters

URL-unescape the path portion of a change history token to correctly
handle paths with URL-escapable characters, i.e. '+', ' ', etc.

Bug: Issue 1682
Change-Id: Iefbbb8a86062152d4227ab0a49f9fd91333af554