Sketching SCM based on Job/Run.
Compiles at least.
Using newer core changes to make GitStatus potentially work.
Use TaskListener rather than BuildListener for SCM methods.
Adapted to minor core changes.
Signature change on checkout.
Do not create a zero-length changelog.
Compilation fix.
Test compilation fixes.
Now on 1.568.
Make sure the RepositoryBrowser is associated with a ChangeLogSet so we do not need to go back through the build and SCM to find it.
Seems we may also need to declare an explicit dependency on mailer-plugin.
Ability for project-changes.jelly to handle multiple ChangeLogSet’s per build.
Simpler and more flexible to use changeset ID as the anchor.
This allows multiple changelogs to be shown in a single page.
Implementing guessBrowser, so far limited to GithubWeb.
Should trigger polling at most once per project.
Merge branch 'master' into SCM-Job
Revert "Do not create a zero-length changelog."
This reverts commit 9a3ba4136e3c646b9d8959c22efeee9749ea57cf.
SCM.checkout does vaguely state that an empty changelog of some kind should be created.
MultipleSCMTest also requires it, since MultipleSCM reads the delegate changelog without checking whether it exists.
It is odd in this case because GitSCM does not use XML, yet core gives the changelog a *.xml extension.
Deleting MultipleSCMTest.
It can no longer pass, at least until multiple-scms-plugin is modified to use Jenkins core as of SCM-Job,
because MultiSCMChangeLogSet.add throws NoSuchFieldError: build,
since @AdaptField is not processed on test classpath dependencies but only on code loaded from a plugin class loader.
Anyway the handling of this plugin has been moved into core so testing its usage from git-plugin is less important.
Adapted to core changes.