* [JENKINS-64445] - Fix null safety for plugin categories
* Update core/src/main/java/hudson/model/UpdateSite.java
Co-authored-by: Ramon Leon <manuelramonleonjimenez@gmail.com>
* Update core/src/main/java/hudson/model/UpdateSite.java
Co-authored-by: Ramon Leon <manuelramonleonjimenez@gmail.com>
* Omit stacktraces on ClassNotFoundException in PluginStrategy classloading
* Modify implementation to not fill in stacktraces by default
* Apply suggestions from code review
* Restrict withFillInStackTracesOnClassNotFoundException() at Beta API
* [JENKINS-62332] Show when a plugin version newer than offered exists
* Add more obvious label/tag to entries that cannot be installed
Also link to plugin documentation from the detail message
* Also show the list if there are any unavailable updates
Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com>
* Allow plugins to force an update of the UpdateCenter
* Add javadoc to updateDirectlyNow
* [JENKINS-61046] introduce updateDirectlyNow() and updateDirectly()
@oleg-nenashev notes that the public API should not expose the security
option that is for testing. Introduced updateDirectlyNow() as the new
API and updateDirectly() to have a mirror and deprecated
updateDirectly(boolean) as a consequence.
* fix javadoc grammar
fixes the grammar of the UpdateSite#updateDirectlyNow javadoc
Co-Authored-By: Raihaan Shouhell <raihaanhimself@gmail.com>
Co-authored-by: Raihaan Shouhell <raihaanhimself@gmail.com>
* Add new module optional-depender and a new failing test
* Variant plugin is a dependency of optional-depender
Optional-depender contains the following class
@OptionalExtension(requirePlugins = {"dependee"})
public class OptionalDependerExtension {
private static void foo(Dependee d) {
}
}
* [JENKINS-60449] Move plugin initialization at the end, keep only one extension refresh
* Improve logic to detect classloading issues
Inspect all declared constructors/methods/fields recursively to exclude
failing classes from Guice rather than have Guice explode.
This also fix the failing test, but the previous commit is still better
because it avoids an extra Jenkins.get().refreshExtensions() call.
* Only test resolveClass method if the classloader is not the bootstrap one
* [JENKINS-36720]: Fixed Spotbugs issues WMI_WRONG_MAP_ITERATOR and OS_OPEN_STREAM in core
* merged try with resources with try finally
* reverted auto format from IDE
* reverted auto format from IDE
* use Util.fileToPath() as suggested to remove catch block
* merged try statements
* merged try statements
* reverted some whitespace fixes
* reverted another whitespace fix
* Apply suggestions from code review
Co-Authored-By: Oleg Nenashev <o.v.nenashev@gmail.com>
* reverted change
* reverted change
* reverted change
Co-authored-by: Oleg Nenashev <o.v.nenashev@gmail.com>
* Batch up dynamic plugin installations from setup wizard.
* Reworked to thread the list of batched-up plugins properly and introduced CompleteBatchJob to force the setup wizard to wait.
* UpdateCenterPluginInstallTest.test_installKnownPlugins failure.
* @amuniz notes that an existing message could now be considered misleading.
* Introduced UpdateCenter.DownloadJob.getDisplayName for better consistency in logging, as suggested by @Vlatombe.
* Reducing log levels of messages from dynamicLoad which are not of great interest, as suggested by @Vlatombe.
* Reducing log level of another message of little interest.
* Adding classic UI for CompleteBatchJob.
* CompleteBatchJob should be used only when dynamicLoad.
* Null defense on UpdateCenterJob.site.
Otherwise can get:
java.lang.NullPointerException
at hudson.model.UpdateCenter.getConnectionCheckJob(UpdateCenter.java:850)
at hudson.model.UpdateCenter.addConnectionCheckJob(UpdateCenter.java:817)
at hudson.model.UpdateCenter.addJob(UpdateCenter.java:804)
at hudson.model.UpdateSite$Plugin.deploy(UpdateSite.java:1367)
at hudson.PluginManager.install(PluginManager.java:1537)
at hudson.PluginManager.install(PluginManager.java:1496)
at hudson.PluginManager.doInstall(PluginManager.java:1445)
at …
* Proof of concept catching exceptions for java 11 removed classes
* Add ClassLoader to a lot of places. Backup
* Commenting out wip stuff, change packages, count hits findClass
* Improvements, sending and tests
* Removing the catcher from chain to make funcional tests work
* Removing ignored places and a bit of cleaning
* Cleaning unused code after removing the catcher from the chain
* Remove imports cleaning to avoid extra changes
* Cleaning and explaining comments
* Explaining comments
* fix javadoc
* [JENKINS-57223] Address feedback from Matt Sicker. Improve in concurrency
* [JENKINS-57223] Search on cause and suppressed exceptions and fix on name reported
* [JENKINS-57223] Add cycles control on exceptions and refactor reporting method
* [JENKINS-57223] Add trim to class name comparison
* [JENKINS-57223] Address Oleg's feedback and some improvements
* Avoid sending CNFE when ignored later in code
* Disable when running on Java 8 and a test
* Avoid sending empty events
* [JENKINS-57223] Polish assertion after printing all missing classes in logs
* [JENKINS-57223] Avoid extra if and add curly braces
* [JENKINS-57223] Better comment about time window check
* Implied dependencies on detached plugins were not being marked optional despite being listed in optionalDependencies, confusing the calculation of optionalDependents in resolveDependentPlugins.
* Javadoc improvements based on code exploration.
* [JENKINS-33843] Do not consider optional dependencies for purposes of disabling plugins.
* PluginManagerInstalledGUITest updated to reflect new behavior.