Show/hide the delete button when branches change

When updating the branches table, it could be that the delete button
should be shown or hidden.  Make this happen, instead of needing to
reload the page manually.

Change-Id: I77151f49447992d488ca42deb3389d1ea8c29d53
Merge "Show/hide the delete button when branches change" into stable-2.9
Allow publishing old non-current patch sets

Change-Id: I32ec6a514c20c44f86aaa823cca157181b56c96e
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
PluginLoader: Don't low case plugin name

Since Ibbb15ad2a plugin name was low cased. This broke some plugins that
unable to reconstruct the real plugin name from the combination of site_path
and plugin name:

  new File(site.plugins_dir, pluginName + ".jar").getAbsolutePath()

returns now erroneously:

  <site_path>/plugins/github-plugin-2.10-snapshot.jar

instead of

  <site_path>/plugins/github-plugin-2.10-SNAPSHOT.jar

Change-Id: I9690f2af727a676be768936f02d30cca219c1fa7
New review UI: Fix display of large avatar image in user popup panel

Hovering with the mouse over an avatar image opens a user popup panel
that shows additional information for this user. Beside the name and
the email address it is supposed to show a larger version of the
avatar image. This is important since the avatar images in the new
review UI (new change screen + new side-by-side diff screen) are very
tiny and the persons are difficult to recognize (note that currently
there are no user popups for the avatar images that are displayed for
reviewers and approvals, but only for change messages and inline
comments).

The avatar image in its default size is included in AccountInfo, but
if a different size was requested it didn't load the image from the
server. The problem was likely introduced by commit
edb9d2275cfbc5e4905e21786709bce51e7b9e00.

On the old review UI this works properly, so it's a regression with
the new review UI.

Change-Id: Iafa23377aa115ad4dfbe6c0fcd939bcf75b857f7
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Update Buck and use gwt_binary()

Migrate gwt build tool chain to built in gwt_binary() rule [1].

[1] https://github.com/facebook/buck/issues/109

Change-Id: I1f13f4d29864bc7e7278f8a2b2e39c882acf44aa
Buck: Merge deps and compile_deps parameters in gwt_module() rule

After migration to Buck's own gwt_binary() rule, gwt module libraries
must contain compiled classes. That makes the differentiation between
deps and compile_deps unnecessary.

Change-Id: I26fd741d566709a4d56b6e9623766012279903e4
Buck: Make gwt_module() rule more pythonic

gwt_module() rule is a normal java_library() rule with optional
xml description of the GWT module included in resources list. The
current implementation of this rule maps hard coded all parameters
from gwt_module() to java_library().  This is not future proof, as
java_library() may become additional parameters, like provided_deps
recently and the implementation must be extended.

This change provides alternative implementation that copy parameter
list in generic way, adding GWT xml to resources list on the fly.

Inspired-By: Michael Bolin <mbolin@fb.com>
Change-Id: I7f1ee1d6b3e142f14a199e80dea4e91817b5c7d5
Buck: Omit default values to gwt_binary() rule

style = 'OBF' and optimze = 9 are default values in gwt_binary() rule
definition and do not need to be passed.

Change-Id: Ic09dc032461ede6e236a267f2a32efbe161dd69c
Buck: Rename gwtxml to gwt_xml in gwt_module()

gwt_xml is more pythonic naming convention.  Beside that recent Buck
version introduced new gwt_jar parameter in prebuilt_jar() rule and
future Buck versions may introduce gwt_xml parameter to java_library()
rule.

Change-Id: Ia6447e62945ce3eb5ff951421ebf2f0fdf622b3d
Merge changes Ia6447e62,Ic09dc032,I7f1ee1d6,I26fd741d,I1f13f4d2

* changes:
  Buck: Rename gwtxml to gwt_xml in gwt_module()
  Buck: Omit default values to gwt_binary() rule
  Buck: Make gwt_module() rule more pythonic
  Buck: Merge deps and compile_deps parameters in gwt_module() rule
  Update Buck and use gwt_binary()
Add basic test for PatchListCache that checks the returned patches

The tests cover the current behaviour. At the moment when two
patch sets are compared the returned file list may be incorrect and
contain too many files. This is the case if the old patch set contains
modifications that were reverted in the new patch set or if there was
a rebase between the two patch sets that touched files that are not
contained in the new patch set. As commented in the tests they check
the current behaviour which is incorrect. The problems will be fixed
in a follow-up change that then adapts these tests to check the
correct behaviour.

Change-Id: I1ed59dc25a40a8de4b28f824187e37983fac1072
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Remove unused TreeWalk in PatchListLoader

Change-Id: I6ad54e54fceb2d80fb4be70ea31cddf942f6aefd
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Documentation/Makefile: Remove SVN publish support

Docs should be built using Buck and asciidoc. Delete the legacy
support to publish documentation from asciidoc using SVN. Simplify
the rules as release builds are not supported in make.

Change-Id: I0251dd278496ce35dccf3d8f5053ba4356811c7e
Merge branch 'stable-2.9'

* stable-2.9:
  Documentation/Makefile: Remove SVN publish support
  Allow publishing old non-current patch sets
  Show/hide the delete button when branches change
ChangeJson: Don't emit corrupt changes as null

Tried to fix in I1a2a2487 but was missing this continue.

Change-Id: Iea67f1eece20c6e4a21a8c0027fce1ba9bafacd8
Merge "ChangeJson: Don't emit corrupt changes as null"
Limit file list to files that were touched in new patch set

When comparing two patch sets only files that were touched in the new
patch set should be listed. At the moment the file list contains all
files that were changed between the commits of the compared patch sets.

E.g. if a rebase was done which touched many files this made the patch
set comparison pretty useless since the file list grew way too big.

Change-Id: I6c512a69d8632a4ce57ef23928411bf0829aeb70
Signed-off-by: Edwin Kempin <edwin.kempin@sap.com>
Buck: Fix compilation of GWT plugins

I1f13f4d29 broke compilation of GWT plugins. Also remove unnecessary
dependency of GWT development library.

Change-Id: Ic3ada6a56ddd3b83bfa51d504e525aa52021b6ad
Make EmailArguments public to allow sending mails from plugins

With this minor change plugins would be able to send emails using Gerrit
internal API.

Change-Id: I289a7585a1090f281a0d4721ac13fb6ee12af2a4
Signed-off-by: Dariusz Luksza <dariusz@luksza.org>