Ensure inbound agent restart logic is applied.
(issue 66446)
Display log entries with missing logger names in the log viewer.
(pull 6310)
Honor MSI installer parameter values for PORT and INSTALLDIR.
(pull 287)
Developer: Add a --debug option to the translation tool to help in troubleshooting.
Improve the readability of the translation tool command-line interface (CLI).
(pull 6317)
Developer: Upgrade the Guava library from 31.0.1 (released September 27, 2021) to 31.1 (released February 28, 2022).
(pull 6322, Guava 31.1 changelog)
What's new in 2.337
(2022-02-28)
Remove the 'cloud configuration has moved to a separate configuration page' notice.
(pull 6298)
Update the appearance of the button bar at the bottom of forms.
(pull 6295)
Persist changes made to boolean radio controls (regression in 2.336).
(pull 6311)
Update bundled Display URL API plugin to prevent issues starting the mailer plugin for offline installations.
(issue 67885)
Keep colors when interacting with ionicons as link icon.
(pull 6296)
Switch Linux installers from System V init to systemd.
(issue 41218)
Winstone 5.22 - Update Jetty from 9.4.43.v20210629 to 9.4.45.v20220203.
Append to log file rather than truncating it (Winstone PR-200).
Write log file and access logs in UTF-8 encoding rather than default encoding (Winstone PR-200).
(pull 6262, issue 66379, Winstone 5.22 changelog, Jetty 9.4.45 changelog, Winstone PR-200)
Update "Manage Jenkins" icons and controls.
The plugins icon now shows how many updates are available.
(pull 6273)
Replace the computer-flash GIF icon with the hourglass icon.
(issue 67742)
Remove support for RoleChecker#check(RoleSensitive) calls which were added again in Jenkins 2.319.
All remoting Callable implementations need to perform an actual role check as documented.
(pull 5901, Remoting callables documentation)
Several icons across Jenkins have been updated - the build icon, the delete icon, the settings icon, the about icon and the plugin icon.
(pull 6186)
Use modern table design for "Recorded Fingerprints" and "Legacy API Tokens" tables.
(pull 6247)
Overwrite grey balls icon with the modern "not built" status.
(issue 67753)
Link the log recorder configure button to the associated log recorder (regression in 2.322).
(pull 6245)
Render the question mark on the new help button only once so that it is not shown twice, even while using different themes.
(pull 6233)
Truncate long build names again (regression in 2.332).
(issue 67689)
Return zero from RPM init script on successful stop.
(issue 31656)
Do not print Java version message from Debian installer when correct Java version is detected.
(issue 55696)
Restart systemd service when the controller exits unexpectedly.
(issue 56219)
Restart the Jenkins service after plugin updates on Debian 11 (bullseye).
(issue 65809)
Do not fail startup with timeout on systems with slow DNS resolution.
Rely on the Jenkins process to check for port availability rather than using a separate shell function.
(issue 67404)
Correctly report startup result on Amazon Linux 2 installed with the rpm package.
(issue 67487)
Upgrade the XStream library from 1.4.18 to 1.4.19.
Addresses the CVE-2021-43859 security vulnerability when unmarshalling highly recursive collections or maps causing a Denial of Service.
(pull 6231, XStream 1.4.19 changelog, XStream CVE-2021-43859)
What's new in 2.332
(2022-01-24)
Restore the location of the build progress bar (regression in 2.321).
(pull 6199)
What's new in 2.331
(2022-01-21)
Increase width of job configuration form on wide screens.
(issue 67198)
Unify labels in plugin manager. Remove deprecated terminology labels from the Plugin Manager.
(pull 6151)
Fix ClassNotFoundException: io.jenkins.cli.shaded.org.w3c.dom.Node when using JAXB.
(issue 67470)
Fix vertical icon alignment for build status in medium (M) and small (S) icon sizes.
(issue 67515)
Developer: The javax.annotation.Generated, javax.annotation.ManagedBean, javax.annotation.PostConstruct, javax.annotation.PreDestroy, javax.annotation.Priority, javax.annotation.Resource, javax.annotation.Resources, javax.annotation.security.DeclareRoles, javax.annotation.security.DenyAll, javax.annotation.security.PermitAll, javax.annotation.security.RolesAllowed, javax.annotation.security.RunAs, javax.annotation.sql.DataSourceDefinition, and javax.annotation.sql.DataSourceDefinitions annotations have been deprecated in favor of the equivalent classes in the jakarta.annotation package. Plugin developers should migrate to the Jakarta Annotations version of each of the above annotations.
(pull 6161)
What's new in 2.328
(2022-01-03)
Use SVG icons for agent context menu and executor status.
(pull 6146)
Modernise the "About Jenkins" page. Update the table and tab design to use normal cased text.
(pull 6055)
Ensure that loggers exist before setting their log levels. In rare cases, setting the log level of a logger may have had no effect.
(pull 6143)
The agent-to-controller security subsystem is now always enabled. The admin-customizable allowlists for callables and file paths have been removed. The ability to access some files on the controller from agents has been removed. Some plugins are incompatible with this change and may need to be updated.
(pull 5885, issue 67173, the issue tracker)
Add missing SVG for parameterized job icon.
(pull 5905)
Add "Report an issue" link to plugins in the plugin manager.
(issue 65113)
Modernise the appearance of the plugin manager.
(pull 5916)
More reliably estimate plugin download progress.
(pull 6038)
Newly created items are again automatically made accessible to their creators to fix a regression in the matrix-auth plugin (regression in 2.324).
(issue 21224)
- Fix a resource leak when shutting down Jenkins.
(pull 6034)
- Fix a resource leak when a plugin fails to load.
(pull 6030)
Filtering now hides unavailable updates on "Updates" tab in Plugin Manager.
(issue 65084)
An agent-to-controller security measure failed to persist configuration.
(pull 5888)
Custom log records with large record parameters no longer interfere with garbage collection.
(pull 6018)
Developer: Add FilePath#validateAntFileMask(String, boolean) overload for convenience.
(pull 6033)
Developer: The option -Dhudson.ClassicPluginStrategy.useAntClassLoader=false allows experiments with plugin-first class loading alternatives.
(pull 5970)
What's new in 2.324
(2021-12-06)
Improve logging for termination of cloud agents.
(pull 6010)
Improve performance by lazy loading build records from the run list.
(pull 5942)
"View as plain text" shows correctly in polling log page.
(issue 67193)
Developer: New extension point Header as an interface that provides capabilities to render a specific header and a default implementation of that, named JenkinsHeader that is enabled by default.
(pull 5909, JEP-234: Customizable Jenkins header)
What's new in 2.322
(2021-11-23)
Issue a warning to the system log when using agent-to-controller file manipulation idioms considered for deprecation, and collect telemetry about this as well.
(pull 5890)
Add descriptions of built-in administrative alerts to the global configuration alert selection page.
(pull 5937)
Modernise System Info and Log Recorder pages.
(pull 5925)
Jenkins startup could hang due to a deadlock in class loading.
(issue 67188)
Display full user name, rather than id, in securityRealm page when using the built-in security realm (regression since 2.243).
(pull 5925)
Display the "Configure System" icon in the drop down menu.
(issue 67033)
Developer: Register UberClassLoader as parallel-capable.
(pull 5931)
What's new in 2.321
(2021-11-16)
Modernise the table design and add support for Ionicons.
(pull 5851)
Remove superfluous user interface elements, including images, mask-icon, and unnecessary resize handles.
(pull 5777)
Only apply trimLabels operation to affected nodes when adding or removing them.
(issue 67099)
Maven tool configuration works again (regression in 2.320).
(issue 67109)
Show ongoing first build in build history (regression in 2.314).
(issue 66969)
Fix filtering in update tab of plugin manager (regression in 2.320).
(pull 5908)
Permit additional safe types in agent to controller access control (regression in 2.320).
(issue 67105)
Upgrade the Guava library from 11.0.1 (released on January 9, 2012) to 31.0.1 (released on September 27, 2021).
Plugins have already been prepared to support the new version of Guava; use the Plugin Manager to upgrade all plugins before and after upgrading Jenkins.
(pull 5707, issue 36779, JEP-233, Guava web site, Guava 31.0.1 changelog)
Modernise the 'New view' and 'New node' pages.
(pull 5842)
Improve artifact list readability in dark theme.
(pull 5889)
Use CSS animation for console progress.
(pull 5871)
Allow plugin upload by URL in addition to file name.
(issue 4814)
Allow a plugin to dynamically insert a JAR file into its classpath.
(issue 66563)
Remove the --daemon argument from Jenkins command line arguments. Replace Akuma library from Jenkins core with simpler implementations using ProcessTree capabilities
(pull 5561)
Allow Jenkins to start when the JCasC configuration defines view-related permissions (regression in 2.302).
(issue 66470)
Correction of Label expression including a "implies" relationship without spaces around.
(issue 66613)
WebSocket connections now work when the Jenkins controller is running Java 11 and using self-terminated TLS.
(issue 61212)
What's new in 2.312
(2021-09-14)
Update executable war from 1.45 to 2.0
(pull 5706)
Replace the old icons with the new SVG icons in the job trend page.
(issue 65928)
What's new in 2.311
(2021-09-09)
Fix wrong parameter type for Text Parameter when triggering a build via the buildWithParameters API call.
(pull 5704)
Graphs now scale correctly on high resolution screens.
(pull 5697)
The checkbox labeled "Enable Agent → Controller Access Control" in the form "Configure Global Security" would always start out as disabled. Submitting the form without checking it would then cause a configuration change (regression in 2.307).
(pull 5694)
Load classes from plugins in parallel for faster startup on multicore machines.
(issue 23784)
Internal: Experimental support for URLClassLoader can be enabled by setting hudson.ClassicPluginStrategy.useAntClassLoader=false.
(pull 5698)