* Extract interfaces for objects to be used through the executors widget
This is required for CloudBees CI HA support: we provide alternate implementations of these interfaces to represent computers and related objects that exist in different physical replicas of the same logical instance. This allows to be build an aggregated view of computers and executors, some local, some remote.
* Fix Deprecated annotation
* Missing @Override annotations
* Missing @since TODO
* No longer true according to AbstractSubTask javadoc
* Restore old signature for compatibility
* Fix reviews
* Javadoc
* Typo
* Fix inconsistency between hasOfflineCause and getOfflineCauseReason
* Remove default implementation of ITask#getUrl
* Provide default impl in SubTask for compatibility
* Mark as CheckForNull
* Spotbugs
* ComputerSet#getComputers returns a collection that is sorted by name
* Missing Override
* Move permission declaration to the right place, closer to usage
* Introduce SaveableListener#onDeleted
Usually `Saveable` objects are written, but it can happen on occasion that they get deleted, and it wasn't generating an event for every case.
This provides a more fine-grained event that can be handled by implemented listeners.
In my case, I have a use case in CloudBees CI where I need to clear a cache entry when a Saveable gets deleted from disk.
* Spotless
* Explicitly test that the user that has performed the change can be obtained from the Saveable listener.
* [JENKINS-60866] Use JSON#parse to process codemirror-config argument
* Add backward compatibility for most common setting
* Integrate fixed antisamy-markup-formatter to pass test
* Fix JS and revert unnecessary antisamy-markup-formatter update
How do we have a billion different linters and not one did tell me
I'm redefining a variable?
* Remove comment
---------
Co-authored-by: Daniel Beck <daniel-beck@users.noreply.github.com>
Co-authored-by: Basil Crow <me@basilcrow.com>
* Init
* Update simple-page.scss
* Simplify
* Update simple-page.scss
* Delete loading.css
* Update some translations
* Remove some translations (still more to update)
* WIP translations - just need to confirm with friends
* Update/remove translations
* Introduce HistoricalBuild interface
This allows to display Run-like objects in build history without having concrete Run present in the Jenkins instance.
* Remove BuildHistoryWidget#entries.jelly
* JDK17 level
Co-authored-by: Jesse Glick <jglick@cloudbees.com>
---------
Co-authored-by: Jesse Glick <jglick@cloudbees.com>
* [JENKINS-73592] refresh buildhistory widget when page gets focus
* [JENKINS-73613] refresh buildhistory in all cases
refresh the buildHistory widget instantly when the window gets focus,
e.g. after switching browser tabs but also when one was in another
application and clicks in the browser window.
When the window is visible it will update even when it has no focus,
when the window is hidden no calls to the controller will be done.
Additionally the buildHistory will be updated when it is not on the
first page. So e.g. when someone deletes a build, changes the display
name or the description or when a build is still running the page gets
updated.
* JENKINS-68822 added support for removing all builds with LogRotator
* Update core/src/main/java/hudson/tasks/LogRotator.java
---------
Co-authored-by: Tim Jacomb <21194782+timja@users.noreply.github.com>