Legend: major RFEmajor enhancement RFEenhancement major bugmajor bug fix bugbug fix xxxxx
Upcoming changes Community ratings

What's new in 2.42 (2017/01/22)

  • IllegalStateException from Winstone when making certain requests with access logging enabled. (issue 37625)

What's new in 2.41 (2017/01/15)

  • 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)

What's new in 2.40 (2017/01/08)

  • Support displaying of warnings from the Update Site in the Plugin Manager and in administrative monitors. (issue 40404, announcement blog post)
  • Do not print warnings about undefined parameters when hudson.model.ParametersAction.keepUndefinedParameters property is set to false. (pull 2687)
  • Increase the JENKINS_HOME disk space threshold from 1Gb to 10Gb left. The warning will be shown only if more than 90% of the disk is utilized. (issue 40749)
  • Plugin Manager: Redirect back to the Advanced Tab when saving the Update Site URL. (pull 2703)
  • Prevent the ClassNotFoundException: javax.servlet.ServletException error when invoking shell tasks on remote agents. (issue 39268)
  • Jobs were hanging during process termination on the Solaris 11 Intel platform. (issue 40470, regression in 2.20)
  • Fix handling of the POST flag in ManagementLinks within the Manage Jenkins page. (issue 38175)
  • Require POST in the Reload from disk management link. (pull 2692)

What's new in 2.39 (2017/01/02)

  • Properties were not passed to Maven command by Maven build step when the Inject Build Variables flag was not set. (issue 39268)
  • Update remoting to 3.4 in order to properly terminate the channel in the case Errors and Exceptions. (issue 39835)
  • Improved Polish and Catalan translations. (pull 2688 and pull 2686)

What's new in 2.38 (2016/12/25)

  • Update to Winstone 3.2 to support ad-hoc certificate generation on Java 8 (using unsupported APIs). This option is deprecated and will be removed in a future release. We strongly recommend you create self-signed certificates yourself and use --httpsKeyStore and related options instead. (issue 25333)
  • The install-plugin CLI command now correctly installs plugins when multiple file arguments are specified. (issue 32358)
  • Correctly state that Jenkins will refuse to load plugins whose dependencies are not satisfied in plugin manager. (issue 40666)

What's new in 2.37 (2016/12/18)

  • Allow defining agent ping interval and ping timeout in seconds. It can be done via the hudson.slaves.ChannelPinger.pingIntervalSeconds and hudson.slaves.ChannelPinger.pingTimeoutSeconds system properties. (issue 28245)
  • Delegate JNLP HMAC computation to SlaveComputer instances when possible. (issue 40286)
  • Diagnosability: Split Exception handling of node provision and adding to Jenkins. (issue 38903)
  • Do not report -noCertificateCheck warning to STDOUT. (pull 2666)
  • Improve overall performance of Jenkins by accessing item group elements without sorting where it is possible. (pull 2665)
  • Convert URI encoding check on the Manage Jenkins page into admin monitor. (issue 39433)
  • Update SSHD Core from 0.8.0 to 0.14.0. (pull 2662)
  • SSHD Module: Handshake was failing (wrong shared secret) 1 out of 256 times due to SSHD-330. (issue 40362)
  • View display name was ignored during rendering of tabs. (issue 39300)
  • Job configuration submission now does not fail when there is no parameters property. (issue 39700, regression in 1.637)
  • Fix names of item loading and cleanup Jenkins initializatiion stages. (issue 40489)
  • Performance: Use bulk change when submitting Job configurations to minimize the number of sequential config.xml write operations. (issue 40435)
  • Check for Updates button in the Plugin Manager was hidden in the Updates tab when there was no plugins updates available. (issue 39971)
  • Remoting 3.3: Agent JAR cache corruption was causing malfunctioning of agents. (issue 39547)
  • Remoting 3.3: Improve diagnostics of the preliminary FifoBuffer termination in the JNLP2 protocol. (issue 40491)
  • Remoting 3.3: Hardening of FifoBuffer operation logic. The change improves the original fix of JENKINS-25218. (remoting pull #100)
  • Remoting 3.3: ProxyException now retains info about suppressed exceptions when serializing over the channel. (remoting pull #136)
  • API: Introduce the new Jenkins#isSubjectToMandatoryReadPermissionCheck(String restOfPath) method for checking access permissions to particular paths. (issue 32797)
  • API: Introduce new Node#getNodeProperty() methods for retrieving node properties. (issue 40365)
  • API: Introduce new Items#allItems() methods for accessing items in item groups without sorting overhead. (issue 40252)
  • Improved Polish translation. (pull 2643)

What's new in 2.36 (2016/12/11)

  • Several badges were missing in builds flagged as KeepBuildForever. (issue 40281, regression in 2.34)
  • Retain cause of blockage if the Queue task cannot be taken due to the decision of QueueTaskDispatcher extension, NodeProperty and other extensions. (issue 38514)
  • Internal API: Allow overriding UserProperty.setUser(User). (issue 40266)
  • Internal API: Restrict usage of core localization message classes in plugins. These message classes are not guaranteed to be binary compatible. (pull 2656)

What's new in 2.35 (2016/12/04)

  • 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)

What's new in 2.34 (2016/11/27)

  • Improve performance of Action retrieval methods. It speeds up core and plugin logic operating with Actionable objects like items, folders, nodes, etc. (issue 38867)
  • Update the SSHD module from 1.7 to 1.8. The change disables obsolete Ciphers: AES128CBC, TripleDESCBC, and BlowfishCBC. (issue 39805)
  • Update the Windows process management library (WinP) from 1.22 to 1.24. Full changelog is available here, only major issues are mentioned below. (pull 2619)
  • WinP 1.24: Native class now tries loading DLLs from the temporary location. (issue 20913)
  • WinP 1.24: WinP sometimes kills wrong processes when using killRecursive. It was likely impacting process termination on Windows agents. (WinP Issue #22)

What's new in 2.33 (2016/11/20)

  • Reduce size of Jenkins WAR file by not storing identical copies of remoting.jar/slave.jar there. (pull 2633)
  • Prevent early deallocation of process references by Garbage Collector when starting a remote process. It was sometimes causing build failures with messages like FATAL: Invalid object ID 184 iuota=187 and java.lang.Exception: Object was recently deallocated. (issue 23271)
  • Make handling of internalization resource bundle names compliant with W3C standards. (issue 39034)
  • Redirect to login page in the case of authorisation error when checking connectivity to the Update Center. (issue 39741)
  • Remove the obsolete hudson.showWindowsServiceInstallLink property from the slave-agent.jnlp file. It was causing harmless security warnings in Java web start. (issue 39883)
  • Improved Polish translation. (pull 2640)

What's new in 2.32 (2016/11/16)

  • 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.

What's new in 2.31 (2016/11/13)

  • Performance: Improve responsiveness of Jenkins web UI on mobile devices. (issue 39172, continuation of the patch in 2.28)
  • It was not possible to connect Jenkins agents via Java Web Start due to the issue in Remoting 3.0. Upgraded to Remoting 3.1 with a fix. (issue 39596, regression in 2.26)
  • Prevent NullPointerException when rendering CauseOfInterruption.UserInterruption in build summary pages for non-existent users. (issue 38721 and issue 37282, regression in 2.14)
  • Reduce logging level when the localization resource is missing ResourceBundleUtil#getBundle(). (issue 39604)
  • ExtensionList.removeAll was not unimplemented in Jenkins extension management API. It was causing issues during dynamic loading of GitHub and BitBucket branch source plugins on the same instance. (issue 39520)
  • Remoting 3.1: hudson.remoting.Engine (mostly Java Web Start) was failing to establish connection if one of the URLs in urls parameter was malformed. (issue 39617)
  • Remoting 3.1: Add method for dumping diagnostics across all the channels (e.g. in the Support Core Plugin). (issue 39150)
  • Remoting 3.1: Improve the caller/callee correlation diagnostics in thread dumps. (issue 39543)
  • Remoting 3.1: Add the org.jenkinsci.remoting.nio.NioChannelHub.disabled flag for disabling NIO, mostly for debugging purposes. (issue 39290)
  • Remoting 3.1: Add extra logging to help diagnosing IOHub concurrent thread number spikes. (issue 38692)
  • Remoting 3.1: When a proxy fails, report what caused the channel to go down. (issue 39289)
  • Improved Polish translation. (pull 2631)

What's new in 2.30 (2016/11/07)

  • Adjust incompatible Actionable initialization changes made for issue 39404). It caused massive regressions in plugins like Jenkins Pipeline. (issue 39555, regression in 2.29)
  • Integration of Stapler 1.246 caused regressions in plugins depending on Ruby Runtime Plugin. Upgraded to Stapler 1.248 with a fix. (issue 39414, regression in 2.28)
  • Custom remoting enable/disable settings were not properly persisted on the disk and then reloaded. If the option has been configured in Jenkins starting from 2.16, a reconfiguration may be required. (issue 39465)

What's new in 2.29 (2016/11/06)

Warning! This release is not recommended for use due to issue 39555 and issue 39414. We are working on the out-of-order release (discussion).

  • Performance: Optimize log retrieval logic for large log files. (issue 39535)
  • Integration of Stapler 1.246 caused regressions in plugins depending on Ruby Runtime Plugin. Upgraded to Stapler 1.247 with a partial fix. (issue 39414, partial fix)
  • Jenkins startup does not fail if one of ComputerListeners throws exception in the onOnline() handler. (issue 38487)
  • Queue: Do not consider pending tasks from the internal scheduling logic when looking for duplicate tasks. It was causing race conditions in Jenkins Pipeline. (issue 39454)
  • Internal: Modify the Actionable API to provide methods to assist with manipulation of persisted actions. (issue 39404)
  • Internal: Jelly attribute documentation now supports the since tag. (Stapler pull #84)

What's new in 2.28 (2016/10/30)

  • Performance: Improve responsiveness of Jenkins web UI on mobile devices. (issue 39172)
  • Print warnings if none of Tool Installers can be used during the tool installation. (issue 26940)
  • Update the minimal required versions of the detached Maven Project plugin from 2.7.1 to 2.14. Changelog is available here. (pull 2606)
  • Update the minimal required versions of the detached JUnit plugin from 1.2-beta-4 to 1.6. Changelog is available here. (pull 2606))
  • Relax requirements of the JNLP connection receiver, which was rejections connections from agents not using JNLPComputerLauncher (e.g. from Slave Setup, vSphere Cloud and other plugins). No the connection is accepted from launchers implementing other proxying and filtering Launcher implementations. Particular plugins may require setting up the jenkins.slaves.DefaultJnlpSlaveReceiver.disableStrictVerification system property in the master JVM to allow connecting agents. (issue 39232, regression in 2.28)
  • Prevent resource leak in hudson.XmlFile#readRaw() in the case of encoding issues. (issue 39363)
  • Prevented endless loop in LargeText.BufferSession.skip(), which was causing hanging of Pipeline jobs in corner cases. (issue 37664)
  • Internal: Upgrade Stapler library from 1.243 to 1.246 with fixes required for the Blue Ocean project. More details are coming soon. Raw changes are listed here. (pull 2593)
  • Internal: Start defining APIs that are for the master JVM only. (issue 38370)
  • Internal: Update Guice dependency from 4.0-beta to 4.0. This change required upgrade of detached plugins (see above). (pull 2568)

What's new in 2.27 (2016/10/23)

  • Upgrade to the Remoting 3 baseline. Compatibility notes are available here. (issue 37564)
  • Remoting 3.0: New JNLP4-connect protocol, which improves performance and stability compared to the JNLP3-connect protocol. (issue 36871)
  • Remoting 3.0: Agents using slave.jar now explicitly require Java 7. (issue 37565)
  • Prevent deadlocks during modification of node executor numbers (e.g. during deletion of nodes). (issue 31768)
  • Add missing internationalization support to ResourceBundleUtil. It fixes internationalization in Blue Ocean and Jenkins Design Language. (issue 35845)
  • Internal: Make the code more compatible with Java 9 requirements and allow its editing in newest NetBeans versions with NB bug 268452. (pull 2595)
  • Internal: Icon handling API for items. Deprecate TopLevelItemDescriptor#getIconFilePathPattern() and switch to IconSpec. (issue 38960)

What's new in 2.26 (2016/10/17)

  • Allow CommandInterpreter build steps to set a build result as Unstable via the return code. Shell and Batch build steps now support this feature. (issue 23786)
  • Performance: Avoid acquiring locks in MaskingClassloader. (issue 23784)
  • Performance: Update XStream driver to improve performance of XML serilization/deserialization. (pull 2561)
  • Harden checks of prohibited names in user creation logic. Untrimmed spaces and different letter cases are being checked now. (issue 35967)
  • Performance: Fix the performance of file compress/uncompress operations over the remoting channel. (issue 38640, issue 38814)
  • Restore automatic line wrapping in Build Step text boxes with syntax highlighting. (issue 27367)
  • Properly remove disabled Administrative Monitors from the extension list. (issue 38678)
  • Remoting 2.62.2: Improve connection stability by turning on Socket Keep-alive by default. Keep-alive can be disabled via the -noKeepAlive option. (issue 38539)
  • Remoting 2.62.2: Prevent NullPointerException in Engine#connect() when host or port parameters are null or empty. (issue 37539)
  • Node build history page was hammering the performance of the Jenkins instance by spawning parallel heavy requests. Now the information is being loaded sequentially. (issue 23244)
  • Cleanup spelling in CLI help and error messages. (issue 38650)
  • Properly handle quotes and other special symbols in item names during form validation. (issue 31871)
  • Internal: Invoke hpi:record-core-location during the build in order to enabled coordinated run accross repositories. (pull 1894)
  • Internal: Bulk cleanup of @since definitions in Javadoc. (pull 2578)

What's new in 2.25 (2016/10/09)

  • Display transient actions for labels. (issue 38651)
  • Add user to restart log message for restart after plugin installation. (issue 38615)
  • Internal: Code modernization: Use try-with-resources a lot more (pull 2570)

What's new in 2.24 (2016/10/02)

  • Show notification with popup on most pages when administrative monitors are active. (issue 38391)
  • Allow disabling/enabling administrative monitors on Configure Jenkins form. (issue 38301)
  • Ensure exception stacktrace is shown when there's a FormException. (pull 2555)
  • Add new jenkins.model.Jenkins.slaveAgentPortEnforce system property, which prevents slave agent port modification via Jenkins Web UI and form submissions. (PR #2545)
  • Indicate hovered table row on striped tables. (issue 32148)
  • Decrease connection timeout when changing the JNLP agent port via Groovy system scripts. (issue 38473)
  • Added Serbian locatization. (PR #2554)
  • Exclude /cli URL from CSRF protection crumb requirement, making the CLI work with CSRF protection enabled and JNLP port disabled. (issue 18114)
  • Prevent instatination of jenkins.model.Jenkins on agents in the ProcessKillingVeto extension point. (issue 38534)
  • Fix handling of the jenkins.model.Jenkins.slaveAgentPort system property, which was not honored. (issue 38187, regression in 2.0)
  • CLI: Disable the channel message chunking by default. Prevents connection issues like invalid stream header: 0A0A0A0A. (issue 23232)
  • CLI: Connection over HTTP was not working correctly. (issue 34287, regression in 2.0)

What's new in 2.23 (2016/09/18)

  • Fix JS/browser memory leak on Jenkins dashboard. (issue 10912)
  • Build history was not properly updating via AJAX. (issue 31487)
  • Properly enable submit button on New Item page when choosing item type first. (issue 36539)

What's new in 2.22 (2016/09/11)

  • Change symbol and constructor for SCMTrigger to pollScm to make it usable in Pipeline scripts. (issue 37731)
  • Prompt user whether to add the job to the current view. (issue 19142)
  • Update to sshd module 1.7, allowing definition of client idle timeout. (pull 2534, issue 36420)
  • Update to sezpoz 1.12 with better diagnostics. (pull 2525)
  • Fix NullPointerException when descriptor is not in DescriptorList. (issue 37997)
  • Use the correct 'gear' icon for Manage Jenkins in Plugin Manager. (issue 34250)

What's new in 2.21 (2016/09/04)

  • Ask for confirmation before canceling/aborting runs. (issue 30565)
  • Add newline after the text in userContent/readme.txt. (PR #2532)
  • Fixed the missing icon in the System Script console. (issue 37814)
  • Print warnings to system logs and administrative monitors when Jenkins initializarion does not reach the final milestone. (issue 37874, diagnostics for issue-37759)
  • Developer API: UpdateSite#getJsonSignatureValidator() can be now overriden and used in plugins. (PR #2532)

What's new in 2.20 (2016/08/28)

  • Make Cloud.PROVISION permission independent from Jenkins.ADMINISTER. (issue 37616)
  • Allow the use of custom JSON signature validator for Update Site metadata signature checks. (issue 36537)
  • Do not process null CRON specifications in build triggers. (issue 36748, enhances fix in 2.15)
  • Setup wizard now checks if the restart is supported on the system before displaying the restart button. (issue 33374)
  • Test Windows junctions before Java 7 symlink in symbolic link checks. (issue 29956)
  • Fixed background color in the ComboBoxList element in order to make options visible. (issue 37549)
  • Fixed editing default view description with automatic refresh. System message is not being displayed instead of the view description. (issue 37360)
  • Fixed process tree management logic on Solaris with 64-bit JVMs. (issue 37559)

What's new in 2.19 (2016/08/21)

  • Prevent File descriptor leaks when reading plugin manifests. It causes failures during the upgrade of detached plugins on Windows. (issue 37332, regression in 2.16)
  • Prevent resource leaks in AntClassLoader being used in the core. (issue 37561)
  • Fix the wrong message about empty field in the case duplicate item name in the New Item dialog. (issue 34532)
  • Allow invoking Upgrade Wizard when Jenkins starts up. It can be done by placing an empty jenkins.install.InstallUtil.lastExecVersion file in JENKINS_HOME. (issue 37438)
  • Replace repetitious "website" and "dependencies" text in the Setup Wizard by icons. (issue 37523)
  • Expose Job name to system logs when Jenkins fails to create a new build with IllegalStateException. (issue 33549)
  • Downgrade Queue#maintain() message for dead executors during task mapping from INFO to FINE. (PR #2510)

What's new in 2.18 (2016/08/15)

  • Better diagnostics and robustness against old ChangeLogAnnotator API usage in plugins. Enhances JENKINS-23365 fix in 1.569. (issue 36757)
  • Prevent open file leak when the agent channel onClose() listener writes to the already closed log. (issue 37098)
  • Stop A/B testing of the remoting JNLP3 protocol due to the known issues. The protocol can be enabled manually via the jenkins.slaves.JnlpSlaveAgentProtocol3.enabled system property. (issue 37315)
  • When checking Update Center, append ?uctest parameter to HTTP and HTTPS URLs only. (issue 37189)
  • Incorrect formatting of messages in the Upate Center and Setup Wizard. (issue 36757)
  • Massive cleanup of issues reported by FindBugs. User-visible issues - wrong log message formatting bugs in the Update Center and user creation logic. (issue 36717, PR #2459)
  • Remoting 2.61: JNLP Slave connection issue with JNLP3-connect when the generated encrypted cookie contains a newline symbols. (issue 37140)
  • Remoting 2.61: Retry loading classes when remote classloader gets interrupted. (issue 36991)
  • Remoting 2.61: Improve diagnostics of Local Jar Cache write errors. (remoting PR #91)
  • Remoting 2.62: Be robust against the delayed EOF command when unexporting input and output streams. (issue 22853)
  • Remoting 2.62: Cleanup of minor issues discovered by FindBugs. (remoting PR #96)
  • Remoting 2.62: Improve class filtering performance in remote invocations. (issue 37218)
  • Remoting 2.62: TCP agent connection listener now publishes a list of supported agent protocols to speed up the connection setup. (issue 37031)
  • Improve German, Lithuanian and Bulgarian translations. (PR #2473, PR #2470, PR #2498 )

What's new in 2.17 (2016/08/05)

  • Don't load all builds to display the paginated build history widget. (issue 31791)
  • Add dagnostic HTTP response to TCP agent listener. (issue 37223)
  • Internal: Invoke FindBugs during core build. (issue 36715)

What's new in 2.16 (2016/07/31)

  • Fix plugin dependency resolution. Jenkins will now refuse to load plugins with unsatisfied dependencies, which resulted in difficult to diagnose problems. This may result in errors on startup if your instance has an invalid plugin configuration., check the Jenkins log for details. (issue 21486)
  • Decouple bouncycastle libraries from Jenkins into bouncycastle-api plugin. (issue 36923)
  • Upgrade to instance-identity module 2.1. (issue 36922)
  • Hide the Java Web Start launcher when the TCP agent port is disabled. (issue 36996)
  • Allow admins to control the enabled agent protocols on their instance from the global security settings screen. (issue 37032)
  • Make sure that the All view is created. (issue 36908)
  • Remove trailing space from Hudson.DisplayName in Spanish, which resulted in problems with Blue Ocean. (issue 36940)
  • Honor non-default update sites in setup wizard. (issue 34882)
  • Display delete button only when build is not locked. (pull 2483)
  • Use build start times instead of build scheduled times in build timeline widget. (issue 36732)
  • Ensure that detached plugins are always at least their minimum version. (issue 37041)
  • Internal: Move CLI commands wait-node-online/wait-node-offline from core to CLI module. (issue 34915)
  • Internal: Allow accessing instance identity from core. (issue 36871)
  • Internal: Fix the default value handling of ArtifactArchiver.excludes. (issue 29922)

What's new in 2.15 (2016/07/24)

  • Tell browsers not to cache or try to autocomplete forms in Jenkins to prevent problems due to invalid data in form submissions. From now on, only select form fields (e.g. job name) will offer autocompletion. (issue 18435)
  • Add a cache for user information to fix performance regression due to SECURITY-243. (issue 35493)
  • Prevent null pointer exceptions when not entering a cron spec for a trigger. (issue 36748)
  • Defend against some fatal startup errors. (issue 36666)
  • Use the icon specified by the computer implementation on its overview page. (issue 36775)
  • Internal: Extract the CLI command offline-node from core. (issue 34468)

What's new in 2.14 (2016/07/17)

  • Minor optimization in calculation of recent build stability health report. (issue 36629)
  • Underprivileged users were unable to use the default value of a password parameter. (issue 36476)
  • Allow keeping builds forever with custom build retention strategies. (issue 26438)
  • Properly handle exceptions during global configuration form submissions when SCM Retry Count field is empty. (issue 36387)
  • When a user aborts the build, this user may be restored after its deletion. (issue 36594)
  • Prevent potential NullPointerException in the BlockedBecauseOfBuildInProgress build blockage cause visualization. (issue 36592)
  • CLI commands quiet-down and cancel-quiet-down were extracted from the core to CLI. (issue 35423)
  • Developer API: Extract listing of computer names to the ComputerSet#getComputerNames() method. (issue 35423)
  • Developer API: Add a try with resources form of impersonation. (issue 36494)
  • Developer API: Usage of ItemCategory#MIN_TOSHOW in external plugins is now restricted. (issue 36593)

What's new in 2.13 (2016/07/10)

  • 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)
  • Make setup wizard installation panel usable on small screens. (issue 34668)

What's new in 2.12 (2016/07/05)

  • 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)
  • 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)

What's new in 2.11 (2016/06/26)

  • Provide an extension point for SCM decisions such as whether to poll a specific job's backing repository for changes. (issue 36123)

What's new in 2.10 (2016/06/19)

  • Better exception message if a SecurityRealm returns null when loading a user. (PR #2407)
  • Prevent NullPointerException in user registration if user ID is not specified. (issue 33600)
  • Internal: It was impossible to build Jenkins on 32-bit Linux machine. (issue 36052, regression from 2.0)

What's new in 2.9 (2016/06/13)

  • Always send usage statistics over HTTPs to the new hostname. (issue 35641)
  • Performance: Disable AutoBrowserHolder by default to improve the changelog rendering performance. (issue 35098)
  • Remoting 2.60: Make the channel reader tolerant against Socket timeouts. (issue 22722)
  • Remoting 2.60: Proper handling of the no_proxy environment variable. (issue 32326)
  • Remoting 2.60: Do not invoke PingFailureAnalyzer for agent=>master ping failures. (issue 35190)
  • Remoting 2.60: hudson.Remoting.Engine#waitForServerToBack now uses credentials for connection. (issue 31256)
  • Remoting 2.60: Fix potential file handle leaks during the build agent (FKA slave) startup. issue 35190)
  • Internal: Upgrade Groovy to 2.4.7 to finalize the fix in Jenkins 2.7. (issue 34751)
  • API: Allow delegating TaskListener creation to build agent implementations. (issue 34923)
  • API: Restrict external usages of jenkins.util.ResourceBundleUtil. (issue 35381)
  • API: Make it easier for UpdateSites to tweak the InstallationJob. (issue 35402)

What's new in 2.8 (2016/06/05)

  • Explicitly declare compatibility of Windows build agent service with .NET Framework 4. (PR #2386)
  • API: Introduce new listener extension point for slave creation/update/deletion. (issue 33780)
  • Lossless optimization sizes of PNG images in Jenkins. (PR #2379)
  • Fix the repeatable item delete button layout in Safari. Addresses Build Steps and other such configuration items. (issue 35178)
  • Installation Wizard: Do not offer creating new admin user if the security is preconfigured. (issue 34881)
  • Prevent NullPointerException on startup after update from Jenkins 2.5. (issue 35206)
  • Honor noProxy settings from "Manage Jenkins > Manage Plugins > Advanced". (issue 31915)
  • Add NTLM support to the proxy validation logic. (PR #1955)

What's new in 2.7 (2016/05/29)

  • Prevent stack overflow when using classes with complex generic type arguments (e.g. hudson.model.Run or hudson.model.Job). Regression in Groovy 2.4, see GROOVY-7826 for more info. (issue 34751)
  • Do not invoke PingFailureAnalyzer for agent=>master ping failures. (issue 35190)
  • Fix keyboard navigation in setup wizard. (issue 33947)
  • Cleanup of Javascript issues discovered by the JSHint static analyis tool. (issue 35020)
  • DelegatingComputerLauncher now accepts child classes in its hooks (pre-offline, pre-connect, etc.). (issue 35198)
  • Internal: Activate JSHint in Jenkins js-builder component during the core build. (issue 34438)
  • Internal: Add symbol annotation for SystemInfoLink. (PR #2375)
  • Internal: NodeJS build was malfunctional on Win x64. (issue 35201)

What's new in 2.6 (2016/05/22)

  • Adapt the Setup Wizard GUI to provide a similar user experience when upgrading Jenkins. (issue 33663)
  • Improve extensibility of the Setup Wizard GUI: InstallState and InstallStateFilter extension points. (PR 2281 as supplimentary change for issue 33663)
  • Improve User Experience in the New Item form. Submit button is always visible. (issue 34244)
  • Allow passing a list of safe job parameters in ParametersAction. It simplifies fixing of plugins affected by SECURITY-170 fix. (PR 2353)
  • Added Symbol annotations for ParametersDefinition and BuildDiscarder properties. (PR 2358)
  • Extended the online-node CLI command for accepting multiple agents. (issue 34531)
  • Listed Parameters should reflect what was used when the build ran (filtering of unsafe parameters). (issue 34858)
  • Scalability: Fix performance issues in the XML unmarshalling code. (issue 34888)
  • Support the legacy icon size specification approach in the Status Ball visualization. (issue 25220, regression in 1.586)
  • Migrate the leftover system properties to the new engine introduced in 2.4. (issue 34854)
  • Do not show warnings abot a missing Tool Installer if it is present in at least one Update Site. (issue 34880)
  • Prevent hanging of the installation wizard due to the plugin status update issue. (issue 34708)
  • Internal: CLI command connect-node was extracted from the core to CLI. (issue 31417)

What's new in 2.5 (2016/05/16)

  • Do not throw exceptions if Jenkins.getInstance() returns null instance. It was causing failures on Jenkins agents in the case of unexpected API usage by agents. (issue 34857, regression in 2.4)
  • Replace jenkins.model.Jenkins.disableExceptionOnNullInstance by jenkins.model.Jenkins.enableExceptionOnNullInstance to address the behavior change. (issue 34857)

What's new in 2.4 (2016/05/15)

  • Internal/build: jenkins-ui (NPM module) is private, used only internally. (issue 34629)
  • Do not print stack trace during a plugin installation if it is missing its dependencies. (issue 34683)
  • Allow specifying custom AbortExceptions. (pull 2288)
  • Add a hudson.model.UpdateCenter.defaultUpdateSiteId system property, which allows specifying an alternate default Update Site ID. (issue 34674)
  • Allow setting of properties from context.xml and web.xml in addition to setting system properties from the command line. (issue 34755)
  • Remove the historical initialization of CVS changelog parser for jobs without explicit SCM definition. Warning! This change may potentially cause a regression if a Jenkins plugin depends on this default behavior and injects changelogs without SCM. (issue 4610)
  • Add the JOB_BASE_NAME environment variable to builds (job name without path). (issue 25164)
  • Allow overriding Jenkins UpdateCenter by a custom implementation. (issue 34733)
  • Allow overriding Jenkins PluginManager by a custom implementation. (issue 34681)
  • Installation Wizard: Allow altering the list of suggested plugins from update sites. (issue 34833)
  • Prevent hanging of the Installation Wizard if the default Update Site ID cannot be resolved. In such case an error message will be displayed. (issue 34675)
  • Prevent hanging of the Installation Wizard if the internet check is skipped for the default update site. (issue 34705)
  • Do not fail with error when enabling a plugin, which has been already enabled. It prevents errors in the new Installation Wizard, which installs plugins in parallel. (issue 34710)
  • Plugin Manager was building incorrect list of bundled plugins for nested dependencies. (issue 34748)
  • Prevent fatal failure of the updates check PeriodicWork if update site certificate is missing. (issue 34745)
  • Pick up missing Downloadable items on restart if all update centers are up to date. (issue 32886)
  • Allow starting non-AbstractProject (e.g. Pipeline) jobs from CLI. (issue 28071)
  • Disable JSESSIONID in URLs when running in the JBoss web container. It prevents Error 404 due to invalid links starting from Jenkins 1.556. More info: WFLY-4782 (issue 34675)
  • Prevent RSS ID collisions for items with same name in different folders. (issue 34767)
  • Prevent NoSuchMethodException in loginLink.jelly when attempting to start a job using REST API. (issue 31618)
  • Make ToolInstallers to follow HTTP 30x redirects. (issue 23507)
  • Prevent NullPointerException in the parameter definition job property if it gets initialized incorrectly. (issue 34370)
  • Bundle Font Awesome and Google Fonts: Roboto dependencies to prevent failures in the offline mode. (issue 34628)
  • Internal: CLI commands disconnect-node and reload-configuration were extracted from the core to CLI. (issue 34328 and issue 31900)
  • Internal: Support latest source version to avoid compile time warnings with JDK7. annotation-indexer and sezpoz have been updated to 1.11. (issue 32978)
  • Developer API: Switch Jenkins.getInstance() to @Nonnull. (new system property) (pull 2297)
  • Remoting, scalability: Ensure that the unexporter cleans up whatever it can each GC sweep. (issue 34213)
  • Remoting: Force class load on UserRequest to prevent deadlocks on Windows nodes agents in the case of multiple classloaders. (Controlled by hudson.remoting.RemoteClassLoader.force) (issue 19445)
  • Remoting: Allow Jenkins admins to adjust the socket timeout. (Controlled by hudson.remoting.Engine.socketTimeout) (issue 34808)
  • Remoting: Allow disabling the remoting protocols individually. Allows working around compatibility issues like JENKINS-34121. (Controlled by PROTOCOL_CLASS_NAME.disabled) (issue 34819)

What's new in 2.3 (2016/05/11)

  • Important security fixes (see the security advisory for details and plugin compatibility issues)

What's new in 2.2 (2016/05/08)

  • Add symbol annotations on core. (pull 2293)
  • Upgrade Stapler to 1.243. (pull 2298)
  • Internal/build: Enable JSHint during build. (issue 34438)
  • Workaround for unpredictable Windows file locking. (issue 15331)
  • Improved Lithuanian translation. (pull 2309)
  • Improved French translation. (pull 2308)
  • Restrict access to URLs related to plugin manager. (issue 31611)
  • API: New HttpSessionListener extension point. (pull 2303)
  • Don't go through init sequence twice. (pull 2177)
  • Create Item form can be navigated using keyboard again. (issue 33822)
  • Fix inline help for node name field. (issue 34601)

What's new in 2.1 (2016/05/01)

  • Enable disabled dependencies during plugin installations. (issue 34494)
  • Force ordering between GPG and jarsigner to ensure correct GPG signature. (pull 2285)
  • Secured Jenkins installations didn't properly save the queue on shutdown. (issue 34281)
  • Add dependency resolution to manually uploaded plugins. (issue 15057)
  • Show Jenkins version on setup wizard. (issue 33535)
  • Update remoting to 2.57. (issue 33999)
  • Allow retrying plugin downloads in setup wizard. (issue 33244)
  • Add links to homepage of plugins and dependencies in setup wizard. (issue 33936, issue 33937)
  • Improved handling of the 'close' button during setup wizard. (issue 34137)
  • Wrong spacing in flat mode of 'Create Item' screen. (issue 31162)
  • Add timestamp to the jarsigner signature. (pull 2284)
  • Improved French translation. (pull 2267)
  • Improved Lithuanian translation. (pull 2286)
  • Improved Brazilian Portuguese translation. (pull 2273)
  • Prevent errors when hiding management links. (issue 33683)
  • Internal: Make logger field private. (issue 34093)
  • Shorter timeout for plugin downloads to prevent setup wizard from hanging. (issue 34174)
  • Check if job is buildable before showing 'Build with parameters' page. (issue 34146)
  • Fixed race condition in slave offline cause. (issue 34448)
  • Allow enabling disabled dependencies in the plugin manager to fix broken configurations. (issue 32340)
  • Always display clicked scrollspy items as active in setup wizard. (issue 33948)
  • Prevent multiple installations of the same dependency. (issue 33950)

What's new in 2.0 (2016/04/20)

More detailed information about the new features in Jenkins 2.0 on the overview page.
  • 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)

What's new in 1.656 (2016/04/03)

  • Advertise the correct JNLP port when using the system property override. (pull 2189)
  • Pipeline runs not reliably started after restart when using Build after other projects are built. (issue 33971)
  • Prevent badges in build history sidepanel widget from overlapping page contents. (issue 33826)
  • Developer API: Allow putting @Initializer annotations on instance methods. (pull 2176)
  • Core development: Rerun failing tests rather than ignoring flaky tests. (pull 2188)
  • Core development: Prevent leaking threads due to NioChannelSelector. (pull 2176)

What's new in 1.655 (2016/03/27)

  • Downgrade Stapler to 1.239 to fix remote API issues. (issue 33546, issue 33605)
  • Plugin filters were failing to be removed and blocking restart. (issue 33681)
  • Do not hardcode .bat extension for Maven on Windows. (issue 33693)
  • Reduce log level of UncaughtExceptionHandler message on startup. (pull 2171)
  • Don't store redundant build causes, make list of build causes immutable. (issue 33467)
  • Developer API: Add Fingerprint.getXStream(). (pull 2163)
  • Core Development: Add the .mvn directory and set default -Xmx value. (pull 2162)

What's new in 1.654 (2016/03/21)

  • 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)

What's new in 1.653 (2016/03/13)

  • Support encrypted communication between master and JNLP slaves. (issue 26580)
  • Fix argument masking for sensitive build variables on Windows. (issue 28790)
  • More compact representation of redundant build causes. (issue 33467)
  • Developer API: Jenkins.getInstance() cannot be null anymore. Introduced Jenkins.getInstanceOrNull().

What's new in 1.652 (2016/03/06)

  • Under some conditions Jenkins startup could fail because of incorrectly linked extensions; now recovering more gracefully. (issue 25440)
  • Developer API: Add WorkspaceList.tempDir(…). (issue 27152)

What's new in 1.651 (2016/02/28)

  • 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)

What's new in 1.650 (2016/02/24)

What's new in 1.649 (2016/02/21)

  • 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)

What's new in 1.648 (2016/02/17)

What's new in 1.647 (2016/02/04)

  • Retrieve tool installer metadata from all update sites. (issue 32328)

What's new in 1.646 (2016/01/25)

  • The official parent POM for plugins is now hosted in the plugin-pom repository, starting with version 2.0. (issue 32493)
  • Under some conditions a build record could be loaded twice, leading to erratic behavior. (issue 22767)
  • Fields on the parameters page are no longer aligned at the bottom. (issue 31753)
  • Added missing translations for Polish language. (pull 1986)

What's new in 1.645 (2016/01/18)

  • Cleanup of CLI error handling and return codes. (issue 32273)
  • Boot failure hook script did not work, WebAppMain.contextDestroyed produces weird errors. (issue 24696)
  • Don't request usage statistics update if Jenkins hasn't finished loading. (issue 32190)
  • Split test harness into separate artifact. (issue 32478)
  • Fix encoding of some help files. (pull 1975)
  • Remove JUnit dependency pulled in from JLine. (pull 1981)
  • Pass $it to contents of dropdownDescriptorSelector. (issue 19565)

What's new in 1.644 (2016/01/10)

  • 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 %BASE%. (pull 1951)

What's new in 1.643 (2015/12/20)

  • Fix when multiple clouds are set up and provisioning of a node is denied. (issue 31219)
  • Allow retrying core update when the first attempt failed. (issue 11016)
  • Allow specifying the default TCP slave agent listener port via system property. (commit 653fbdb)

What's new in 1.642 (2015/12/13)

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

What's new in 1.641 (2015/12/09)

What's new in 1.640 (2015/12/07)

  • Added support of default values in the enum.jelly form element. (PR 1926)
  • Bytecode Compatibility Transformer computes the common super class without loading classes. Fixes the ClassCircularityError exception in Ruby Runtime Plugin. (issue 31019)
  • Extended Choice parameter definitions could not be saved since 1.637. (issue 31458)
  • Display expected CRON run times even if a warning occurs. (issue 29059)
  • Rework the online-node command implementation, no functional changes. (issue 31776)
  • Fix the footer behavior in particular cases. (issue 30304, issue 31395)
  • API changes: Deprecate subclassing of hudson.Plugin. (PR 1940)

What's new in 1.639 (2015/11/29)

  • “Discard old builds” setting would be lost if resaving job configuration as of 1.637 without rechecking the box. (issue 31518)
  • “Form too large” errors from Jetty when submitting massive forms. (issue 20327)
  • Multiple workspace browser features broken on Windows masters since 1.634. (issue 31015)

What's new in 1.638 (2015/11/11)

What's new in 1.637 (2015/11/08)

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

What's new in 1.636 (2015/11/01)

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

What's new in 1.635 (2015/10/25)

  • 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)

What's new in 1.634 (2015/10/18)

  • 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)

What's new in 1.633 (2015/10/11)

  • 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)

What's new in 1.632 (2015/10/05)

  • 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)

What's new in 1.631 (2015/09/27)

  • Add proper labels for plugin categories assigned to some plugins. (PR 1758)

What's new in 1.630 (2015/09/20)

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

What's new in 1.629 (2015/09/15)

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

What's new in 1.628 (2015/09/06)

  • Replaced all non java.util.logging logging libraries with slf4j interceptors. (PR 1816)
  • Document allBuilds subtree in remote API for jobs. (PR 1817)

What's new in 1.627 (2015/08/30)

  • 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)

What's new in 1.626 (2015/08/23)

  • 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)

What's new in 1.625 (2015/08/17)

  • 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)

What's new in 1.624 (2015/08/09)

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

What's new in 1.623 (2015/08/02)

No notable changes in this release.

What's new in 1.622 (2015/07/27)

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

What's new in 1.621 (2015/07/19)

  • 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)

What's new in 1.620 (2015/07/12)

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

What's new in 1.619 (2015/07/05)

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

What's new in 1.618 (2015/06/29)

  • 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)

What's new in 1.617 (2015/06/07)

  • 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)

What's new in 1.616 (2015/05/31)

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

What's new in 1.615 (2015/05/25)

  • 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)

What's new in 1.614 (2015/05/17)

  • 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)

What's new in 1.613 (2015/05/10)

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

What's new in 1.612 (2015/05/03)

  • Jenkins now requires Java 7. (announcement, issue 28120)
  • 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)
  • 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)

What's new in 1.611 (2015/04/26)

  • 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

What's new in 1.610 (2015/04/19)

  • Since 1.598 overrides of Descriptor.getId were not correctly handled by form binding, breaking at least the CloudBees Templates plugin. (issue 26781)
  • Reverted in 1.611, reimplemented in 1.627. Archiving of large artifacts. Tar implementation cannot handle files having a size >8GB. (issue 10629)
  • The queue state was not updated between scheduling builds. (issue 27708, issue 27871)

What's new in 1.609 (2015/04/12)

  • 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)

What's new in 1.608 (2015/04/05)

  • PeepholePermalink RunListenerImpl oncompleted should be triggered before downstream builds are triggered. (issue 20989)
  • NPE when /script used on offline slave. (issue 26751)
  • Make periodic workspace cleanup configurable through system properties. (issue 21322)
  • Do not offer to restart on /restart and /safeRestart if the configuration does not support it. (issue 27414)
  • Polling was skipped while quieting down, resulting in ignored commit notifications. This behavior was changed. (issue 26208)
  • Starting this version, native packages are produced from the new repository. File issues related to installers and packages in the packaging component.

What's new in 1.607 (2015/03/30)

  • 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) Note that this change involved moving slave definitions outside the main config.xml file. If you downgrade after this, your slave settings will be lost.
  • 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)

What's new in 1.606 (2015/03/23)

  • Jenkins CLI doesn't handle arguments with equal signs (issue 21160)
  • master/slave communication ping reacts badly if a clock jumps. (issue 21251)
  • JNLP slaves can now connect to master through HTTP proxy. (issue 6167)
  • Fixes to several security vulnerabilities. (advisory)

What's new in 1.605 (2015/03/16)

  • Integrate Stapler fix for queue item API always returning 404 Not Found since 1.601. (issue 27256)

What's new in 1.604 (2015/03/15)

  • 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)

What's new in 1.602 (2015/03/08)

  • Show Check Now button also on Available and Updates tabs of plugin manager. (PR 1593)

What's new in 1.601 (2015/03/03)

  • Regression with environment variables in 1.600. (issue 27188)
  • Errors with concurrent matrix builds since 1.597. (issue 26739)
  • Errors in Dashboard View plugin since 1.597. (issue 26690)
  • Robustness improvement when setting up Archive Artifacts programmatically. (issue 25779)
  • Map onto Run (issue 27096)

What's new in 1.600 (2015/02/28)

  • Fixes to multiple security vulnerabilities. (security advisory)
  • 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)

What's new in 1.599 (2015/02/16)

  • 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)

What's new in 1.598 (2015/01/25)

  • 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)

What's new in 1.597 (2015/01/19)

  • 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)

What's new in 1.596 (2015/01/04)

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

What's new in 1.595 (2014/12/21)

What's new in 1.594 (2014/12/14)

  • 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)

What's new in 1.593 (2014/12/07)

What's new in 1.592 (2014/11/30)

  • Performance problems on large workspaces associated with validating file include patterns. (issue 25759)

What's new in 1.591 (2014/11/25)

  • Always use forward slashes in path separators during in ZIP archives generated by Directory Browser (issue 22514)

What's new in 1.590 (2014/11/16)

  • 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)
  • API method to get non-null Jenkins instance with internal validation (issue 23339)

What's new in 1.589 (2014/11/09)

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

What's new in 1.588 (2014/11/02)

  • Unnecessarily slow startup time with a massive number of jobs. (issue 25473)
  • Custom workspace option did not work under some conditions. (issue 25221)

What's new in 1.587 (2014/10/29)

  • Queue didn't always leave a trail for cancelled items properly (issue 25314)
  • JNA update for deprecated JNA-POSIX library. (issue 24527)
  • Introduced slave-to-master security mechanism to defend a master from slaves. (SECURITY-144)

What's new in 1.586 (2014/10/26)

  • 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)

What's new in 1.585 (2014/10/19)

  • Build health computed repeatedly for a single Weather column cell. (issue 25074)
  • Missing workspace page should use 404 status code. (issue 10450)
  • Fixed memory leak occurring on pages producing incremental output with a progress bar. (issue 25081)
  • Updated SSH Slaves plugin to 1.8.
  • Due to the reaction, default umask in debian package is set back to 022 (issue 25065)
  • Greater-than characters are not escaped in HTML outputs like e-mails (issue 16184)
  • Thread starvation from OldDataMonitor. (issue 24763)
  • Integer overflow in quiet-down timeout calculation (issue 24914)
  • Don't put session IDs in URLs even when cookies are disabled. (issue 22358)
  • Show keep build log reason in tool tips (pull request 1422)
  • Do not disable projects, which do not support such operation (like Matrix configurations) (issue 24340)
  • Improved the scalability of SSH slaves plugin caused by global lock in SecureRandom (issue 20108)
  • Incorporated a fix for "Poodle" (CVE-2014-3566) vulnerability in the HTTPS connector of "java -jar jenkins.war" (issue 25169)

What's new in 1.584 (2014/10/12)

  • 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)
  • Use POST for cancel quiet down link. (issue 23020, issue 23942)
  • Do not consider port in use error to be a successful start of Jenkins on Debian. (issue 24966)

What's new in 1.583 (2014/10/01)

What's new in 1.582 (2014/09/28)

  • Channel reader thread can end up consuming 100% CPU. (issue 23471)
  • CancelledKeyException can cause all JNLP slaves to disconnect (and the problem remains until restart). (issue 24050)
  • Consider dynamic label assignments for label load statistics. (issue 15576)
  • Use Windows line endings for batch file build steps. (issue 7478)
  • Reduced the logging clutter about the lack of @ExportedBean. (issue 24458)
  • Character encoding problem in form submission when file parameters are present. (issue 11543)
  • Improved error handling and "in-progress" UI feedback in JNLP slave to service installation.
  • Winstone 2.4: reverse proxy support in the logging, request header size limit control, and different private key password from keystore password. (issue 23665)
  • umask setting on Debian did not work. (pull 1397)
  • handle job move when buildDir is configured to a custom location. (issue 24825)

What's new in 1.581 (2014/09/21)

  • Use slightly larger Jenkins head icon. (pull 1360)
  • Allow setting a system property to disable X-Frame-Options header. (issue 21881)
  • Explicitly set background color of various UI elements to white. (issue 24625)
  • Wrong Hebrew localization resulted in broken console output since 1.539. (issue 24614)

What's new in 1.580 (2014/09/14)

  • Health reports saved to disk before 1.576 showed no weather icon since that version. (issue 24407)
  • Renaming jobs fails if parent dir of custom build records directory does not exist. (issue 19764)
  • Add editable descriptions for label atoms. (issue 6153)

What's new in 1.579 (2014/09/06)

  • ConcurrentModificationException in RunListProgressiveRendering. (issue 21437)
  • StackOverflowError for some old SCMListeners. (issue 23522)
  • Job status page shows "Build has been executing for null on master" for flyweight tasks. (issue 20307)
  • File locking issue when running functional tests on Windows. (issue 21977)
  • Tolerate ?auto_refresh in reverse proxy check on /manage page. (issue 24014)
  • Debian package now sets umask to 027 by default for better default privacy. See /etc/default/jenkins to change this. (issue 24514)

What's new in 1.578 (2014/08/31)

  • Added 'no-store' to the 'Cache-Control' header to avoid accidental information leak through local cache backup (issue 24337)
  • Deadlock in OldDataMonitor. (issue 24358)
  • Use absolute links for computer sidepanel items so they don't break as easily. (issue 23963)

What's new in 1.577 (2014/08/24)

  • Failure to migrate legacy user records in 1.576 properly broke Jenkins, resulted in NullPointerExceptions. (issue 24317)
  • Jenkins did not correctly display icons contributed by plugins in 1.576. (issue 24316)
  • Moved JUnit reporting functionality to a plugin. (issue 23263)
  • Fixed ClassCastException on org.dom4j.DocumentFactory (issue 13709)
  • Jenkins now logs warnings when it fails to export objects to XML/JSON. This can result in a lot of log output in case of heavy API use. We recommend that API users use the ?tree parameter instead of ?depth. (commit)
  • Allow BuildStep to work with non-AbstractProject (issue 23713)
  • Improved class loading performance when using Groovy. (issue 24309)
  • Prevent NullPointerException from (issue 24110)
  • Make the lifetime of queue items cache configurable. (issue 19691)
  • Support --username/--password authentication for CLIMethod based CLI commands. (issue 23988)
  • Don't link to /safeRestart after update if Jenkins cannot restart itself. (issue 24032)
  • Properly consider busy executors when reducing a node's executor count. (issue 24095)

What's new in 1.576 (2014/08/18)

  • Worked around "incompatible InnerClasses attribute" bug in IBM J9 VM (issue 22525)
  • Fixed a file descriptor leak with CLI connections. (issue 23248)
  • Fixed a regression that removed all users with uppercase letters in the user name since 1.566. (issue 23872)
  • Improving security of set-build-parameter and set-build-result CLI commands. (issue 24080)
  • Startup can be broken by deeply recursive causes in build records. (issue 24161)
  • Displaying unabridged test result trend on project index page defeated lazy loading. (issue 23945)
  • Added support for host:port format in X-Forwarded-Host header. (commit 19d8b80)
  • API to launch processes without printing the command line. (issue 23027)
  • Added option to increase impact of test failures on the weather report. (issue 24006)
  • Modernized sidebar <l:pane>s and making them work better with new layout. (issue 23810, issue 23829)
  • Add option to CLI to skip key authentication (e.g. when there's a password on the default key). (issue 23970)
  • Modernize tabBar and bigtable. Makes the project view look better. Same for Plugin Manager. (issue 24030)

What's new in 1.575 (2014/08/10)

  • Move option to fingerprint artifacts to Archive the Artifacts, Advanced options. (commit f43a450)
  • Move option to keep dependencies (builds) from Fingerprint to Advanced Project Options. (commit a8756c6)
  • Improved validation of Build Record Root Directory setting. (issue 14538)
  • Indicate which node the workspace being viewed is on. (issue 23636)
  • Show full project name for projects in folders. (issue 22971)
  • UI redesign: Shrink the top bar, change logo, changed links in top bar. (pull 1327, (pull 1328)
  • Killing processes started by builds on Unix was broken as of 1.553. (issue 22641)
  • Should not stop a build from finishing just to compute JUnit result difference to a prior build which is still running. (issue 10234)
  • Do not show link to System Information page for offline slaves, make page more robust when offline. (issue 23041)
  • Fix link to SCM polling log from downstream job cause. (issue 18048)
  • Autocomplete logger names. (issue 23994)
  • UI redesign: Fix links in header bar when logged in.
  • Do not show changes for the build at the lower bound of the changes list. (issue 18902)
  • Restrict access to SCM trigger status page to administrators. (pull 1282)

What's new in 1.574 (2014/07/27)

What's new in 1.573 (2014/07/20)

  • UI redesign: Changed element alignment, removed sidebar link underlines (pull 1314, pull 1316)
  • Word-break links in build logs to preserve page width (pull 1308)
  • Log rotation fails with "...looks to have already been deleted" (issue 22395)
  • Fixed unnecessary eager loading of build records in certain code path. (issue 18065)

What's new in 1.572 (2014/07/13)

  • UI redesign: Changed header, made layout <div>-based and responsive (pull 1310)
  • Improved handling of X-Forwarded-* headers (issue 23294)
  • Do not offer automatic upgrade if war parent directory is not writable (issue 23683)

What's new in 1.571 (2014/07/07)

  • IllegalArgumentException from AbstractProject.getEnvironment when trying to get environment variables from an offline slave. (issue 23517)
  • Overall.READ is sufficient to access /administrativeMonitor/hudsonHomeIsFull/ (SECURITY-134)
  • Master computer is not notified using ComputerListener (issue 23481)

What's new in 1.570 (2014/06/29)

  • Add CLI commands to add jobs to and remove jobs from views (add-job-to-view, remove-job-from-view). (issue 23361)
  • UI improvements / refreshing. (issue 23492)
  • Failed to correctly resave a project configuration containing both a forward and a reverse build trigger. (issue 23191)
  • Long log output resulted in missing Console link in popup. (issue 14264)
  • HTTP error 405 when trying to restart ssh host. (issue 23094)
  • Move 'None' Source Code Management option to top position. (issue 23434)
  • Fixed NullPointerException when ArctifactArchiver is called for a build with the undefined status. (issue 23526)
  • Allow disabling use of default exclude patterns in ArctifactArchiver (.git, .svn, etc.). (issue 20086)
  • Fixed NullPointerException when "properties" element is missing in a job's configuration submission by JSON (issue 23437)

What's new in 1.569 (2014/06/23)

  • Jenkins can now kill Win32 processes from Win64 JVMs. (issue 23410)
  • Allow custom security realm plugins to fire events to SecurityListeners. (issue 23417)
  • Recover gracefully if a build permalink has a non-numeric value. (issue 21631)
  • Fix form submission via the Enter key for Internet Explorer version 9. (issue 22373)
  • When Jenkins had a lot of jobs, submitting a view configuration change could overload the web server, even if few of the jobs were selected. (issue 20327)

What's new in 1.568 (2014/06/15)

  • Fixed JNLP connection handling problem (issue 22932)
  • Fixed NullPointerException caused by the uninitialized ProcessStarter environment in build wrappers (issue 20559)
  • Support the range notation for pagination in API (issue 23228)
  • Incorrect redirect after deleting a folder. (issue 23375)
  • Incorrect links from Build History page inside a folder. (issue 19310)
  • API changes allowing new job types to use SCM plugins. (issue 23365)
  • API changes allowing to create nested launchers (DecoratedLauncher) (issue 19454)

What's new in 1.567 (2014/06/09)

  • Fixed a reference counting bug in the remoting layer. (commit)
  • Avoid repeatedly reading symlinks from disk to resolve build permalinks. (issue 22822)
  • Show custom build display name in executors widget. (issue 10477)
  • CodeMirror support for shell steps broke initial configuration. (issue 23151)
  • Jenkins on Linux can not restart after plugin update when started without full path to java executable (issue 22818)
  • Fixed NullPointerException when a build triggering returns null cause (issue 20499)
  • Fixed NullPointerException on plugin installations when invalid update center is set (issue 20031)
  • Use DISABLED_ANIME icon while building a disabled project (issue 8358)
  • Process the items hierarchy when displaying the Show Poll Thread Count option (issue 22934)
  • Compressed output was turned on even before Access Denied errors were shown for disallowed Remote API requests, yielding a confusing error. (issue 17374) (issue 18116)
  • Properly close input streams in FileParameterValue (issue 22693)
  • Incorrect failure age in the JUnit test results (issue 18626)
  • Fixed deletion links for JVM Crash error logs (issue 22617)
  • Distinguish "nodes for label offline" from "no nodes for label" (issue 17114)
  • Add causes to queue item tool tip (issue 19250)
  • RPM: added JENKINS_HTTPS_KEYSTORE and JENKINS_HTTPS_KEYSTORE_PASSWORD options to Jenkins sysconfig file (issue 11673)
  • RPM: Do not install jenkins.repo file (issue 22690)
  • Don't advertise POSTing config.xml on master (issue 16264)
  • Handle null parameter values to avoid massive executor deaths (issue 15094)
  • Added an option to archive artifacts only when the build is successful (issue 22699)

What's new in 1.566 (2014/06/01)

  • Configurable case sensitivity mode for user IDs. (issue 22247)
  • Extension point for project naming strategies did not work from actual plugins. (issue 23127)
  • Introduce directly modifiable views (issue 22967)
  • Jenkins cannot restart Windows service (issue 22685)

What's new in 1.565 (2014/05/26)

  • Misleading error message trying to dynamically update a plugin (which is impossible) on an NFS filesystem. (issue 12753)
  • Updated component used by the swap space monitor to better support Debian and AIX.
  • SSH slave connections die after the slave outputs 4MB of stderr, usually during findbugs analysis (issue 22938)
  • Polling no longer triggers builds (regression 1.560) (issue 22750)
  • Allow markup formatter to be selected without enabling security. (issue 22028)
  • Fixed localization of build environment variable help. (issue 22867)

What's new in 1.564 (2014/05/19)

  • Improve list view performance on large instances with folders. (issue 22720)
  • Add indicator when build queue is filtered. (issue 22698)
  • Update bundled Matrix project plugin to 1.2 fixing issues introduced in 1.561. (issue 22879, issue 22798)

What's new in 1.563 (2014/05/11)

  • Memory exhaustion in remoting channel since 1.560. (issue 22734)
  • Configurable size for log buffer. (issue 22840)
  • Gesture to clear log buffer. (issue 22839)
  • Prevent up to two-minute delay before scheduling jobs from a cron trigger. (pull request 1216)
  • Occasional attempts to delete a build during log rotation which had already been deleted. (issue 22395)
  • Again show proper display names for build parameters. (issue 22755)

What's new in 1.562 (2014/05/03)

  • Next build link was not reliably available from a previous build after starting a new one. (issue 20662)
  • Debian postinst: check for present user/group before adding them. (issue 22715)
  • Add distance between time tick labels on load statistics. (issue 22686)
  • Correctly show load statistics for master node. (issue 22689)
  • Make load statistics graph font configurable, use sans serif font by default. (issue 22688)
  • Add links to nodes on thread dump page for easier navigation. (issue 22672)

What's new in 1.561 (2014/04/27)

  • Fixed a corner case handling of tool installation. (issue 16846)
  • Enabled log rotation on the OSX package (issue 15178)
  • When measuring the length of the queue, jobs that consist of multiple subtasks should count as more than 1. (pull request 742)
  • Close drop-down button menu when clicking outside (issue 17050)
  • RunParameter with filtering enabled incorrectly includes builds which have not yet completed (issue 20974)
  • Fixed NPE if RunParameterValue points to a stable build. (issue 20857)
  • Fixed a JavaScript problem in sortable table with IE8. (issue 21729)
  • More efficient deletion of old builds (specified by date). (issue 22607)
  • The matrix project type was moved into its own plugin.
  • Linkage errors in notifiers could leak workspace leases. (issue 21622)
  • Better correction of the anomalous condition that several builds of a job specify the same number. (issue 22631)
  • Under certain conditions, a running build could mistakenly be shown as completed (and failed), while still producing output. (issue 22681)
  • Fix a bug which only showed the first detail part for radio buttons. (issue 22583)
  • Update version of bundled Mailer plugin to 1.8 to avoid issues with older versions
  • Show larger load statistics graphs. (issue 22674)
  • Linebreak project names less aggressively. (issue 22670)
  • Added a new extension point for more pluggable JNLP slave handling
  • Don't ask for confirmation when it doesn't make any sense. (issue 21720)
  • Jenkins asks for confirmation before leaving form even though user is not authorized to make changes. (issue 20597)
  • Make the computers monitor status row look different from regular node rows. (pull request 1095)
  • Do not offer "Install without restart" for plugin updates. (pull request 1125)
  • Require POST on more actions. (pull request 877)
  • Optimize image sizes. (pull request 648)
  • Properly close resources in case of exceptions. (pull request 737)
  • Fix warning on JBoss AS7 due to unnecessary xpp3_min dependency. (pull request 733)
  • Return queue item location when triggering buildWithParameters. (issue 13546)

What's new in 1.560 (2014/04/20)

  • Enforcing build trigger authentication at runtime by checking authentication associated with a build, rather than at configuration time. For compatibility, enforcement is skipped by default; you must install the Authorize Project plugin or similar for this to take effect. The “upstream pseudo trigger” was also removed in favor of a true trigger configured on the downstream project; you may use either the post-build action or the trigger according to where you want this configuration stored, and who is authorized to change it. (issue 16956)
  • Fixed NPE from view new job name autocompletion since 1.553. (issue 22142)
  • Deadlocks in concurrent builds under some conditions since 1.556. (issue 22560)
  • JNLP slaves are now handled through NIO-based remoting channels for better scalability.
  • Integrated codemirror v2.38. (issue 22582)
  • Listing plugins shortly after installation throws ConcurrentModificationException. (issue 22553)
  • Fixed NoSuchMethodException when destroying processes using JDK1.8. (issue 21341)
  • Avoid irrelevant job queuing while node is offline. (issue 21394)
  • Debian package now creates 'jenkins' group
  • Suppress fingerprint link if fingerprint record isn't available. (issue 21818)
  • Job hangs if one of multiple triggered builds was aborted (issue 21932)
  • Don't submit form on Save after Apply in new window on some browsers. (issue 20245)
  • Remotely triggered builds now show correct IP address through proxy. (issue 18008)

What's new in 1.559 (2014/04/13)

  • Slaves connected via Java Web Start now restart themselves when a connection to Jenkins is lost. (issue 19055)
  • Fixed NPE from Slave.createLauncher. (issue 21999)
  • Faster rendering of views containing many items. (issue 18364)

What's new in 1.558 (2014/04/06)

  • Cron-style trigger configuration will now display expected prior and subsequent run times.
  • Incorrect filtering of build queue and executors widgets after 1.514. (issue 20500)
  • NoSuchMethodError: hudson.model.BuildAuthorizationToken.checkPermission(…) from Build Token Root plugin since 1.556. (issue 22382)
  • Allow a Trigger to be a DependencyDeclarer. (issue 22397)
  • Fixed a slow down in resource loading caused by fix to JENKINS-18677. (issue 21579)
  • jenkins.war file shouldn't be exploded into /tmp (issue 22442)
  • Fixed NPE in UserCause (issue 21875)
  • Added RobustMapConverter. (issue 22398)
  • JNLP slaves now satisfies stricter requirements imposed by JDK7u45. (issue 20204)
  • Fixed NPE executing Pipe.EOF with ProxyWriter (issue 20769)

What's new in 1.557 (2014/03/31)

  • Fixed ArrayIndexOutOfBoundsException in XStream with Oracle JDK8 release version (issue 18537)
  • Corrected permission checks for copy-job and create-job CLI commands. (issue 22262)
  • identity.key, used to secure some communications with Jenkins, now stored encrypted with the master key.
  • When dynamically loading a plugin which another loaded plugin already had an optional dependency on, class loading errors could result before restart. (issue 19976)
  • Memory leaks in the old data monitor. (issue 19544)
  • Ability for custom view types to disable automatic refresh. (issue 21190) (issue 21191)
  • Option to download metadata directly from Jenkins rather than going through the browser. (issue 19081)
  • Allow JDK8 (and other versions) to be downloaded by JDKInstaller correctly. (issue 22347)

What's new in 1.556 (2014/03/23)

  • Access through API token and SSH key login now fully retains group memberships. (issue 20064)
  • API changes allowing more flexibility in unusual job types. (issue 22131)
  • Job can be reloaded individually from disk with "job/FOO/reload" URL or "reload-job" CLI command

What's new in 1.555 (2014/03/16)

  • Jenkins should recover gracefully from a failure to process "remember me" cookie (issue 11643)
  • Fixed Up link in matrix projects (issue 21773)

What's new in 1.554 (2014/03/09)

  • Archiving of symlinks as artifacts did not work in some cases. (issue 21958)
  • Slow rendering of directories with many entries in remote workspaces. (issue 21780)

What's new in 1.553 (2014/03/02)

  • Build history widget only showed the last day of builds. (Due to JENKINS-20892, even with this fix at most 20 builds are shown.) (issue 21159)
  • Random class loading error mostly known to affect static analysis plugins. (issue 12124)
  • After restarting Jenkins, users known only from changelogs could be shown as First Last _first.last@some.org_, breaking mail delivery. (issue 16332)
  • CLI build -s -v command caused 100% CPU usage on the master. (issue 20965)
  • Slave started from Java Web Start can now install itself as a systemd service.
  • Split the “raw HTML” markup formatter out of core into a bundled plugin.
  • Do not show Maven modules and matrix configurations in the Copy Job dialog. (issue 19559)
  • Fix autocompletion for items in folders. (pull request 1124)

What's new in 1.552 (2014/02/24)

  • 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)
  • Improve detection of broken reverse proxy setups.

What's new in 1.551 (2014/02/14)

  • 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.

What's new in 1.550 (2014/02/09)

  • Report number of all jobs as part of usage statistics (issue 21448)
  • Replace description in error dialog instead of appending (issue 21457)

What's new in 1.549 (2014/01/25)

  • 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)
  • Add Batch Command tool installer for Windows nodes. (issue 21202)
  • Allow more specific loggers to reduce log level. (issue 21386)

What's new in 1.548 (2014/01/20)

  • 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)

What's new in 1.547 (2014/01/12)

  • Split Windows slave functionality into its own plugin.
  • NPE since 1.545 when using aggregated test result publisher without specifying downstream jobs explicitly. (issue 18410)
  • Fixed Trend Graph NPE when there isn't any builds (issue 21239)

What's new in 1.546 (2014/01/06)

  • 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)

Older changelogs can be found in a separate file