The bouncycastle API, Command Agent Launcher, Oracle Java SE Development Kit Installer, JAXB, Trilead API, SSH server, JavaBeans Activation Framework (JAF) API, JavaMail API, and Instance Identity plugins are no longer bundled inside jenkins.war, reducing its download size by more than 20 MB. This functionality was split out of Jenkins core into these plugins between 2016 and 2022 (Jenkins 2.16 through 2.356). Copies were bundled in the war since then so that instances upgrading from such old versions, or plugins built against them, would keep working.
Most instances are not affected. If the update center is reachable, Jenkins resolves and installs these plugins automatically over the network whenever something needs them, the same way it would for any other missing dependency, regardless of which Jenkins version you're running.
You are only affected if your instance has no access to the update center. In that case, upgrading core past one of the versions above, or installing a plugin built against an old baseline, can no longer pull these plugins in automatically. Download the plugin files from the update center and place them in the plugins directory of the Jenkins home directory before starting the new version, or before installing the plugin that needs them.
Major enhancement
-
Standardise experimental Jenkins pages, make the side panel independently scrollable + make the build bar sticky
pull 26863
Enhancement
-
Stop bundling the bouncycastle API, Command Agent Launcher, Oracle Java SE Development Kit Installer, JAXB, Trilead API, SSH server, JavaBeans Activation Framework (JAF) API, JavaMail API, and Instance Identity plugins, reducing the size of
jenkins.war by more than 20 MB.
Jenkins no longer installs these plugins automatically when upgrading from Jenkins 2.356 or earlier, or when a plugin built against such an old version is discovered.
If you are affected, install these plugins through the plugin manager.
pull 27129
No notable changes in this release.
The JUnit, Mailer, Matrix Authorization Strategy, Matrix Project, and OWASP Markup Formatter plugins are no longer bundled inside jenkins.war, reducing its download size by more than 20 MB. This functionality was split out of Jenkins core into these plugins in 2014 (Jenkins 1.577) or earlier. Copies were bundled in the war since then so that instances upgrading from such old versions would keep working.
Most instances are not affected. If these plugins are already installed (they are among the plugins suggested by the setup wizard), or your instance was installed or last upgraded at any point in the last decade, nothing changes.
You are only affected if you upgrade an instance directly from Jenkins 1.577 or earlier, or if you install plugins built against Jenkins (then Hudson) 1.577 or earlier without using the Jenkins plugin manager. In those cases Jenkins can no longer install these plugins automatically from the war. If the update center is reachable, install the plugins through the plugin manager as usual. On instances without access to the update center, download the plugin files and place them in the plugins directory of the Jenkins home directory before starting the new version.
When upgrading an instance from Jenkins 1.577 or earlier, install these five plugins before starting the new Jenkins version. Configuration that depends on them, such as matrix-based security, matrix (multi-configuration) jobs, JUnit test result publishing, email notification settings, and markup formatter settings, cannot be loaded without them. Jenkins may fail to start (for example, if matrix-based security is your authorization strategy), and configuration that fails to load may be discarded the next time the affected item is saved. Alternatively, upgrade in two steps: first to an intermediate version that still bundles these plugins (any LTS release before this change), let Jenkins install them automatically, then upgrade to the current version.
Enhancement
-
Stop bundling the JUnit, Mailer, Matrix Authorization Strategy, Matrix Project, and OWASP Markup Formatter plugins, reducing the size of
jenkins.war by more than 20 MB.
Jenkins no longer installs these plugins automatically when upgrading from Jenkins 1.577 or earlier, or when a plugin built against such an old version is discovered.
If you are affected, install these plugins through the plugin manager.
JUnit Plugin, Mailer Plugin, Matrix Authorization Strategy Plugin, Matrix Project Plugin, OWASP Markup Formatter Plugin, JUnit Plugin, issue 26914, pull 27098
-
Reduce size of Jenkins war by removing comments from translation files.
pull 27100
-
Reduce size of Jenkins war by removing unused CLI dependency.
pull 27099
-
Standardise Jenkins branding during Sign in, Registration, and About Jenkins
pull 27046
-
Move password complexity rule classes from
hudson.security to jenkins.security package
JENKINS-69789
-
Clarify "Restrict where builds can run" help with an
|| example and explicit note that wildcards/regex are unsupported
JENKINS-28380
-
Add Japanese translations for user configuration screen
pull 4904
-
Allow administrators to configure the remember-me ("Keep me signed in") cookie validity with the
hudson.security.TokenBasedRememberMeServices2.tokenValidity system property.
The validity period is limited to 1 year.
pull 26833
-
Clarify unclear Spanish translation for 'Unprotected URLs'.
JENKINS-75134
Bug fix
-
Avoid null pointer exception showing the upstream cause of a job that was triggered by the
build step in a pipeline prior to a Jenkins restart (regression in 2.558).
pull 27094
-
Fix missing shadow and blur on the global search results dropdown.
pull 27113
-
Fix
PackedMap.values() returning keys instead of values.
pull 27110
-
Fix
HttpSessionListener so overrides of the deprecated sessionDestroyed method are invoked on session destruction.
pull 27090
Enhancement
-
Move password complexity rule classes from
hudson.security to jenkins.security package.
JENKINS-69789
-
Clarify unclear Spanish translation for 'Unprotected URLs'.
JENKINS-75134
Major enhancement
-
Refresh the status icons to show the status of the current job, without including status of previous job.
pull 23904
Bug fix
-
Fix
HttpSessionListener so overrides of the deprecated sessionDestroyed method are invoked on session destruction.
pull 27090
-
Fix the confirmation text in the experimental Manage Jenkins UI.
pull 27055
-
Add online help to clarify the timezone used for SCM polling.
JENKINS-1963
Enhancement
-
Add password complexity rule extension point for configurable password validation
JENKINS-69789
-
Refine borders across Jenkins UI.
pull 26974
-
Check that the deserialized elements in additional collections are of the expected type.
pull 26918
-
Prohibit the deserialization of
Object fields by default.
Learn more, issue 26914, pull 26915
-
Make Nodes page wide in experimental "Manage Jenkins" UI.
pull 26997
-
Refine Notifications component.
pull 27005
Bug fix
-
Keep job configuration pages at their current scroll position when opening modal dialogs (regression in 2.569).
pull 27028
-
Render Plugin Manager entries without wiki URLs as plain text (regression in 2.370).
pull 26976
Enhancement
-
Display operating system end of life messages when we are within 6 months of the end of life for Alpine Linux 3.21 - 3.24, CentOS Stream 9 - 10, Debian 13, Fedora 42 - 44, Red Hat Enterprise Linux 10, Rocky Linux 10, and Ubuntu 26.04. Correct the end of life date for Fedora 41.
pull 26991
-
Refine the 'System Log' Manage Jenkins page
pull 26614
-
Update bundled Script Security Plugin from 1402.v94c9ce464861 to 1402.1405.vc96e74964250.
pull 26989
Bug fix
-
Fix breadcrumb overflow menu items not rendering
pull 26978
-
Fix weird animation artifact when clicking "Apply".
JENKINS-73906
-
Fix incorrect pluralization in the file deletion retry failure message.
pull 26981
-
Move
log.markAsComplete() into finally block in TaskThread.run() to prevent permanently stuck task UI when perform() throws an Error.
pull 26967
Enhancement
-
Accept ECDSA and Ed25519 private keys for access to the Jenkins command line interface.
pull 26954
-
Decrease padding for experimental UI details bar
pull 26972
-
Complete the Korean translation of the Manage Jenkins screens.
pull 26955
-
Add a Korean (ko) translation for the security configuration screens.
pull 26960
Bug fix
-
Reenable the "Add" button immediately when an item is deleted from a full list like the postbuild actions of a Freestyle job (regression in 2.536).
pull 26937
-
Restore the Cancel button on the Console Output page of running builds so users can abort a build without leaving the log view.
pull 26637
-
Fix build history tooltip being clipped by overflow hidden
pull 26554
-
Fix some rare Firefox scenarios where keydown is not handled correctly.
pull 26966
-
Center the chevron in the list of builds on the Build History view.
pull 26522
-
Include charset=UTF8 in ContentType when serving text/* files through the workspace and artifact browser.
pull 26912
Windows 2019 controller images have been dropped from this release, and the next LTS release line will not include them either. For users who must use Windows for their controller and are stuck on Windows 2019, the workaround is either to:
- Install Jenkins controller via the MSI available via the "Windows" links on https://www.jenkins.io/download/
- Build their own image
Enhancement
-
Standardise command palette, dialog, dropdown, and tooltip materials
pull 26900
-
Hide CSRF configuration section when only the default crumb issuer is available
pull 26057
-
Allow to disable build history widget auto refresh in development mode
pull 26558
Bug fix
-
Fix the combobox suggestion list flashing and closing immediately when the field is clicked.
pull 26884
-
Do not show "Agent is connected" message when node is marked temporarily offline
pull 26675
-
Fix tailing of logs when partial lines are emitted (regression in 2.534).
pull 26871
-
Fix experimental job app bar status icon
pull 26892
-
Fix unexpected bluish scrollbar
pull 26893
Bug fix
-
Ensure urls in widgets loaded via ajax are correct
pull 26721
Enhancement
-
Reduce agent creation time during high usage by caching calls to
Util.isOverridden.
issue 26796, pull 26797
-
Extend telemetry collection for Content Security Policy until December.
pull 26807
Bug fix
-
Fix description editor rendering empty when reopened inside a modal dialog.
pull 26795
Bug fix
-
Limit the SECURITY-3657 security fix by default to the controller JVM due to reported problems extracting some stashes involving symbolic links on agents.
pull 26709
-
Prevent active builds from being lost when a job is reloaded (regression in 2.523).
pull 26700
Enhancement
-
Add permalinks to experimental job UI menu
pull 26699
-
Make scrollbar color derive from secondary text color
pull 26735
Bug fix
-
Restore the job name in the page title on the build console and changes pages.
pull 26727
-
Ensure applying configuration as code retains the offline cause of agent (regression in 2.482).
pull 26749
Enhancement
-
Use variable for
jenkins-not-applicable class.
pull 26728
-
Refine the System page in Manage Jenkins.
pull 26679
-
Update bundled Script Security Plugin from 1399.ve6a_66547f6e1 to 1402.v94c9ce464861, Matrix Authorization Strategy Plugin from 3.2.9 to 3.2.10.
pull 26719
Bug fix
-
Wrap long, unbroken strings correctly within the maximum width of the dialog.
pull 26574
-
Stop retaining build references in the old data monitor.
pull 26711
The
Jenkins MSI installer is now signed by "LF Open Source, LLC" using the Microsoft Artifact Signing Service. The change causes the Edge browser on Windows to report that the file is not commonly downloaded. Users need to select "Keep anyway" to download the installer.
When running the
Jenkins MSI installer with the new signature, Windows SmartScreen reports "Microsoft Defender SmartScreen prevented an unrecognized app from starting. Running this app might put your PC at risk." Users need to select "More info" to advance to the next screen and then select "Run anyway". A
blog post provides screenshots and more details.
The Microsoft
support forum says that Microsoft SmartScreen will stop prompting users once there are enough installations to increase its reputation score.
Enhancement
-
Stop signing the war file with jarsigner.
Rely on the GPG signature to verify publisher identity.
pull 26708
Bug fix
-
Fix parameterised pipeline build triggering.
pull 26685
Enhancement
-
Adopt experimental App Bar API for jobs
pull 26510
-
Avoid unnecessary copy of all loaded builds in
AbstractLazyLoadRunMap.getLoadedBuilds().
pull 26636
-
Refine the 'Users' Manage Jenkins page
pull 26475
-
Deprecate CheckMethod#toCheckUrl method, which generates a JS expression, and does not work with CSP enabled.
pull 26638
Bug fix
-
Prevent selecting an autocomplete suggestion submitting the configuration form (regression in 2.556).
pull 26646
-
Restore warnings in the update site warnings monitor (regression in 2.558).
pull 26644
-
Fix console card breaking layout in experimental build view
pull 26663
-
Use correct views tab bar in new dashboard page respecting user preferences
pull 26640
-
Keep the Duplicate Jenkins checker enabled when saving the global configuration (regression in 2.549).
pull 26631
Enhancement
Bug fix
-
Update dependency org.apache.ant:ant to v1.10.17 to resolve regression issue due to v1.10.16
pull 26611
-
Improve queue maintenance performance for jobs with large build histories
pull 26597
-
Fix Windows null pointer exception due to Apache Ant 1.10.16 (regression in 2.558).
pull 26606
-
Remove lines from log recorder page.
pull 26598
-
Render links to nodes and clouds correctly in the context menu (regression).
pull 26583
-
Use the correct URL in delete dialogs invoked from the cloud context menu (regression in 2.556).
pull 26593
Enhancement
-
Refine how administrative monitors are displayed
pull 26417
-
Deduplicate build causes in queue tooltip and build overview.
pull 26392
-
Use a dialog to add/edit the description of jobs, builds, views, computers, ...
pull 26535
Bug fix
-
Ensure cancel button for queued jobs doesn't move when other badges are present.
pull 26564
Enhancement
Bug fix
-
Fix wrong permission for description button in new build page.
pull 26548
-
Fix multibranch Pipeline scan from parent folder (regression).
pull 26517
-
Fix legacy context menu items not working.
pull 26525
-
Fix delete button being missing and actions showing when they shouldn't be (regression in 2.556).
pull 26526
-
Fix breadcrumb heading label.
pull 26523
Enhancement
-
Upgrade to Spring Security 7.
pull 11304
-
Upgrade to Spring Framework 7.
pull 11292
-
Refine Third Party Licences page.
pull 26476
-
Remove maximum width of sections.
pull 26435
-
Introduce experimental API for adding actions to experimental Run UI.
pull 11204
-
Added Turkish translations to setup wizard.
pull 26426
-
Explain prepending additional values to environment variables with BASE+EXTRA in the online help for nodes.
JENKINS-41492
Bug fix
-
Use standard size node icon even with long node names.
pull 26486
Enhancement
-
Adapt Script Console for experimental Manage Jenkins UI
pull 11333
-
Refine legacy Add button for repeatable lists
pull 26352
Bug fix
-
Fix keyboard navigation scrolling in dropdowns
pull 26358
-
Partially revert optimisation in
RunMap that causes issues when reloading
pull 26399
Bug fix
-
Restore unsaved changes warning in the new Manage Jenkins UI.
pull 26314
Enhancement
-
Update Jenkins CLI's subpages to use experimental Manage Jenkins UI
pull 26316
-
Revamp Clouds page
pull 26315
-
Add experimental Plugin Manager UI
pull 11332
Bug fix
-
Fix estimated build number in Build History widget
pull 26355
-
Redirect to the correct URL when creating log recorders with nonASCII names.
JENKINS-26318
-
Do not fail builds when the tool installation directory is readonly.
JENKINS-16005
-
Don't validate input fields when they are disabled
pull 26298
-
Fix link to polling log of upstream build caused by an SCM trigger after a Jenkins restart
pull 26291
-
Prevent
afterDisconnect() from being called twice when an agent disconnects
JENKINS-35272
-
Add support for combobox and autocomplete in dialogs
pull 26326
Enhancement
Bug fix
-
Fix progressive rendering progress calculation
pull 26235
-
Avoid that when copying a cloud anything else than the name is changed
pull 26260
-
Make redirects to documentation on www.jenkins.io work in the builtin administrative monitors when using Chrome and enforcing Content Security Policy.
pull 26207
-
Do not compute the CSP header if it's completely disabled using the Java system property
jenkins.security.csp.CspHeader.headerName in case computation takes too long.
pull 26255
Enhancement
-
Add telemetry for password field masking.
pull 26195
-
Clarify UI label when configuring Content Security Policy.
pull 26198
-
Minor refinement of dropdowns and empty states.
pull 26189
Bug fix
-
Fix shutdown banner visibility on Plugin Manager pages when preparing for shutdown
pull 26234
-
Fix a 404 error when clicking plugin names on the “License and dependency information for plugins” page.
pull 26029
-
Fix exception message being logged in rare cases on views with keyboard shortcut indicators.
pull 26214
-
Fix primary button text color in administrative monitors.
pull 26212
Major bug fix
-
Submitting a form would in rare cases, lead to an error (
Got type array but no lister class found for type...)
JENKINS-76249
Enhancement
-
Add online help for the “Remove last build” build discarder option.
pull 26153
-
API tokens with expiration date
pull 23859
Bug fix
-
Fix temporary offline state of computer is lost on config submit
pull 26154
-
Fix sidebar navigation for nonASCII localized section headers.
pull 26068