Draft 2.1.4 release notes

Change-Id: I3f4f579ac5f1a9b745c19f01bd5e03a6316f8585
Signed-off-by: Shawn O. Pearce <sop@google.com>
diff --git a/ReleaseNotes/ReleaseNotes-2.1.4.txt b/ReleaseNotes/ReleaseNotes-2.1.4.txt
new file mode 100644
index 0000000..d882d56
--- /dev/null
+++ b/ReleaseNotes/ReleaseNotes-2.1.4.txt
@@ -0,0 +1,209 @@
+Release notes for Gerrit 2.1.4
+==============================
+
+Gerrit 2.1.4 is now available in the usual location:
+
+link:http://code.google.com/p/gerrit/downloads/list[http://code.google.com/p/gerrit/downloads/list]
+
+Schema Change
+-------------
+
+*WARNING* This release contains multiple schema changes.  To upgrade:
+----
+  java -jar gerrit.war init -d site_path
+----
+
+New Features
+------------
+
+Change Management
+~~~~~~~~~~~~~~~~~
+
+* issue 504 Implement full query operators
++
+The search box now implments a wide range of operators and boolean
+expressions, permitting complex queries such as `is:open CodeReview>=1
+(has:draft OR is:starred)` to locate open changes that have been code
+reviewed, but still have unpublished drafts or were starred by the
+current user.  The full range of supported operators is documented
+in the user guide.
+
+* Change lists now use query operators
++
+All current change lists have been reimplemented using query
+operators, so selecting 'All open changes' actually performs the query
+'is:open'.  This is to help end-users learn the different operators
+that are supported, and simplifies the internal implementation
+considerably by removing redundant code.
+
+* issue 51 Tag changes with topic branches
++
+Changes can be tagged with a topic name during upload.  To add the tag
+'query' when pushing to branch 'master', use `git push URL
+HEAD:refs/for/master/query`.  To add a topic name with `repo upload`
+use the `-t` command line flag.  Topic names are displayed next to the
+branch name in the web UI, and can be searched for with the `topic:`
+query operator.
+
+* Filter the list of open changes by watched projects
++
+The query operator `is:watched` matches changes matching the user's
+watched project list, and a new menu item was added under the My menu
+to select open changes matching these watched projects.
+
+Web UI
+~~~~~~
+
+* issue 579 Remember diff formatting preferences
++
+Formatting options at the top of a side-by-side or unified diff page
+are now remembered by saving the current preferences into the user's
+account whenever 'Update' is clicked.
+
+* issue 680 Show commit message on the per-file review pages
+
+* issue 498 Improved keyboard navigation
++
+More keyboard bindings have been added, reducing the need to switch to
+the mouse while navigating through a change and performing a review.
+
+* issue 395 Open new window/new tab for all files in a change
++
+New buttons permit opening all modified files of a change into
+new windows or tabs.
+
+* issue 440 Add copy to clipboard button for change-id
++
+The Change-Id field in the upper left side of a change now support to
+copy "Change-Id: I...." onto the clipboard, making it easier to paste
+into a commit message.
+
+* issue 559 Allow copying user public ssh key to clipboard
+
+Email Notifications
+~~~~~~~~~~~~~~~~~~~
+
+* issue 311 No longer CC a user by default
++
+The user who causes a notification to be sent is no longer CC'd on the
+email when it is sent.  This reduces the number of messages sent to a
+user, but can be re-enabled through a checkbox in the Settings >
+Preferences panel.
+
+* issue 535 Enable watching of all projects
++
+Adding the magic `\-- All Projects \--` to the watched project list
+permits the user to be notified of any change occurring in any
+project.  Project specific entries override the notification settings
+for all projects.
+
+* issue 492 Allow watching specific branches or any other search query
++
+In addition to watching a project, users can register a query string
+to match specific changes, reducing notifications to be a smaller
+subset of the changes that occur in a project.
+
+* issue 70 Allow file:^regex to match affected files
++
+The file:^path operator can be used in a watch filter to receive
+notifications only when files matching the regular expression are
+modified by the change.
+
+* issue 623 Include Gerrit-Owner, Gerrit-Reviewer in email footers
++
+New fields in the email footer provide additional detail, enabling
+better filtering and classification of messages.
+
+Access Control
+~~~~~~~~~~~~~~
+
+* Support regular expressions for ref access rules
++
+References in an access rule can now be specified by regular
+expression by prefixing the reference name with ^.
+
+* issue 577 Support $\{username\} in access rules
++
+Adding `$\{username\}` into a reference causes the current username to
+be inserted at that position.  When combined with the Push Branch
+permission this creates a per-user branch namespace feature, giving
+each user their own "sandbox" to push changes to.
+
+Authentication
+~~~~~~~~~~~~~~
+
+* Remove password authentication over SSH
++
+Adding password authentication over SSH turned out to be a major
+mistake.  Users primarily use SSH public keys, and the password
+prompt just got in the way or confused them.  Password support has
+been removed from the SSH server.
+
+* Username cannot be changed once assigned
++
+Once a username has been selected for a user account, it
+cannot be modified by the user.
+
+* issue 555 Make LDAP sessions persistent for the session age
++
+Web sessions are now persistent for the cache.web_sessions.maxAge
+setting, rather than expiring when the browser closes.  (Previously
+sessions expired when the browser exited.)
+
+Misc.
+~~~~~
+
+* Add topic, lastUpdated, sortKey to ChangeAttribute
++
+Additional change fields are now exported as part of the
+stream-events output.
+
+* issue 504 gerrit query SSH command
++
+Queries to lookup change information can be executed over SSH through
+the `gerrit query` command, with results output in either human
+readable text or machine readable JSON.  Change queries can also be
+run over HTTP with the `/query?q=<query>&format=JSON` URL.  Both
+interfaces are intended for automated tools.
+
+* Remove git diff-tree dependency
++
+Gerrit no longer requires `git` in the PATH; differences are now
+constructed in pure Java code.  Remote repository initialization over
+SSH still requires `git` on the remote host's PATH.
+
+* Internal dependencies updated
++
+Updated JGit to 0.8.4.87-g395d236, log4j to 1.2.16, GWT to 2.0.4,
+sfl4j to 1.6.1, easymock to 3.0, JUnit to 4.8.1.
+
+Bug Fixes
+---------
+
+Web UI
+~~~~~~
+
+* issue 352 Confirm branch deletion in web UI
++
+Deleting a branch now presents a confirmation dialog to give the user
+a second chance to abort the destructive operation.
+
+* Fix some JavaScript errors under Chrome
++
+The GWT compiler started to define symbols in the same namespace as
+the prettify syntax highlighting library.  We moved the prettify
+library into its own iframe so it has a different JavaScript namespace
+in the browser.
+
+Misc.
+~~~~~
+
+* issue 614 Fix 503 error when Jetty cancels a request
++
+A bug was introduced in 2.1.3 that caused a server 503 error
+when a fetch/pull/clone or push request timed out.  Fixed.
+
+Version
+-------
+
+df89f998d5c0fa5802a70482d4582b6313a018e4