* Do not run symlink tests on Windows if symlinks are not supported
Windows does not support symbolic links by default. Tests fail for new
contributors on Windows if they do not adjust their Windows configuration
to allow symbolic links.
* Fast incremental build
* Create a symbolic link on Windows to confirm they are supported
* Fix the copyright year - 2026
GitHub Copilot caught the mistake
* Remove a white space change
* Revert "Fast incremental build"
Don't change production
This reverts commit 0750dd8bc5.
* Fail tests on CI if Windows symlinks are not enabled
We do not want to fail the test on a developer computer if symlinks are
not enabled, but we do want to fail the test if a CI agent on Windows
does not have symbolic links enabled.
* API tokens with expiration
API tokens can now get an optional expiration date.
Added a select drop down from where you can choose from predefined
durations, a custom date (max 1 year) and no expiration.
Expiration date is shown in the list. Not expiring tokens are marked
with warning.
fixes#16695
* revert changes in SetupWizard
* fix linter
* fix ordering
* show when token expired
* notify on expiring and expired tokens
* format
* 2 lines only
make the creation date a tooltip of the expiration
* feedback
* feedback 2
don't add token when choosing date in the past
directly warn after creation when about to expire
* prettier
---------
Co-authored-by: Tim Jacomb <timjacomb1@gmail.com>
* Replace if-cascades with switch
* Reference to empty collection field replaced with method call (Java 5)
* Anonymous type replaced with lambda (Java 8)
* Replaced lambda with method reference (Java 8)
* Statement lambda replaced with expression lambda (Java 8)
* Loop replaced with 'Collection.removeIf()' (Java 8)
* Null check replaced with method call (Java 9)
* Statement replaced with enhanced 'switch' (Java 14)
* Use text blocks (Java 15)
* Use pattern variable (Java 16)
* Replace if-cascades with switch
* Use 'Comparator' combinator
* Null check replaced with method call (Java 9)
* Use pattern variable (Java 16)
* Use record pattern (Java 21)
* Use SequencedCollection method (Java 21)
* Replaced lambda with method reference (Java 8)
* Cleanup unused imports
* Cleanup migrations (move comments, formatting, spotbugs...)
* Remove duplicate comment
Resolve GitHub Copilot review comment
* Remove blank line that may confuse Copilot
* Inject comments into source line
Attempt to satisfy GitHub Copilot
Complains about unreachable code
* Simplify with return value of switch statement
* Use pattern matching instanceof in one more case
* Don't lose the NetBeans comment that was there before
* Remove TODO for Java 21 pattern use, implemented
* Align comments with Unicode character they describe
---------
Co-authored-by: Mark Waite <mark.earl.waite@gmail.com>
* Remove noisy test logging from QueueTest
No one is reading the test logs. They add megabytes to the output and
may obscure useful messages.
* Stop and delete builds 1 and 2 in QueueTest to prevent Windows test failures
The Windows file system prevents cleanup of the builds and jobs directory
while the test has them open. Stopping the builds and deleting them is
enough to close the directory and allow it to be deleted.
Testing done:
* Before this change, testGetCauseOfBlockageForNonConcurrentFreestyle
failed in about 50% of runs on my 7 different Windows agents
* After this change, testGetCauseOfBlockageForNonConcurrentFreestyle
passes all runs on my 7 different Windows agents
Fixes#26088
The user interface update to the Credentials plugin in pull request:
* https://github.com/jenkinsci/credentials-plugin/issues/990
removed the image that this test used for its initial configuration.
The change was released in Credentials plugin:
* https://github.com/jenkinsci/credentials-plugin/releases/tag/1460.v48765a_c7d849
The new release of the Credentials plugin was included in Jenkins core
with pull request:
* https://github.com/jenkinsci/jenkins/pull/26046
This change switches from the Credentials plugin to the Matrix Project
plugin as the base for the test. The assumption is that user interface
changes are less likely to the Matrix Project plugin.
Testing done:
* Confirmed that the tests fail on Windows without this change
* Confirmed that the tests pass on Windows with this change
* [JENKINS-75905] Include update site URL in signature verification error messages
* [JENKINS-75905] Include update site URL in signature verification error messages
* [JENKINS-75905] Include update site URL in signature verification error messages
* Use the non-deprecated getJsonSignatureValidator method and add @NonNull annotation
Use the non-deprecated getJsonSignatureValidator Add @NonNull annotation to the Throwable parameter in JSONSignatureValidator#getRootCauseMessage.
* Test both branches of message formatter
---------
Co-authored-by: Mark Waite <mark.earl.waite@gmail.com>
* Update dependency org.jenkins-ci.plugins:junit to v1380
* Add prism-api as a bundled plugin, required for junit
Since we are including other plugins that are dependencies of junit, it
seems correct to include this plugin that is also a dependency of junit.
Testing done:
* Confirmed that tests pass that were failing prior to this change
Testing to do:
* Plugin BOM
* Acceptance test harness
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Mark Waite <mark.earl.waite@gmail.com>
* Fix NPE in ReverseBuildTrigger due to null upstream threshold (JENKINS-39044)
* Use ReverseTrigger constructor that is not deprecated
Has the same result as the deprecated constructor that was used before.
* Add automated test of JENKINS-39044
If the ReverseTrigger threshold were null, a null pointer exception would
be thrown. The config round trip operation resets a null threshold to
SUCCESS, so this test reaches inside the job definition and changes the
threshold directly.
Testing done:
* Confirmed that the modified automated test fails when the change to
ReverseTrigger is removed.
* Confirmed that the modified automated test passes when the change to
ReverseTrigger is included.
* Link to GitHub issue
---------
Co-authored-by: Mark Waite <mark.earl.waite@gmail.com>
* make the MANAGE permission enabled by default
Removed experimental warning for MANAGE permission and enable it by default.
* update tests to accomodate enabling of Overall/Manage