Inline the method to use concrete subtypes of AbstractBuild to remove ambiguity
```
[INFO] Jenkins war ........................................ SUCCESS [04:19 min]
[INFO] Tests for Jenkins core ............................. FAILURE [ 18.740 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 06:01 min
[INFO] Finished at: 2017-03-29T23:07:16+02:00
[INFO] Final Memory: 92M/504M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.0:testCompile (default-testCompile) on project test: Compilation failure
[ERROR] /home/tiste/dev/JENKINS/jenkins/test/src/test/java/hudson/model/GetEnvironmentOutsideBuildTest.java:[89,30] error: no suitable method found for buildAndAssertSuccess(AbstractProject)
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :test
```
```
[ERROR] Failed to execute goal com.infradna.tool:bridge-method-injector:1.13:process (default) on project jenkins-core: Failed to process @WithBridgeMethods: Failed to process /home/tiste/dev/tmp/2017-03-29T23h05m22+0200-jenkins-core/jenkins/jenkins/core/target/classes/hudson/model/AbstractItem.class: IllegalArgumentException -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal com.infradna.tool:bridge-method-injector:1.13:process (default) on project jenkins-core: Failed to process @WithBridgeMethods
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:212)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.plugin.MojoExecutionException: Failed to process @WithBridgeMethods
at com.infradna.tool.bridge_method_injector.ProcessMojo.execute(ProcessMojo.java:68)
at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:134)
at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:207)
... 20 more
Caused by: java.io.IOException: Failed to process /home/tiste/dev/tmp/2017-03-29T23h05m22+0200-jenkins-core/jenkins/jenkins/core/target/classes/hudson/model/AbstractItem.class
at com.infradna.tool.bridge_method_injector.MethodInjector.handle(MethodInjector.java:106)
at com.infradna.tool.bridge_method_injector.ProcessMojo.execute(ProcessMojo.java:65)
... 22 more
Caused by: java.lang.IllegalArgumentException
at org.objectweb.asm.ClassReader.<init>(ClassReader.java:170)
at org.objectweb.asm.ClassReader.<init>(ClassReader.java:153)
at org.objectweb.asm.ClassReader.<init>(ClassReader.java:424)
at com.infradna.tool.bridge_method_injector.MethodInjector.handle(MethodInjector.java:74)
... 23 more
[ERROR]
```
* [JENKINS-42724] - Restore the jenkins-slave.xml file
Windows Slaves plugin performs a direct access to the resources bundled into the core.
Hence the file removal was a bad idea though I have not seen the issue in automatic tests and ATH.
This change also was a last-minute change in https://github.com/jenkinsci/jenkins/pull/2765/ in order to address suggestions from @daniel-beck, hence I didn't test it properly
* [JENKINS-42724] - Update the Windows Agents plugin dependency to 1.3.1
* [JENKINS-42724] -Revert the war/pom.xml upgrade
* JENKINS-42319: Fix broken compareTo method of Run
Previous implementation relied on fact that users always compare run
objects with same parent. But this is not always the case.
So, it was not safe to put runs from different parents to TreeSet, i.e.
* Make comparasion more performance friendly