As this is my first look inside Jenkins codebase I not sure it's correct
but perhaps artifacts for modulebuilds should be deleted just as logs
are deleted. see https://issues.jenkins-ci.org/browse/JENKINS-17508
I did not fully test it yet, all unit tests ran fine, but didn't succeed
to run jobs inside Jenkins, due to classloader issues while running
Jenkins in Jetty, to verify deletion
adds test that looks in jobs archive with 2 builds when LogRotator set as build discarder with settings to keep only 1 build with artifacts, test searches for jars in archive for build one and build two expecting no jars in build 1 and expecting jars in build 2
add documentation to testcase.
also testing the removal of build if LogRotator is configured to discard
old builds and not only artifacts (Not needed for the issue, but an
extra test is not a luxury )
JENKINS-17508 updated the test to use @Rule and no longer extend from the old HudsonTestCase (shouldn't that one be marked deprecated?), add @ Bug and @ For as jesse suggested
JENKINS-17508 removed usage of deprecated elements in test
[JENKINS-17775] If MavenProject.getParent throws ISE during fingerprinting, report it but at least proceed.
Proper fix is to ensure that the model resolution uses the same environment as the actual build,
or is otherwise more lenient about finding the parent (e.g. enables plugin resolution).
[FIXED JENKINS-17715] Display Name is not shown
forgot to replace XXX with 1.515
TransferResource.getRepositoryUrl is documented to end in a slash if known, so we should not add one.
Parsing POMs
Downloaded artifact http://repo.jenkins-ci.org/public//org/jenkins-ci/plugins/plugin/1.456/plugin-1.456.pom
Downloaded artifact http://repo.jenkins-ci.org/public//org/jenkins-ci/jenkins/1.26/jenkins-1.26.pom
[FIXED JENKINS-17775] Find (model) parent POMs properly during fingerprint recording at end of build.
add global maven config to define default settings providers
[FIXED JENKINS-15309] Be robust against serialized ListView with jobNames==null.
Deferring formatting Logger messages unless and until the log formatter is run.
No need to call isLoggable if you are only calling simply getters and relying on toString later.
Debugging toString.
changed the filepath#toUri call to #getRemote as per comment of @jglick
[FIXED JENKINS-17030] Enable word breaking for job names
Hopefully this helps us reduce the screen glitch
[FIXED SECURITY-67] Forbid CSS links in markup to be on the safe side.(cherry picked from commit 1e19eb3ecece1931b5363a797fd2b30f8edc6180)
[SECURITY-63] Require POST for running Groovy scripts.(cherry picked from commit 3bbb65df3a5cb2cedb1d8080d6b70697c826a4a9)