Jenkins Changelog

What's new in Jenkins 2.213

Jan 9, 2020
  • Fix plugin class resource loading failures for plugins which include library JARs. At least the Script Security, Active Directory and Maven Integration plugins are known to be affected. (regression in 2.212) (issue 60641, issue 60644, issue 60648)

New in Jenkins 2.210 (Dec 30, 2019)

  • Resolve AtomicInteger and class-filter warnings in startup log. (issue 60513)
  • User is no longer logged out when authenticating another user. (issue 59107)
  • The text null could appear rather than blank text when rendering certain user-controlled strings. (issue 60554)
  • Remove vulnerable Team Concert Plugin from setup wizard. (CSRF vulnerability, Credential enumeration vulnerability)
  • Disable multiple deletion attempts if hudson.Util.maxFileDeletionRetries is zero. (issue 60351)

New in Jenkins 2.207 (Dec 4, 2019)

  • Update bundled Script Security Plugin to 1.68. (pull 4367)
  • Do not reload too early when Jenkins is behind a reverse proxy and is restarting. (issue 6798)

New in Jenkins 2.206 (Nov 28, 2019)

  • Deprecate the macOS native installer packaging (Jenkins macOS native installer deprecation)
  • Open plugin and license links on a separate tab from Plugin Manager (issue 60189)
  • Set the HttpOnly flag for the page auto-refresh tokens (pull 4363)
  • Avoid exception when views are defined using job DSL. (issue 60092)
  • Fix AtomicFileWriter performance issue on CephFS when creating an empty file (issue 60167)
  • Developer: ViewGroupMixIn#getPrimaryView() may return null, and needs to be checked by plugins depending on this version of weekly and beyond. It is an intermediate state until a default view is implemented (issue 60092)
  • Developer: Use junit5 for CLI tests (pull 4220)

New in Jenkins 2.197 (Sep 27, 2019)

  • Important security fixes.

New in Jenkins 2.194 (Sep 13, 2019)

  • Fix missing absolute URL in the RSS / Atom feeds. (regression in 2.190) (issue 59167)
  • Update Remoting from 3.33 to 3.35 to allow inbound TCP agents to connect directly without querying Jenkins via HTTP for connection parameters first. (issue 59094, issue 53461, full changelog)
  • Update Windows Service Wrapper from 2.2.0 to 2.3.0 to pick up fixes and improvements. (pull 4167, WinSW changelog, Windows Agent Installer module 1.12 changelog)
  • Internal: Update dom4j library from Jenkins project fork to upstream release 2.1.1. (issue 53322)
  • Internal: Replaced different base64 implementations with java.util.Base64. (pull 4169)

New in Jenkins 2.193 (Sep 5, 2019)

  • Downgrade Remoting from 3.34 to 3.33 due to problems involving tunneled connections. (regression in 2.191) (issue 59094)
  • Jenkins UI broke when a slow trigger administrative warning would be shown. (regression in 2.189). (issue 58938)

New in Jenkins 2.192 (Aug 31, 2019)

  • Important security fixes.

New in Jenkins 2.189 (Aug 16, 2019)

  • A file handle leak in $JENKINS_HOME/jobs/*/builds/permalinks could prevent jobs from being deleted on Windows. (regression in 2.185) (issue 58733)
  • Remove extra whitespace output from /scriptText endpoint. (regression in 2.186) (issue 58548)
  • The install-plugin CLI command allowed files that aren't plugins to be installed, potentially breaking some functionality. (issue 29065)
  • Add a warning when cron trigger spends a long time in its execution. (issue 54854)
  • Batch up plugin installations in setup wizard to improve performance. (pull 4124)
  • Stop using the name argument in the install-plugin CLI command. (pull 4123)
  • Update versions of some detached plugins. These are typically installed when upgrading Jenkins from much older releases, or when implied dependencies are not specified for manually managed plugins. (pull 4125)
  • Internal: Add support running JMH benchmarks for Jenkins core. (pull 4135)
  • Internal: Update Jenkins Test Harness from 2.49 to 2.54 to add support for JMH benchmarks. (pull 4135, changelog)
  • Internal: Omit WEB-INF/lib/jquery-detached-1.2.jar from jenkins.war. (pull 4120)

New in Jenkins 2.184 (Jul 12, 2019)

  • Remove obsolete session cookies when logging out, preventing errors related to headers being too large. (issue 25046)
  • Add telemetry trial related to missing classes when running on Java 11. (issue 57223)
  • Fix performance issue when using "Remember me" (regression in 2.160). (issue 56243)
  • Developer: Clean up constructors of AbstractCloudSlave (pull 4086)

New in Jenkins 2.181 (Jun 21, 2019)

  • The plugin manager UI no longer prevents disabling a plugin when other plugins only have optional dependencies to it. (issue 33843)
  • A thread pool used to wait for external processes to complete could leak class loaders. (issue 57725)
  • Robustness: Exceptions thrown while scheduling jobs in the queue could prevent other jobs from being scheduled. (issue 57805)
  • Replace some exception stack traces related to agent channels with simpler messages. (issue 57993)
  • Update JNA from 4.5.2 to 5.3.1 to fix issue with shared library loading on AIX when using OpenJDK. (issue 57515)
  • Developer: Update ant dependency from 1.9.2 to 1.9.14. (pull 4053)
  • Internal: Switch from FindBugs to SpotBugs for static analysis. (pull 4062)
  • Internal: Mark hudson.model.UpdateSite#isDue as synchronized. (issue 57466)

New in Jenkins 2.180 (Jun 11, 2019)

  • Detached plugin handling changes in 2.178 could cause problems for some custom Jenkins home packaging schemes that use improper filenames. These cases are now at least warned about, and in some cases transparently handled. (issue 55582)
  • Change the presentation of boolean (checkbox) options for most options on configuration forms. (issue 55787)
  • Developer: Make the XMLUtils class with utility methods related to safe XML processing available to plugins. (pull 4032)

New in Jenkins 2.179 (May 28, 2019)

  • Detached plugin handling changes in 2.178 could cause problems for some custom Jenkins home packaging schemes that use improper filenames. These cases are now at least warned about, and in some cases transparently handled. (issue 55582)
  • Change the presentation of boolean (checkbox) options for most options on configuration forms. (issue 55787)
  • Developer: Make the XMLUtils class with utility methods related to safe XML processing available to plugins. (pull 4032)

New in Jenkins 2.173 (Apr 16, 2019)

  • Remove built-in support for CCtray (cc.xml) files. To restore this feature, install the CCtray XML Plugin (issue 40750)
  • Adjust stream flushing behavior for code running remotely on agents for better performance. This may lead to loss of messages for plugins which print to a build log from the agent machine but do not flush their output. Use -Dhudson.util.StreamTaskListener.AUTO_FLUSH=true to restore the previous behavior for freestyle builds. Note that Pipeline builds always expect remote flush. (pull 3961)
  • Add a button to copy new API tokens to the clipboard. (issue 56733)
  • Make form submit buttons on the Jenkins classic UI compatible with potentially upcoming Firefox bug fix. (issue 53462, Firefox bug 1370630)
  • Do not offer a workspace lease to a new build if it is already in use by a (Pipeline) build running across an agent reconnection. (issue 50504)
  • Remove Mailer related localized strings from core. Make sure you use Mailer Plugin 1.23. (issue 55292)
  • Properly flush output from the Maven console annotator. (issue 56995)
  • Developer: Update Stapler from 1.256 to 1.257 to add support for loading localized webapp resources from any plugin. Add jenkins.PluginLocaleDrivenResourceProvider interface for plugins to participate in localized resource lookup. (JEP-216, full changelog)
  • Developer: SystemProperties may now be used from agent-side code. See SystemProperties#allowOnAgent. (pull 3961)
  • Developer: Add LineTransformationOutputStream#Delegating for convenience. (pull 3959)
  • Developer: hudson.util.ssh.SFTPClient was removed. Use com.trilead.ssh2.jenkins.SFTPClient from the Trilead SSH library instead. (issue 56166)
  • Internal: Update commons-beanutils from 1.8.3 to 1.9.3. (pull 3948)

New in Jenkins 2.170 (Apr 2, 2019)

  • Remove misleading nonStoredPasswordParam symbol for password parameter definitions, since it's actually stored encrypted. (issue 56776)
  • Corrupted console notes could cause an uninformative NegativeArraySizeException to be thrown from ConsoleNote#readFrom and build log display to be broken. (issue 45661)

New in Jenkins 2.167 (Mar 5, 2019)

  • Actually show spinner when select tries to load an async request. (issue 42443)
  • Add a log message to build logs when builds run with the virtual SYSTEM authentication. (pull 3908)

New in Jenkins 2.165 (Feb 19, 2019)

  • Support for the Remoting mode of the CLI (-remoting option) has been removed. (pull 3838, announcement blog post)
  • Developer: Some public classes and methods which were already deprecated as specific to Remoting mode of the CLI have been removed, though those likely to be used by plugins have been retained for compatibility. (pull 3838)
  • Internal: Replace Trilead SSH implementation of base64 with the JDK implementation. (issue 43780)

New in Jenkins 2.161 (Jan 21, 2019)

  • Update Windows Service Wrapper from 2.1.2 to 2.2.0 and Windows Agent Installer from 1.9.3 to 1.10.0 to support disabling, renaming and archiving service logs. (pull 3854, Windows Service Wrapper changelog, https://github.com/jenkinsci/windows-slave-installer-module/blob/master/CHANGELOG.md#1100, Windows Agent Installer Module changelog)
  • Update Executable WAR from 1.41 to 1.44, allowing use of JENKINS_ENABLE_FUTURE_JAVA environment variable as an alternative to the --enable-future-java CLI switch. (pull 3847)
  • Overhaul file deletion related code to be more reliable. (issue 55016, issue 55448, issue 55450)
  • Improve robustness of console annotators such as the Timestamper plugin in conjunction with certain Pipeline steps such as git on an agent with an old agent.jar. (issue 55257)
  • Developer: Add SecurityListener#userCreated API to inform about user account creation in the Jenkins user database security realm. (pull 3825)
  • Developer: Deprecate ParserConfigurator. (pull 3852)
  • Internal: Update frontend-maven-plugin from 1.4 to 1.6. (pull 3830)

New in Jenkins 2.159 (Jan 15, 2019)

  • Fixed issue that prevented Jenkins from deleting files in many cases. (regression in 2.157) (issue 55448)

New in Jenkins 2.157 (Jan 8, 2019)

  • Update Trilead SSH library to add support for OpenSSH keys with AES256-CTR encryption. (issue 47603, issue 47458, issue 55133, issue 53653)
  • Restarting and Loading pages did not get CSS resources from the correct URL when using a context path. (issue 55062)
  • Internal: Update parent POM from 1.50 to 1.51. (pull 3829, changelog)
  • Internal: update build-helper-maven-plugin from 1.7 to 3.0 to make Jenkins more easily importable in Eclipse IDE. (pull 3831)

New in Jenkins 2.156 (Dec 17, 2018)

  • User account creation by administrators did not show error messages when it failed. (Regression in 2.129) (issue 52869)
  • Fix java.lang.IllegalStateException that could occur in rare cases on Jenkins startup. (issue 55197, issue 55070)
  • Attempt to prevent NoClassDefFoundError: javax/servlet/ServletException under some conditions on agents. (issue 26677)
  • Update Remoting from 3.27 to 3.28 to fix some minor issues and enhance NO_PROXY options. (full changelog, issue 47977, issue 48778, issue 49987, issue 50730, issue 51108, issue 54005)
  • Replace the Flash implementation of the "copy to clipboard" feature with the native JavaScript equivalent. (issue 54933)
  • Login and signup pages redesigned in 2.129 now can receive style contributions (footer view for SimplePageDecorator) from multiple plugins. (issue 54325)

New in Jenkins 2.150 (Nov 8, 2018)

  • Community reported issues: 1×JENKINS-234

New in Jenkins 2.147 (Oct 15, 2018)

  • Update Winstone-Jetty from 5.0 to 5.1 to update Jetty to 9.4.12, picking up TLS 1.3 support and fixes towards Java 11. (issue 51805, issue 53929, Winstone-Jetty changelog, Jetty changelog)
  • Update Stapler from 1.254.2 to 1.255 to integrate a fix related to StaplerProxy#getTarget() return value handling. (pull 3690, stapler/stapler#149)
  • Print a warning when the long deprecated method Secret#toString() is being used. (pull 3668)
  • Add telemetry trials related to browser languages and Stapler request dispatching. (pull 3688, pull 3687, stapler/stapler#148)

New in Jenkins 2.146 (Oct 12, 2018)

  • Important security fixes. (security advisory)
  • Security hardening: Escape variables in Jelly views by default. (announcement blog post, LTS upgrade guide, list of affected plugins)
  • Security hardening related to Stapler routing.
  • Security hardening related to HTTP verb restrictions for web methods.

New in Jenkins 2.145 (Oct 8, 2018)

  • Migrate all Simplified Chinese translations into Localization: Chinese (Simplified) Plugin. Jenkins (core) now no longer contains Simplified Chinese translations. (pull 3667)
  • Prevent NullPointerException on restart with an undefined update site URL. (issue 31448)
  • Fix problems with update center metadata signature check on Java 11. (issue 53710)
  • The initial visibility of nested groups of radio buttons did not accurately reflect the current values. (issue 48516)
  • New JENKINS_USER_ID and JENKINS_API_TOKEN environment variables can be used to configure the CLI authentication. (issue 53792)
  • Minor improvements to reduce minimum memory footprint for Jenkins, especially around update center & plugin metadata. (pull 3654)
  • Developer: Add overridable Queue.Task#getAffinityKey() to allow consistent hashing for Pipeline builds in the future. (issue 36547)
  • Developer: ConsoleAnnotatorFactory mishandled its type parameter, effectively forcing all implementations to use Object or raw types. (pull 3662)
  • Internal: Update META-INF/services generator from 1.4 to 1.8 to fix compilation on JDK 10+. (issue 52024, META-INF/services generator)
  • Internal: Update Parent POM to 1.49 to make the build flow compatible with Java 11.

New in Jenkins 2.138 (Aug 16, 2018)

  • Security fixes.
  • Security hardening related to Stapler routing.

New in Jenkins 2.134 (Jul 23, 2018)

  • Instruct browsers to not send referrer headers when following links to other sites.
  • Improvements to Chinese localization.

New in Jenkins 2.133 (Jul 19, 2018)

  • Important security fixes.

New in Jenkins 2.116 (Apr 13, 2018)

  • Security fixes.

New in Jenkins 2.114 (Apr 2, 2018)

  • Introduce hudson.triggers.SafeTimerTask.logsTargetDir system property to write logs usually written to $JENKINS_HOME/logs to another location. (issue 50291)
  • Update Executable War from 1.38 to 1.39 to remove an irrelevant warning on Jenkins startup. (issue 50439)
  • Make Cancel Shutdown link in side panel work without requiring the page to be reloaded. (issue 44402)
  • Prevent f:combobox input fields from breaking customized form submission handlers. (issue 21613)
  • Fix a race condition in the Setup Wizard that could lead to it being skipped on the first startup when groovy scripts or init scripts are pre-installed. (issue 49401)
  • Internal: Minimize visibility of readResolve methods. (pull 2567)

New in Jenkins 2.111 (Mar 12, 2018)

  • Pipeline builds could not be started if the Authorize Project plugin was configured to associate the build with a user to whom the authorization strategy was configured to deny Agent/Build permission on the master node. (issue 46652)
  • Reduce memory footprint of jenkins.model.lazy.AbstractLazyLoadRunMap#search in descending order. (issue 50056)
  • Update Executable War from 1.37 to 1.38 to show an error when an attempt is made to run Jenkins on Java 9. (issue 49737, full changelog)
  • Display estimated remaining time again for Pipeline jobs (regression in 2.92). (issue 48821)
  • Revert update of PrototypeJS in 2.110 due to regression. (issue 49968)
  • Do not show an error message when renaming an item before changing the name. (issue 49906)
  • Improve robustness in case a build with parameters was stored with a null list of parameters. (issue 39495)
  • Setup wizard did not properly display form validation errors in "Create First Admin User" form. (issue 45387)
  • Prevent FileNotFoundException in hudson.Util#loadFile in case of race condition. (issue 49971)
  • Ignore misplaced config.xml file directly in users/ directory. (issue 32599)
  • Developer: Introduce hudson.util.TextFile#linesStream for file stream processing with proper error propagation. (pull 3211, pull 3340)
  • Internal: Choose more mnemonic artifactIds for modules not consumed externally. (pull 3311)

New in Jenkins 2.110 (Mar 7, 2018)

  • It is no longer possible to rename jobs from their configuration page. Jobs now have a link in the side panel titled "Rename" that links to a page specifically dedicated to renaming jobs. (issue 22936)
  • Show the "Add" button in lists of tool installations also on the top. (issue 43581)
  • Add ConcurrentLinkedQueue to white-listed classes for use in XStream (XML serialization) and Remoting (agent communication). (issue 49788)
  • Issue warnings to the system log when attempts are made to use classes with unpredictable names and serial forms (such as anonymous classes) in Remoting or XStream (de)serialization. (issue 49795)
  • Make JEP-200 serialization whitelist more reliable on old versions of Tomcat 8. (issue 49543)
  • Clean up the build.xml files of parameterized projects that contained unnecessary serialized data. (issue 49795)
  • Upgrade Winstone from 4.1.0 to 4.1.2 to prevent User session memory leak by setting the default idle session eviction timeout to 30 minutes. (issue 49596, full changelog)
  • Make proxy views work inside folders. (issue 49642)
  • Prevent NullPointerException in AbstractProject#checkout when the agent disconnects during a build. (issue 29470)
  • Developer: Subclasses of AbstractItem can implement AbstractItem#isNameEditable and return true to get automatic support for renames. Subclasses are also able to dynamically validate renames by implementing AbstractItem#checkRename. (issue 22936)
  • Developer: Add support for also showing the "Add" button on top for lib/form/repeatable Jelly controls when the enableTopButton attribute is set to true. (pull 2926)
  • Internal: Upgrade PrototypeJS 1.7.0 to 1.7.3. (issue 49319, PrototypeJS blog/changelog)
  • Internal: Improve the implementation of Util#createTempDir. (pull 3226)
  • Internal: Make Apply buttons localizable. (pull 3287)

New in Jenkins 2.109 (Feb 28, 2018)

  • Periodically persist the build queue so it can be restored on abnormal process termination. (issue 30909)
  • Add agent symbol for a permanent agent in Structs Plugin based configuration. (issue 49661)
  • Match more date formats for sortable tables. (pull 3125)
  • Prevent NullPointerException when saving a parameterized job without parameters defined. (issue 46638)
  • Don't link to a non-existing user profile from the build log of a build started by an anonymous user. (issue 48467)

New in Jenkins 2.104 (Jan 30, 2018)

  • Whitelist additional safe Java platform types for use in XStream (XML serialization) and remoting (agent communication). (pull 3251, pull 3252, pull 3253, issue 49070, issue 49071)
  • Remove support for unbounded number of SCM polling threads. Previously, the default was infinite and could be set to between 10 and 100. Existing installations with unbounded SCM polling threads will now use the default of 10, and it is no longer possible to use a value outside of this range. (pull 3258)
  • Define a minimum required version of the remoting library (agent communication) and print warnings when an older version is connecting. (pull 3250)
  • Improve robustness in case of faulty SCM#guessBrowser implementations. (pull 3267)
  • Improve error message when failing to read some files to actually mention the file name. (issue 49060, issue 49112)
  • Restore Manage Jenkins submenu in the context menu accessible from the breadcrumb (regression in 2.103). (issue 49129)
  • Fix MalformedInputException or UnmappableCharacterException when reading the log file after finishing a build (regression in 2.102). (issue 49112)
  • Jenkins 2.102 and later could fail to start or run properly when loaded inside certain containers, including old versions of Tomcat. (issue 49147)
  • Don't attempt to export information about arbitrary offline causes as part of the /computer/(name)/api output, which could result in errors. (issue 24452)

New in Jenkins 2.99 (Jan 2, 2018)

  • Updating Jenkins jobs and views by XML left fields at their old value if not defined in the new XML. (issue 21017)

New in Jenkins 2.98 (Dec 27, 2017)

  • Update Remoting from 3.14 to 3.15 to fix several issues. (full changelog, issue 37566, issue 37670, issue 38696, issue 46724, issue 47965, issue 48055, issue 48130, issue 48133, issue 48309)
  • Make the system property hudson.consoleTailKB actually work. (issue 48593, Jenkins features controlled by system properties)
  • Developer: Jenkins#getInstance() is now deprecated as its semantics have been a source of confusion for some time. Use #get() in typical cases and Jenkins#getInstanceOrNull() in rare cases (see Javadoc). (issue 48638)

New in Jenkins 2.77 (Sep 5, 2017)

  • Default the built-in Jenkins Update Center URL to https://updates.jenkins.io instead of obsolete HTTP endpoint. (pull 2996)
  • Fix problem with auto upgrade when using custom JENKINS_HOME on Windows. (issue 13153)
  • Administrative monitor did not detect when Tomcat's URL escaping does not permit forward slashes. (issue 31068)
  • Fix broken UI for users with Discover permission when renaming a job. (issue 41637)
  • Internal: Avoid code duplication using default methods. (pull 2999)

New in Jenkins 2.76 (Sep 4, 2017)

  • Update remoting from 3.10 to 3.11 to improve stability and diagnosability. (issue 37567, issue 43985, issue 45023, issue 45233, issue 45522, issue 46259, full changelog)
  • Major update of the Bulgarian translation. (pull 2983)
  • Internal: Allow EnvironmentContributingAction to support Run in addition to AbstractProject. (issue 29537)
  • Internal: Updated parent POM; Jenkins core now requires Maven 3.3.9 or newer to build. (pull 2985)

New in Jenkins 2.65 (Jun 14, 2017)

  • Prevent NullPointerException when calling restart CLI command (regression in 2.57). (issue 44769)
  • Packaging: Docker alpine image had a Jenkins-incompatible JDK installation (regression in 2.64). (issue 44733, corresponding Alpine Linux issue)

New in Jenkins 2.62 (May 23, 2017)

  • Fixed Pipeline compatibility for a number of CLI commands (delete-builds, list-changes, console, set-build-description, and set-build-display-name), as well as some issues affecting error reporting in other commands when used with Pipeline. (issue 30785, issue 41527)
  • If you have the Authorize Project plugin installed and configured, its configuration will now be treated as final with respect to the behavior of Job/Build checks from Build other projects and Build after other projects are built. Formerly, if a Per-project configurable Build Authorization was enabled globally but some projects did not specify an Authorization, the two aforementioned checks would automatically fall back to checking as anonymous (typically denying build permission). To restore the former behavior, explicitly configure a Project default Build Authorization to be Run as anonymous. Note that this will affect all build-scoped permission checks, including for example Agent/Build. (issue 22949)
  • Internal API: Tasks.getAuthenticationOf now honors authentication contributed by QueueItemAuthenticatorProvider extensions. (pull 2880)
  • Update WinP from 1.24 to 1.25 to improve performance and diagnostics. (full changelog)
  • Fix for NullPointerException while initiating some SSH connections (regression in 2.59). (issue 44120)
  • Prevent StackOverflowError in log recorder when Winstone-Jetty debug logging is enabled. (regression in 2.61) (issue 44330, corresponding Jetty issue)

New in Jenkins 2.46 (Feb 13, 2017)

  • Failure to serialize a single Action could cause an entire REST export response to fail. Upgraded to Stapler 1.250 with a fix. (issue 40088)
  • Do not fail to write a log file just because something deleted the parent directory. (issue 16634)
  • Use extensible BUILD_NOW_TEXT for parameterized jobs. (issue 41457)
  • Display an informative message, rather than a Groovy exception, when View#getItems fails. (issue 41825)
  • Don't consider a project to be parameterized if no parameters are defined. (issue 37590)
  • Don't add all group names as HTTP headers on "access denied" pages. (issue 39402)
  • Ensure that PluginManager#dynamicLoad runs as SYSTEM. (issue 41684)
  • Add Usage Statistics section to the global configuration to make it easier to find. (issue 32938)
  • Allow groovy CLI command via SSH CLI. (issue 41765)

New in Jenkins 2.45 (Feb 7, 2017)

  • Delete obsolete pinning UI. (issue 34065)
  • Don't try to set Agent Port when it is enforced, breaking form submission. (issue 41511)
  • Use project-specific validation URL for SCM Trigger, so H is handled correctly in preview. (issue 26977)
  • Fix completely wrong Basque translation. (pull 2731)

New in Jenkins 2.41 (Jan 18, 2017)

  • Restore option value for setting build result to unstable when loading shell and batch build steps from disk. (issue 40894)
  • Autocomplete admin-only links in search suggestions only when admin. (issue 7874)
  • Improve agent protocol descriptions. (issue 40700)
  • Improve description for Enable Security option and administrative monitor when security is off. (issue 40813)
  • Enable the JNLP4 agent protocol by default. (issue 40886)

New in Jenkins 2.39 (Jan 3, 2017)

  • Properties were not passed to Maven command by Maven build step (issue 39268)
  • Update remoting to 3.4 (issue 39835)

New in Jenkins 2.35 (Dec 6, 2016)

  • Add display name and full display name of items to the remote API. (issue 39972)
  • API: Allow specifying log level in SystemProperties when a System property is undefined. (pull 2646)
  • Followup fix for JENKINS-23271 in 2.34 addressing plugin implementations not using ProcStarter. (pull 2653)

New in Jenkins 2.32 (Nov 17, 2016)

  • Important security fixes (security advisory)
  • Allow disabling the Jenkins CLI over HTTP and JNLP agent port by setting the System property jenkins.CLI.disabled to true.

New in Jenkins 2.13 (Jul 11, 2016)

  • IllegalStateException under certain conditions when reloading configuration from disk while jobs are in the queue. (issue 27530
  • Eliminate “dead executor” UI appearing after certain errors, such as JENKINS-27530. (PR 2440)

New in Jenkins 2.12 (Jul 8, 2016)

  • Enable the DescriptorVisibilityFilters for ComputerLauncher, RetentionStrategy and NodeProperty. (Issue 36280)
  • Before starting a process, ensure that its working directory exists. (Issue 36277)
  • Prevent NullPointerException during SCM polling if SCMDecisionHandler returns null veto. (Issue 36232, regression in 2.11)
  • Ensure that SCMDescriptor.newInstance overrides are honored when creating new SCM entries. (Issue 36043, Issue 35906 , regression in 2.10)
  • Performance: Improve configuration page load times by removing the CodeMirror reloading cycle. (Issue 32027)
  • Fix optional plugin dependency version resolution. (Issue 21486, previous fix was reverted in Jenkins 2)
  • When creating a tar file, ensure that the final size does not exceed the value in header in the case of growing files. (Issue 20187)
  • Do not inject build variables into Maven process by default for new projects. (Issue 25416, Issue 28790)
  • Update BUILD_TAG environment variable description to mention the replacement of slashes with dashes. (PR #2417)
  • Internal API: Make BulkChange auto-closeable. (PR #2428)

New in Jenkins 2.0 (Apr 21, 2016)

  • New password-protected setup wizard shown on first run to guide users through installation of popular plugins and setting up an admin user. (issue 30749, issue 9598)
  • Plugin bundling overhaul: Bundled plugins are only installed if necessary when upgrading, all plugins can be uninstalled. (issue 20617)
  • Redesigned job configuration form makes it easier to understand the option hierarchy, and to navigate the form. (issue 32357)
  • Richer 'Create Item' form with job icons and job categories (once a threshold of three categories has been reached). (issue 31162)
  • Upgrade wizard encourages installation of Pipeline related plugins when upgrading from 1.x. (issue 33662)
  • Jenkins now requires Servlet 3.1. Upgraded embedded Winstone-Jetty to Jetty 9 accordingly. This removes AJP support when using the embedded Winstone-Jetty container. (issue 23378)
  • Bundled Groovy updated from 1.8.9 to 2.4.6. (issue 21249)
  • Added option to prohibit anonymous access to security realm "Logged in users can do anything", enable by default. (issue 30749)
  • Renamed 'slave' to 'agent' on the UI. (issue 27268)
  • Improvements to inline documentation of numerous form fields in Jenkins global and job configuration. (issue 33364)
  • Change default CSRF protection crumb name to Jenkins-Crumb for nginx compatibility. (issue 12875)
  • Enforce correct icon size in list view. (issue 33799)
  • CLI: Fixed NPE when non-existent run is requested. (issue 33942)

New in Jenkins 1.654 (Mar 22, 2016)

  • Improve logging and error message when JNLP is already in use. (issue 33453)
  • NullPointerException from BuildTrigger$DescriptorImpl.doCheck when using Build other projects in Promotion process of a CloudBees template, and perhaps other circumstances. (issue 32525)
  • Improved the Build Other Projects help message. (issue 32134)
  • FutureImpl.cancel() doesn't cancel the linked job. (issue 33038)
  • Reject malformed range syntax in fingerprints data. (issue 33037)
  • Do not fail update center check if there are no tool installers defined. (issue 32831)
  • Log otherwise unhandled exceptions when threads die. (issue 33395)
  • Do not specifically require .NET framework 2.0 since 4.0 will do as well. (issue 21484)

New in Jenkins 1.653 (Mar 15, 2016)

  • More compact representation of redundant build causes. (issue 33467)

New in Jenkins 1.651 (Mar 1, 2016)

  • Move periodic task log files from JENKINS_HOME/*.log to JENKINS_HOME/logs/tasks/*.log and rotate them periodically rather than overwrite every execution. (issue 33068)
  • Fix documentation of proxy configuration. (pull 2060)

New in Jenkins 1.650 (Feb 26, 2016)

  • Important security fixes (security advisory)

New in Jenkins 1.649 (Feb 24, 2016)

  • Allow changing the directory used for the extraction of plugin archives via the --pluginroot CLI option (also controllable via the hudson.PluginManager.workDir system property / context parameter. Also document the --webroot CLI parameter in java -jar jenkins.war --help (issue 32765)
  • Unify CLI exit code semantics. (issue 32273)
  • ArrayIndexOutOfBoundsException when parsing range set. (issue 32852)
  • Improved Polish translation. (pull 2041, pull 2044)

New in Jenkins 1.644 (Jan 14, 2016)

  • API changes: Add a reusable implementation of IdleOfflineCause class. (commit 7e05b50)
  • Add time zone to generation date in footer in most locales. (issue 32194)
  • Prevent renaming nodes from overwriting existing nodes. (issue 31321)
  • Avoid synchronization when setting/getting the list of JDKs to improve performance. (issue 31932)
  • The Windows service wrapper now specifies the --webroot argument to extract the war file into �SE%. (pull 1951)

New in Jenkins 1.642 (Dec 16, 2015)

  • Various kinds of settings could not be saved since 1.640. (issue 31954)

New in Jenkins 1.637 (Nov 13, 2015)

  • Remove useless warnings about a JDK named null. (issue 31217)
  • New OptionalJobProperty class to simplify JobProperty creation. (pull 1888)

New in Jenkins 1.636 (Nov 8, 2015)

  • Add "lastCompletedBuild" job permalink. (issue 26270)

New in Jenkins 1.635 (Oct 26, 2015)

  • Make Node implement Saveable. (issue 31055)
  • Revert trigger optimizations made in 1.621 by PR 1617. (issue 30745)
  • Delegate CLI's delete-node command to the overridable Computer.doDoDelete() method. Fixes the issue in OpenStack and JClouds plugins. (issue 31098, regression in 1.618)
  • Prevent autocorrect of username on mobile devices in login forms. (PR 1531)
  • Describe the built-in JDK as "(System)". (issue 755)
  • Update JNA library to 4.2.1 in order to integrate fixes for linux-ppc64 and linux-arm platforms. (issue 15792)

New in Jenkins 1.634 (Oct 19, 2015)

  • Fix order of builds in new builds history widget introduced in 1.633. (issue 30899)
  • Bytecode Compatibility Transformer would fail to transform some classes resulting in ClassNotFoundException. (issue 30820)
  • Prevent ClassCastException in AbstractBuild::reportError() if the build step is not Publisher. (issue 30730)
  • Trim job names during the rename operation (it is impossible to delete or rename jobs with trailing spaces). (issue 30502)
  • Add "graphBg" and "plothBg" background color options to plot URLs (PR 1769)
  • API changes: Add get method for causes of interruption in hudson.model.Executor (PR 1712)
  • Allow case insensitive file patterns in Artifacts Archiving. (issue 5253)
  • Prevent NullPointerException while estimating duration of Queue executable items. (issue 30456)
  • Fix the resolution of Windows symbolic links in SecretRewriter. (issue 30456)
  • Let a combobox display its drop-down when focused, so users can see candidates without entering a letter. (issue 26278)

New in Jenkins 1.633 (Oct 12, 2015)

  • Added safari pinned tab icon. (discussion)
  • Plugin Manager UI changes to prevent users from enabling/disabling/uninstalling plugins at the "wrong" time. (issue 23150)
  • bytecode-compatibility-transformer produces malformed bytecode. (issue 28781)
  • Properly handle RuntimeExceptions in run retention policy handler calls. (issue 29888)
  • Prevent NullPointerException in CLI if Jenkins cannot find the specified job or a job with the nearest name. (issue 30742)
  • Do not show REST API link for pages, which have no API handlers. (issue 29014)
  • JS alert preventing to leave a configuration page without changes. (issue 21720)
  • JS error triggered by collapsing build history widget. (issue 30569)
  • Build history pagination and search. (issue 26445)

New in Jenkins 1.632 (Oct 7, 2015)

  • Optimize TagCloud size calculation. (issue 30705)
  • FlyWeightTasks tied to a label will not cause node provisioning and will be blocked forever. (issue 30084)
  • Prevent NullPointerException for disabled builds in ReverseBuildTrigger. (issue 29876)
  • ConsoleLogFilter wasn't truly global (issue 30777)
  • API changes: hudson.Util.isOverridden() now supports protected methods. (issue 30002)
  • Sidepanel controls with confirmation (lib/layout/task) did not assign the proper CSS style. (issue 30787)

New in Jenkins 1.630 (Sep 22, 2015)

  • Make JenkinsRule useable on systems which don't support JNA (issue 29507)

New in Jenkins 1.629 (Sep 22, 2015)

  • Old data monitor made Jenkins single-threaded for all saves. (issue 30139)

New in Jenkins 1.628 (Sep 11, 2015)

  • Replaced all non java.util.logging logging libraries with slf4j interceptors. (PR 1816)

New in Jenkins 1.627 (Aug 31, 2015)

  • Race condition in triggers could cause various NullPointerExceptions. (issue 29790)
  • Archiving of large artifacts. Tar implementation cannot handle files having a size >8GB. (issue 10629)
  • Allow plugins to augment or replace the plugin manager UI. (PR 1788)

New in Jenkins 1.626 (Aug 25, 2015)

  • RunIdMigrator fails to revert Matrix and Maven jobs. (issue 29989)
  • Fix error message "Failed to listen to incoming slave connection" after fixing port through init.groovy.d. (issue 29798)

New in Jenkins 1.625 (Aug 23, 2015)

  • Fixed a deadlock between the old data monitor and authorization strategies. (issue 29936)
  • Allow rejecting configurations with errors in critical fields via REST / CLI. (issue 28440)
  • Do not display No changes if changelog is still being computed. (issue 2327)

New in Jenkins 1.624 (Aug 23, 2015)

  • Allow more job types to use a custom "Build Now" text. (issue 26147)

New in Jenkins 1.623 (Aug 3, 2015)

  • Jenkins now support self-restart and daemonization in FreeBSD (PR 1770)
  • Node provisioner may fail to correctly indicate that provisioning was finished. (JENKINS-29568)

New in Jenkins 1.622 (Jul 29, 2015)

  • Jenkins now support self-restart and daemonization in FreeBSD (PR 1770)
  • Node provisioner may fail to correctly indicate that provisioning was finished. (JENKINS-29568)

New in Jenkins 1.621 (Jul 27, 2015)

  • Sort by 'Free Disk Space' is incorrect. (issue 29286)
  • Label expression help is missing in recent Jenkins versions. (issue 29376)
  • Pre-emptively break memory cycles causing excessive live-set retention in remoting layer. (issue 28844)
  • Don't run trigger for disabled/copied projects. (PR 1617)
  • Jenkins now support self-restart and daemonization in FreeBSD (PR 1770)

New in Jenkins 1.620 (Jul 13, 2015)

  • Display system info even when slave is temporarily offline. (issue 29300)

New in Jenkins 1.619 (Jul 13, 2015)

  • Update auto-installer metadata for newly installed plugins. (issue 27694)
  • Allow plugins to veto process killing. (issue 9104)

New in Jenkins 1.618 (Jun 30, 2015)

  • Fix deadlock in hudson.model.Executor. (issue 28690)
  • Don't truncate /consoleText output after fixed number of lines. (issue 14899)
  • Allow delete-* CLI commands to operate on multiple arguments. (issue 28041)
  • Prevent NullPointerException in Executor/causeOfDeath page if there is no exception details. (issue 25734)
  • Fixed synchronization issue when setting JDK installations. (issue 28292)
  • Fix several loggers which are identifying as the wrong class. (PR 1651)
  • Revert fix for issue 17290 due to the regressions it caused. (issue 28601)
  • Fix deadlock between hudson.model.Queue and hudson.model.Computer. (issue 28840)
  • Fix jobs getting stuck in the Queue when there exists a cycle of upstream/downstream blocks between them. (issue 28926)
  • Always use earlier start time when merging two equivalent queue items. (issue 2180)

New in Jenkins 1.617 (Jun 16, 2015)

  • Regression in build-history causing ball to not open console (issue 28704)
  • JNLP slaves did not pick up changes to environment variables. (issue 27739)
  • NullPointerException in AbstractProject constructor if Jenkins nodes has not been loaded yet (issue 28654)

New in Jenkins 1.616 (Jun 1, 2015)

  • Job loading can be broken by NullPointerException in a build trigger (issue 27549)

New in Jenkins 1.615 (May 29, 2015)

  • Improper calculation of queue length in UnlabeledLoadStatistics causing overheads in Cloud slave provisioning (issue 28446)
  • Category titles in Available Plugins list appear wrong in reverse sort order (issue 17290)
  • CronTab API: Timezone support for scheduling (issue 9283)
  • NullPointerException when trying to reset Jenkins admin address (issue 28419)
  • Reduce the thread overhead in NodeMonitorUpdater (PR 1714)
  • Build history overflows (issue 28425)
  • Build History badges don't wrap (issue 28455)

New in Jenkins 1.614 (May 19, 2015)

  • ExtensionList even listener. (issue 28434)
  • NullPointerException computing load statistics under some conditions. (issue 28384)
  • Plugins using class loader masking did not work properly over the slave channel. (issue 27289)
  • DefaultJnlpSlaveReceiver now returns true when rejecting a takeover. (issue 27939)
  • Do not follow href after sending POST via l:task (issue 28437)
  • Build history overflows (issue 28425)
  • Build History badges don't wrap (issue 28455)

New in Jenkins 1.613 (May 12, 2015)

  • Update bundled LDAP plugin in order to restore missing help files (PR 1682)
  • hudson.model.Run.getLog() throws IndexOutOfBoundsException when called with maxLines=0 (issue 27441)

New in Jenkins 1.612 (May 5, 2015)

  • Handle AbortException publisher status in the same way as deprecated false boolean status (issue 26964)
  • Ensures GlobalSettingsProvider does not swallow fatal exceptions (issue 26604)
  • add datestamp to node-offline message (issue 23917)
  • Larger minimum popup menu height. (issue 27067)
  • As promised, shipping with Java7 class files. (issue 28120)
  • Descriptor.getId fix in 1.610 introduced regressions affecting at least the Performance and NodeJS plugins. (issue 28093 and issue 28110)
  • Under rare conditions Executor.getProgress() can throw a Division by zero exception. (issue 28115)
  • The Run from the command line option for launching a JNLP slave should display the configured JVM options. (issue 28111)

New in Jenkins 1.611 (Apr 29, 2015)

  • Descriptor.getId fix in 1.610 introduced a regression affecting at least the Copy Artifacts plugin. (issue 28011)
  • Search box did not work well inside folders. (issue 24433)
  • Revert changes in 1.610 made to resolve issue 10629. (issue 28012, issue 28013)
  • Advertise JNLP slave agents to the correct host name, even in the presence of a reverse proxy. (issue 27218)
  • Advertised TCP slave agent port number is made tweakable.
  • Correctly identify Channel listener onClose propagated exceptions (issue 28062

New in Jenkins 1.610 (Apr 20, 2015)

  • Since 1.598 overrides of Descriptor.getId were not correctly handled by form binding, breaking at least the CloudBees Templates plugin. (issue 26781)
  • Archiving of large artifacts. Tar implementation cannot handle files having a size >8GB. (issue 10629)

New in Jenkins 1.609 (Apr 13, 2015)

  • When concurrent builds are enabled, artifact retention policy may delete artifact being used by an actually running build. (issue 27836)
  • Documentation for $BUILD_ID did not reflect current reality (issue 26520)

New in Jenkins 1.607 (Apr 1, 2015)

  • JSONP served with the wrong MIME type and rejected by Chrome. (issue 27607)
  • Security file pattern whitelist was broken for some plugins since 1.597. (issue 27055)
  • Lock an Executor without creating a Thread (issue 25938)
  • Hide flyweight master executor when ≥1 heavyweight executors running as subtasks (issue 26900)
  • Way to mark an Executable that should not block isReadyToRestart (issue 22941)
  • Refactor the Queue and Nodes to use a consistent locking strategy (issue 27565)
  • Makes the Jenkins is loading screen not block on the extensions loading lock (issue 27563)
  • AdjunctManager: exception upon startup (issue 15355)
  • Removes race condition rendering the list of executors (issue 27564)
  • Tidy up the locks that were causing deadlocks with the once retention strategy in durable tasks (issue 27476)
  • Remove any requirement from Jenkins Core to lock on the Queue when rendering the Jenkins UI (issue 27566)
  • Prevent lazy loading operation when obtaining label information. (issue 26391)
  • Ensure that the LoadStatistics return a self-consistent result. (issue 21618)
  • Build reports to be running for 45 yr and counting. (issue 26777)

New in Jenkins 1.604 (Mar 16, 2015)

  • Added a switch (-Dhudson.model.User.allowNonExistentUserToLogin=true) to let users login even when the record is not found in the backend security realm. (issue 22346)
  • Avoid deadlock when using build-monitor-plugin. (issue 27183)
  • As security hardening, mark "remember me" cookie as HTTP only (issue 27277)
  • Show displayName in build remote API. (issue 26723)

New in Jenkins 1.602 (Mar 9, 2015)

  • Regression with environment variables in 1.600. (issue 27188)
  • Errors with concurrent matrix builds since 1.597. (issue 26739)
  • Show displayName in build remote API. (issue 26723)

New in Jenkins 1.600 (Mar 1, 2015)

  • JDK auto-installer for Mac OSX
  • An error thrown in the wrong place in a publisher could result in a failure to release a workspace lock. (issue 26698)
  • Cache node environment to prevent unnecessary channel usage (issue 26755)
  • Build history text field wrap fails when containing markup (issue 26406)
  • Maven build step fail to launch mvn process when special chars are present in build variables. (issue 26684)

New in Jenkins 1.599 (Feb 17, 2015)

  • Errors in some Maven builds since 1.598. (issue 26601)
  • Build format change migrator in 1.597 did not work on some Windows systems. (issue 26519)
  • Remote FilePath.chmod fails with ClassNotFoundException: javax.servlet.ServletException. (issue 26476)
  • Added SimpleBuildWrapper API. (issue 24673)
  • Animated ball in job's build history widget won't open Console Output. (issue 26365)
  • Show job name in Schedule Build column tool tip. (issue 25234)
  • Allow OldDataMonitor to discard promoted-build-plugin Promotions (issue 26718)

New in Jenkins 1.598 (Jan 26, 2015)

  • Build format change migrator in 1.597 did not work on some Windows systems. (issue 26519)
  • FutureImpl does not cancel its start future. (issue 25514)
  • Flyweight tasks were under some conditions actually being run on heavyweight executors. (issue 10944) (issue 24519)
  • Folder loading broken when child item loading throws exception. (issue 22811)
  • Plugin icon images were broken when running Jenkins from a UNC path. (issue 26203)
  • Allow admin signup from /manage as well. (issue 26382)
  • Amend JAVA_HOME check to work with JDK 9. (issue 25601)
  • CLI list-jobs command should display raw name, not display name, where they differ. (issue 25338)
  • Show queue item parameters in tool tip. (issue 22311)
  • Better support functional tests from Gradle-based plugins. (issue 26331)
  • Allow users to delete builds even if they are supposed to be kept. (issue 26281)
  • Fixed side/main panel scrolling issues. (issue 26312, issue 26298, issue 26306)
  • Improve error reporting when channel closed during build. (issue 26411)
  • Fixed CodeMirror issue with height and re-enabled syntax highlighting in shell build step. (issue 25455, issue 23151)

New in Jenkins 1.597 (Jan 20, 2015)

  • JENKINS_HOME layout change: builds are now keyed by build numbers and not timestamps. See Wiki for details and downgrade. (issue 24380)
  • Do not throw exception on /signup when not possible. (issue 11172)
  • Tool installer which downloads and unpacks archives should not fail the build if the tool already exists and the server returns an error code. (issue 26196)
  • Fingerprint compaction aggravated lazy-loading performance issues. (issue 19392)
  • Possible unreleased workspace lock if SCM polling fails during setup. (issue 26201)
  • Misleading description of the 'workspace' permission. (issue 20148)
  • Run parameters should show display name if set, rather than build numbers. (issue 25174)
  • Add range check for H(X-Y) syntax. (issue 25897)

New in Jenkins 1.596 (Jan 5, 2015)

  • Build page was broken in Hungarian localization while building. (issue 26155)
  • Allow breaking label and node lists. (issue 25989)

New in Jenkins 1.595 (Dec 22, 2014)

  • Spurious warnings in the log after deleting builds. (issue 25788)
  • Master labels disappear when system configuration is updated. (issue 23966)
  • Updated icon-set dependency to version 1.0.5. (issue 25499, issue 25498)

New in Jenkins 1.594 (Dec 16, 2014)

  • After recent Java security updates, Jenkins would not gracefully recover from a deleted secrets/master.key. (issue 25937)
  • Restrict where this project can be run regressed in 1.589 when using the ClearCase plugin. (issue 25533)

New in Jenkins 1.593 (Dec 2, 2014)

  • Dynamic Single/Multi line Build History layout. (issue 25381, issue 25393, issue 24687, issue 24589)

New in Jenkins 1.590 (Nov 26, 2014)

  • Basic Authentication in combination with Session is broken (issue 25144)
  • Some plugins broken since 1.584 if they expected certain events to be fired under a specific user ID. (issue 25400)
  • Fixed various real or potential resource leaks discovered by Coverity Scan (pull request 1434)
  • API changes: Expose AbstractProject.AbstractProjectDescriptor#validateLabelExpression for plugins. (pull request 1456)
  • API method to aggregate multiple FormValidations into one. (pull request 1458)
  • Always use forward slashes in path separators during in ZIP archives generated by Directory Browser (issue 22514)
  • API method to get non-null Jenkins instance with internal validation (issue 23339)

New in Jenkins 1.589 (Nov 11, 2014)

  • JNA error in WindowsInstallerLink.doDoInstall. (issue 25358)
  • Restore compatibility of label assignment for some plugins. (issue 25372)

New in Jenkins 1.588 (Nov 3, 2014)

  • JNA error in WindowsInstallerLink.doDoInstall. (issue 25358)
  • Unnecessarily slow startup time with a massive number of jobs. (pull request 1439)
  • Custom workspace option did not work under some conditions. (issue 25221)

New in Jenkins 1.586 (Oct 27, 2014)

  • Bumping up JNA to 4.10. This is potentially a breaking change for plugins that depend on JNA 3.x (issue 24521)
  • Prevent empty file creation if file parameter is left empty. (issue 3539)
  • Servlet containers may refuse to let us set secure cookie flag. Deal with it gracefully. (issue 25019)
  • Existing FileParameters should be handled as different values to avoid merging of queued builds (issue 19017)

New in Jenkins 1.583 (Oct 9, 2014)

  • Fixes to multiple security vulnerabilities. (security advisory)
  • Diagnostic thread names are now available while requests are still in filters
  • When killing Windows processes, check its critical flag to avoid BSoD (issue 24453)
  • When a user could not see a view, but could delete/move/rename jobs contained in it, the view was not properly updated. (issue 22769)

New in Jenkins 1.552 (Feb 25, 2014)

  • Fixed handling of default JENKINS_HOME when storing CLI credentials (issue 21772)
  • Fixed broken action links on Label page (issue 21778)
  • Allow Actions to contribute to Labels' main page (issue 21777)
  • Expensive symlink-related calls on Windows can be simplified. (issue 20534)
  • Slow rendering of directories with many entries in remote workspaces. (issue 21780)

New in Jenkins 1.551 (Feb 15, 2014)

  • Valentine's day security release that contains more than a dozen security fixes. (security advisory)
  • Regression in Windows slaves since 1.547. (issue 21373)
  • Using java -jar jenkins-core.jar folder/external-monitor-job cmd … did not work. (issue 21525)
  • Jenkins crash on startup after upgrade from 1.546 to 1.548. (issue 21474)
  • f:combobox is narrow. (issue 21612)
  • The workspace cleanup thread failed to handle the modern workspace location on master, and mishandled folders. (issue 21023)
  • Fixed missing help items on "Configure Global Security" page (issue 19832)
  • Sort groups on user index page alphabetically. (issue 21673)
  • Should not be able to create a job named . (period). (issue 21639)
  • Plugins implementing "AsyncPeriodicWork" can overwrite default logging level (pull request #1115)
  • Wrong log message for out-of-order build record repair. (issue 20730)
  • Existing Fingerprint Action is reused and not added a second time. (issue 19832)
  • TestObject doesn't replace '%' character (issue 21707)
  • "java -jar jenkins.war" should use unique session cookie for users who run multiple Jenkins on the same host.

New in Jenkins 1.549 (Jan 27, 2014)

  • Removing the "keep this build forever" lock on a build should require the DELETE permission. (issue 16417)
  • Files added to zip archive are closed properly. (issue 20345)
  • Broken CSS when reloading Jenkins after a time of inactivity (issue 17526)
  • Replace description in error dialog instead of appending (issue 21457)

New in Jenkins 1.548 (Jan 21, 2014)

  • API for adding actions to a wide class of model objects at once. (issue 18224)
  • Added infrastructure for moving items into or out of folders. (issue 20008) (issue 18028) (issue 18680)
  • Apply buttons did not work in Internet Explorer in compatibility mode. (issue 19826)
  • Builds can seem to disappear from a job in a folder if that folder is renamed. (issue 18694)
  • /login offers link to /opensearch.xml which anonymous users cannot retrieve. (issue 21254)
  • Added API class SecurityListener to receive login events and similar. (issue 20999)
  • Option to hold lazy-loaded build references strongly, weakly, and more. (issue 19400)

New in Jenkins 1.546 (Jan 8, 2014)

  • Builds disappear after renaming a job. (issue 18678)
  • When clicking Apply to rename a job, tell the user that Save must be used instead. (issue 17401)
  • Exception from XStream running Maven builds on strange Java versions. (issue 21183)
  • When clicking Apply results in an exception (error page), show it, rather than creating an empty dialog. (issue 20772)