Skip to content
changelog.html 170 KiB
Newer Older
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
<html>
We record noteworthy changes in this file, which then becomes http://jenkins-ci.org/changelog
- Record your changes between "TRUNK-BEGIN" and "TRUNK-END".
  (except in rare cases when you are making changes in the RC branch,
   in which case it goes to the rc section)
- There are four CSS classes to denote the kind of changes.
  "rfe" for enhancement and "bug" for bug fixes,
  plus "major" to indicate major RFE/bugfix.
- Link to bugs in the issue tracker, e-mail thread in the archive, and so on if you can.
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
  <title>Changelog</title>
  <link rel="stylesheet" TYPE="text/css" href="/changelog.css">
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
<!--[if IE]>
<style type="text/css">div.rate-offset { bottom: 0.2em !important; left: 5em !important; }</style>
<![endif]-->
  <script type="text/javascript" src="https://rating.jenkins.io/rate/rate.js"></script>
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
</head>
<body>
<div align="right">Legend:
    <span class="iconlegend">
        <img src="/images/rfe2.gif" alt="major RFE">major enhancement <img src="/images/rfe.gif" alt="RFE">enhancement
        <img src="/images/bug2.gif" alt="major bug">major bug fix     <img src="/images/bug.gif" alt="bug">bug fix
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
    </span><span style="visibility:hidden">xxxxx</span>
</div>
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed

<div id="ratings" style="display:none; font-size:120%;
     border:1px solid black; background-color:#eee; padding:0.5em; margin-bottom:1em">
Help other Jenkins users by letting the community know which releases you've used,
and whether they had any significant issues. <br>
Legend: <br>
 <img src="//ci.jenkins.io/images/16x16/health-80plus.gif" width="16" height="16"
  alt="Sunny"> = I use it on my production site without major issues. <br>
 <img src="//ci.jenkins.io/images/16x16/health-40to59.gif" width="16" height="16"
  alt="Cloudy"> = I don't recommend it. <br>
 <img src="//ci.jenkins.io/images/16x16/health-00to19.gif" width="16" height="16"
  alt="Lightning"> = I tried it but rolled back to a previous version. <br>
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
View ratings below, and click one of the icons next to your version to provide your input.
</div>

<a href="" onClick="document.getElementById('trunk').style.display='block';return false">
Kohsuke Kawaguchi's avatar
Kohsuke Kawaguchi committed
Upcoming changes</a>
<a href="" style="padding-left:3em" onClick="return loaddata(this)">Community ratings</a>

<!-- Record your changes in the trunk here. -->
<div id="trunk" style="display:none"><!--=TRUNK-BEGIN=-->
<ul class=image>
  <li class=>
</ul>
</div><!--=TRUNK-END=-->
<h3><a name=v2.32>What's new in 2.32</a> (2016/11/16)</h3>
<ul class=image>
Daniel Beck's avatar
Daniel Beck committed
   <li class="major bug">
     <strong>Important security fixes</strong>
     (<a href="https://wiki.jenkins-ci.org/display/SECURITY/Jenkins+Security+Advisory+2016-11-16">security advisory</a>)
  <li class="rfe">
    Allow disabling the Jenkins CLI over HTTP and JNLP agent port by setting the System property <tt>jenkins.CLI.disabled</tt> to <tt>true</tt>.
<h3><a name=v2.31>What's new in 2.31</a> (2016/11/13)</h3>
<ul class=image>
  <li class="rfe">
    Performance: Improve responsiveness of Jenkins web UI on mobile devices.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39172">issue 39172</a>, continuation of the patch in 2.28)
  <li class="major bug">
    It was not possible to connect Jenkins agents via Java Web Start due to the issue in Remoting <code>3.0</code>.
    Upgraded to Remoting <code>3.1</code> with a fix.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39596">issue 39596</a>, regression in 2.26)
  <li class="bug">
    Prevent <code>NullPointerException</code> when rendering <code>CauseOfInterruption.UserInterruption</code>
    in build summary pages for non-existent users.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38721">issue 38721</a> and
     <a href="https://issues.jenkins-ci.org/browse/JENKINS-37282">issue 37282</a>,
     regression in 2.14)
  <li class="bug">
    Reduce logging level when the localization resource is missing <code>ResourceBundleUtil#getBundle()</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39604">issue 39604</a>)
  <li class="bug">
    <code>ExtensionList.removeAll</code> 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.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39520">issue 39520</a>)
  <li class="bug">
    Remoting 3.1: <code>hudson.remoting.Engine</code> (mostly Java Web Start) was failing to establish connection 
    if one of the URLs in <code>urls</code> parameter was malformed.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39617">issue 39617</a>)
  <li class="rfe">
    Remoting 3.1: Add method for dumping diagnostics across all the channels (e.g. in the Support Core Plugin).
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39150">issue 39150</a>)
  <li class="rfe">
    Remoting 3.1: Improve the caller/callee correlation diagnostics in thread dumps.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39543">issue 39543</a>)
  <li class="rfe">
    Remoting 3.1: Add the <code>org.jenkinsci.remoting.nio.NioChannelHub.disabled</code> flag 
    for disabling NIO, mostly for debugging purposes.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39290">issue 39290</a>)
  <li class="rfe">
    Remoting 3.1: Add extra logging to help diagnosing <code>IOHub</code> concurrent thread number spikes.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38692">issue 38692</a>)
  <li class="rfe">
    Remoting 3.1: When a proxy fails, report what caused the channel to go down.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39289">issue 39289</a>)
  <li class="rfe">
    Improved Polish translation.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2631">pull 2631</a>)
</ul>
<h3><a name=v2.30>What's new in 2.30</a> (2016/11/07)</h3>
<ul class=image>
  <li class="major bug">
    Adjust incompatible <code>Actionable</code> initialization changes made for <a href="https://issues.jenkins-ci.org/browse/JENKINS-39404">issue 39404</a>).
    It caused massive regressions in plugins like Jenkins Pipeline.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39555">issue 39555</a>, regression in 2.29)
  <li class="major bug">
    Integration of Stapler <code>1.246</code> caused regressions in plugins depending on Ruby Runtime Plugin.
    Upgraded to Stapler <code>1.248</code> with a fix.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39414">issue 39414</a>, regression in 2.28)
  <li class="major bug">
    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 <code>2.16</code>, a reconfiguration may be required.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39465">issue 39465</a>)
</ul>
<h3><a name=v2.29>What's new in 2.29</a> (2016/11/06)</h3>
<p>
  <b class="color:red">Warning!</b> This release is not recommended for use due to 
Daniel Beck's avatar
Daniel Beck committed
  <a href="https://issues.jenkins-ci.org/browse/JENKINS-39555">issue 39555</a>
  and <a href="https://issues.jenkins-ci.org/browse/JENKINS-39414">issue 39414</a>.
  We are working on the out-of-order release (<a href="https://groups.google.com/forum/#!topic/jenkinsci-dev/kceM9T8NEdg">discussion</a>).
</p>
<ul class=image>  
  <li class="rfe">
    Performance: Optimize log retrieval logic for large log files.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39535">issue 39535</a>)
    Integration of Stapler <code>1.246</code> caused regressions in plugins depending on Ruby Runtime Plugin.
    Upgraded to Stapler <code>1.247</code> with a partial fix.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39414">issue 39414</a>, partial fix)
  <li class="bug">
    Jenkins startup does not fail if one of 
    <a href="https://wiki.jenkins-ci.org/display/JENKINS/Extension+points#Extensionpoints-hudson.slaves.ComputerListener">
      ComputerListeners</a> throws exception in the <code>onOnline()</code> handler.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38487">issue 38487</a>)
  <li class="bug">
    Queue: Do not consider pending tasks from the internal scheduling logic when looking for duplicate tasks.
    It was causing race conditions in Jenkins Pipeline.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39454">issue 39454</a>)
  <li class="rfe">
    Internal: Modify the Actionable API to provide methods to assist with manipulation of persisted actions.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39404">issue 39404</a>)
  <li class="rfe">
    Internal: Jelly attribute documentation now supports the <code>since</code> tag.
    (<a href="https://github.com/stapler/stapler/pull/84">Stapler pull #84</code>)
</ul>
<h3><a name=v2.28>What's new in 2.28</a> (2016/10/30)</h3>
<ul class=image>
  <li class="rfe">
    Performance: Improve responsiveness of Jenkins web UI on mobile devices.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39172">issue 39172</a>)
  <li class="rfe">
    Print warnings if none of Tool Installers can be used during the tool installation.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-26940">issue 26940</a>)
  <li class="rfe">
    Update the minimal required versions of the detached Maven Project plugin from <code>2.7.1</code> to <code>2.14</code>.
    Changelog is available <a href="https://wiki.jenkins-ci.org/display/JENKINS/Maven+Project+Plugin">here</a>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2606">pull 2606</a>)
  <li class="rfe">
    Update the minimal required versions of the detached JUnit plugin from <code>1.2-beta-4</code> to <code>1.6</code>.
    Changelog is available <a href="https://wiki.jenkins-ci.org/display/JENKINS/JUnit+Plugin">here</a>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2606">pull 2606</a>))
  <li class="major bug">
    Relax requirements of the JNLP connection receiver, which was rejections connections from agents not using 
    <code>JNLPComputerLauncher</code> (e.g. from Slave Setup, vSphere Cloud and other plugins). 
    No the connection is accepted from launchers implementing other proxying and filtering <code>Launcher</code> implementations.
    Particular plugins may require setting up the 
    <code>jenkins.slaves.DefaultJnlpSlaveReceiver.disableStrictVerification</code> system property in the master JVM to allow connecting agents.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39232">issue 39232</a>, regression in 2.28)
  <li class="bug">
    Prevent resource leak in <code>hudson.XmlFile#readRaw()</code> in the case of encoding issues.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-39363">issue 39363</a>)
  <li class="bug">
    Prevented endless loop in <code>LargeText.BufferSession.skip()</code>, which was causing hanging of Pipeline jobs in corner cases.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37664">issue 37664</a>)
  <li class="rfe">
    Internal: Upgrade Stapler library from <code>1.243</code> to <code>1.246</code> with fixes required for the Blue Ocean project.
    More details are coming soon.
    Raw changes are listed <a href="https://github.com/stapler/stapler/compare/stapler-parent-1.243...stapler-parent-1.246">here</a>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2593">pull 2593</a>)
  <li class="rfe">
    Internal: Start defining APIs that are for the master JVM only.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38370">issue 38370</a>)
  <li class="rfe">
    Internal: Update Guice dependency from <code>4.0-beta</code> to <code>4.0</code>.
    This change required upgrade of detached plugins (see above).
    (<a href="https://github.com/jenkinsci/jenkins/pull/2568">pull 2568</a>)
</ul>
<h3><a name=v2.27>What's new in 2.27</a> (2016/10/23)</h3>
<ul class=image>
  <li class="major rfe">
    Upgrade to the Remoting 3 baseline. Compatibility notes are available 
    <a href="https://github.com/jenkinsci/remoting/blob/master/docs/remoting-3-compatibility.md">here</a>. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37564">issue 37564</a>)
  <li class="major rfe">
    Remoting 3.0: New <a href="https://github.com/jenkinsci/remoting/blob/master/docs/protocols.md#jnlp4-connect">JNLP4-connect protocol</a>, 
    which improves performance and stability compared to the JNLP3-connect protocol. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36871">issue 36871</a>)
  <li class="rfe">
    Remoting 3.0: Agents using <code>slave.jar</code> now explicitly require Java 7.    
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37565">issue 37565</a>)
  <li class="bug">
    Prevent deadlocks during modification of node executor numbers (e.g. during deletion of nodes).
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31768">issue 31768</a>)
  <li class="bug">
    Add missing internationalization support to <code>ResourceBundleUtil</code>.
    It fixes internationalization in <a href="https://jenkins.io/projects/blueocean/">Blue Ocean</a> 
    and <a href="http://jenkinsci.github.io/jenkins-design-language/">Jenkins Design Language</a>. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35845">issue 35845</a>)
  <li class="rfe">
    Internal: Make the code more compatible with Java 9 requirements and allow its editing in newest NetBeans versions 
    with <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=268452">NB bug 268452</a>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2595">pull 2595</a>)
  <li class="bug">
    Internal: Icon handling API for items.
    Deprecate <code>TopLevelItemDescriptor#getIconFilePathPattern()</code> and switch to <code>IconSpec</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38960">issue 38960</a>)
</ul>
<h3><a name=v2.26>What's new in 2.26</a> (2016/10/17)</h3>
<ul class=image>
Daniel Beck's avatar
Daniel Beck committed
    Allow <code>CommandInterpreter</code> build steps to set a build result as <code>Unstable</code> via the return code.
    Shell and Batch build steps now support this feature.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-23786">issue 23786</a>)
  <li class="rfe">
    Performance: Avoid acquiring locks in <code>MaskingClassloader</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-23784">issue 23784</a>)
  <li class="rfe">
    Performance: Update <code>XStream</code> driver to improve performance of XML serilization/deserialization.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2561">pull 2561</a>)
  <li class="rfe">
    Harden checks of prohibited names in user creation logic.
    Untrimmed spaces and different letter cases are being checked now.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35967">issue 35967</a>)
  <li class="bug">
    Performance: Fix the performance of file compress/uncompress operations over the remoting channel.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38640">issue 38640</a>,
     <a href="https://issues.jenkins-ci.org/browse/JENKINS-38814">issue 38814</a>)
  <li class="bug">
    Restore automatic line wrapping in Build Step text boxes with syntax highlighting.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-27367">issue 27367</a>)
  <li class="bug">
    Properly remove disabled Administrative Monitors from the extension list.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38678">issue 38678</a>)
  <li class="bug">
    Remoting 2.62.2: Improve connection stability by turning on Socket Keep-alive by default.
    Keep-alive can be disabled via the <code>-noKeepAlive</code> option.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38539">issue 38539</a>)
  <li class="bug">
    Remoting 2.62.2: Prevent <code>NullPointerException</code> in <code>Engine#connect()</code> 
    when <code>host</code> or <code>port</code> parameters are <code>null</code> or empty.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37539">issue 37539</a>)
  <li class="bug">
    Node build history page was hammering the performance of the Jenkins instance by spawning parallel heavy requests.
    Now the information is being loaded sequentially.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-23244">issue 23244</a>)
  <li class="bug">
    Cleanup spelling in CLI help and error messages.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38650">issue 38650</a>)
  <li class="bug">
    Properly handle quotes and other special symbols in item names during form validation.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31871">issue 31871</a>)
  <li class="rfe">
    Internal: Invoke <code>hpi:record-core-location</code> during the build in order to enabled coordinated run accross repositories.
    (<a href="https://github.com/jenkinsci/jenkins/pull/1894">pull 1894</a>)
  <li class="rfe">
    Internal: Bulk cleanup of <code>@since</code> definitions in Javadoc.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2578">pull 2578</a>)
<h3><a name=v2.25>What's new in 2.25</a> (2016/10/09)</h3>
<ul class=image>
Daniel Beck's avatar
Daniel Beck committed
  <li class="bug">
    Display transient actions for labels.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38651">issue 38651</a>)
  <li class="bug">
    Add user to restart log message for restart after plugin installation.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38615">issue 38615</a>)
  <li class="rfe">
    Internal: Code modernization: Use try-with-resources a lot more
    (<a href="https://github.com/jenkinsci/jenkins/pull/2570">pull 2570</a>)
<h3><a name=v2.24>What's new in 2.24</a> (2016/10/02)</h3>
<ul class=image>
  <li class="major rfe">
    Show notification with popup on most pages when administrative monitors are active.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38391">issue 38391</a>)
  <li class="rfe">
    Allow disabling/enabling administrative monitors on Configure Jenkins form.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38301">issue 38301</a>)
  <li class="rfe">
    Ensure exception stacktrace is shown when there's a <tt>FormException</tt>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2555">pull 2555</a>)
Daniel Beck's avatar
Daniel Beck committed
  <li class="rfe">
    Add new <code>jenkins.model.Jenkins.slaveAgentPortEnforce</code> system property, which prevents slave agent port modification via Jenkins Web UI and form submissions.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2545">PR #2545</a>)
  <li class="rfe">
    Indicate hovered table row on striped tables.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-32148">issue 32148</a>)
Daniel Beck's avatar
Daniel Beck committed
  <li class="rfe">
    Decrease connection timeout when changing the JNLP agent port via Groovy system scripts.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38473">issue 38473</a>)
  <li class="rfe">
    Added Serbian locatization.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2554">PR #2554</a>)
  <li class="bug">
    Exclude <tt>/cli</tt> URL from CSRF protection crumb requirement, making the CLI work with CSRF protection enabled and JNLP port disabled.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-18114">issue 18114</a>)
  <li class="bug">
    Prevent instatination of <code>jenkins.model.Jenkins</code> on agents in the <code>ProcessKillingVeto</code> extension point.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38534">issue 38534</a>)
  <li class="bug">
    Fix handling of the <code>jenkins.model.Jenkins.slaveAgentPort</code> system property, which was not honored.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-38187">issue 38187</a>, regression in 2.0)
  <li class="bug">
    CLI: Disable the channel message chunking by default.
    Prevents connection issues like <code>java.io.StreamCorruptedException: invalid stream header: 0A0A0A0A</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-23232">issue 23232</a>)
  <li class="bug">
Daniel Beck's avatar
Daniel Beck committed
    CLI: Connection over HTTP was not working correctly.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34287">issue 34287</a>, regression in 2.0)
</ul>
<h3><a name=v2.23>What's new in 2.23</a> (2016/09/18)</h3>
<ul class=image>
Daniel Beck's avatar
Daniel Beck committed
  <li class="bug">
    Fix JS/browser memory leak on Jenkins dashboard.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-10912">issue 10912</a>)
  <li class="bug">
    Build history was not properly updating via AJAX.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31487">issue 31487</a>)
  <li class="bug">
    Properly enable submit button on New Item page when choosing item type first.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36539">issue 36539</a>)
<h3><a name=v2.22>What's new in 2.22</a> (2016/09/11)</h3>
<ul class=image>
  <li class="rfe">
    Change symbol and constructor for SCMTrigger to <tt>pollScm</tt> to make it usable in Pipeline scripts.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37731">issue 37731</a>)
  <li class="rfe">
    Prompt user whether to add the job to the current view.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-19142">issue 19142</a>)
  <li class="rfe">
    Update to sshd module 1.7, allowing definition of client idle timeout.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2534">pull 2534</a>, 
    <a href="https://issues.jenkins-ci.org/browse/JENKINS-36420">issue 36420</a>)
  <li class="rfe">
    Update to sezpoz 1.12 with better diagnostics.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2525">pull 2525</a>)
  <li class="bug">
    Fix <tt>NullPointerException</tt> when descriptor is not in <tt>DescriptorList</tt>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37997">issue 37997</a>)
  <li class="bug">
    Use the correct 'gear' icon for Manage Jenkins in Plugin Manager.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34250">issue 34250</a>)
<h3><a name=v2.21>What's new in 2.21</a> (2016/09/04)</h3>
<ul class=image>
  <li class="rfe">
    Ask for confirmation before canceling/aborting runs.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-30565">issue 30565</a>)
  <li class="rfe">
    Add newline after the text in <code>userContent/readme.txt</code>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2532">PR #2532</a>)
  <li class="bug">
    Fixed the missing icon in the System Script console.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37814">issue 37814</a>)
  <li class="bug">
    Print warnings to system logs and administrative monitors
    when Jenkins initializarion does not reach the final milestone.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37874">issue 37874</a>,
     diagnostics for <a href="https://issues.jenkins-ci.org/browse/JENKINS-37759">issue-37759</a>)
  <li class="rfe">
    Developer API: <code>UpdateSite#getJsonSignatureValidator()</code> can be now
    overriden and used in plugins.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2532">PR #2532</a>)
<h3><a name=v2.20>What's new in 2.20</a> (2016/08/28)</h3>
<ul class=image>
  <li class="rfe">
    Make <code>Cloud.PROVISION</code> permission independent from <code>Jenkins.ADMINISTER</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37616">issue 37616</a>)
  <li class="rfe">
    Allow the use of custom JSON signature validator for Update Site metadata signature checks.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36537">issue 36537</a>)
  <li class="bug">
    Do not process <code>null</code> CRON specifications in build triggers.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36748">issue 36748</a>, enhances fix in 2.15)
  <li class="bug">
    Setup wizard now checks if the restart is supported on the system before displaying the restart button.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-33374">issue 33374</a>)
  <li class="bug">
    Test Windows junctions before Java 7 symlink in symbolic link checks.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-29956">issue 29956</a>)
  <li class="bug">
    Fixed background color in the <code>ComboBoxList</code> element in order to make options visible.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37549">issue 37549</a>)
  <li class="bug">
    Fixed editing default view description with automatic refresh.
    System message is not being displayed instead of the view description.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37360">issue 37360</a>)
  <li class="bug">
    Fixed process tree management logic on Solaris with 64-bit JVMs.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37559">issue 37559</a>)
</ul>
<h3><a name=v2.19>What's new in 2.19</a> (2016/08/21)</h3>
<ul class=image>
  <li class="major bug">
    Prevent File descriptor leaks when reading plugin manifests.
    It causes failures during the upgrade of detached plugins on Windows.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37332">issue 37332</a>, regression in 2.16)
  <li class="bug">
    Prevent resource leaks in <code>AntClassLoader</code> being used in the core.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37561">issue 37561</a>)
  <li class="bug">
    Fix the wrong message about empty field in the case duplicate item name in the New Item dialog.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34532">issue 34532</a>)
  <li class="rfe">
    Allow invoking Upgrade Wizard when Jenkins starts up.
    It can be done by placing an empty <code>jenkins.install.InstallUtil.lastExecVersion</code> file 
    in <code>JENKINS_HOME</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37438">issue 37438</a>)
  <li class="rfe">
    Replace repetitious &quot;website&quot; and &quot;dependencies&quot; text in the Setup Wizard by icons.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37523">issue 37523</a>)
  <li class="rfe">
    Expose Job name to system logs when Jenkins fails to create a new build with <code>IllegalStateException</code>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-33549">issue 33549</a>)
  <li class="rfe">
    Downgrade <code>Queue#maintain()</code> message for dead executors during task mapping 
    from <code>INFO</code> to <code>FINE</code>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2510">PR #2510</a>)
</ul>
<h3><a name=v2.18>What's new in 2.18</a> (2016/08/15)</h3>
<ul class=image>
  <li class="rfe">
    Better diagnostics and robustness against old <code>ChangeLogAnnotator</code> API usage in plugins.
    Enhances <a href="https://issues.jenkins-ci.org/browse/JENKINS-23365">JENKINS-23365</a> fix in 1.569.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36757">issue 36757</a>)
  <li class="bug">
    Prevent open file leak when the agent channel <code>onClose()</code> listener writes to the already closed log.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37098">issue 37098</a>)
  <li class="major bug">
    Stop A/B testing of the remoting JNLP3 protocol due to the known issues.
    The protocol can be enabled manually via the <code>jenkins.slaves.JnlpSlaveAgentProtocol3.enabled</code>
    <a href="https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties">system property</a>.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37315">issue 37315</a>)
  <li class="bug">
    When checking Update Center, append <code>?uctest</code> parameter to HTTP and HTTPS URLs only.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37189">issue 37189</a>)
  <li class="bug">
    Incorrect formatting of messages in the Upate Center and Setup Wizard.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36757">issue 36757</a>)
  <li class="bug">
    Massive cleanup of issues reported by FindBugs.
    User-visible issues - wrong log message formatting bugs in the Update Center and user creation logic.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36717">issue 36717</a>,
    <a href="https://github.com/jenkinsci/jenkins/pull/2459">PR #2459</a>)
  <li class="bug">
    Remoting 2.61: JNLP Slave connection issue with JNLP3-connect 
    when the generated encrypted cookie contains a newline symbols.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37140">issue 37140</a>)
  <li class="bug">
    Remoting 2.61: Retry loading classes when remote classloader gets interrupted. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36991">issue 36991</a>)
  <li class="rfe">
    Remoting 2.61: Improve diagnostics of Local Jar Cache write errors.
    (<a href="https://github.com/jenkinsci/remoting/pull/91">remoting PR #91</a>)
  <li class="bug">
    Remoting 2.62: Be robust against the delayed EOF command when unexporting input and output streams. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-22853">issue 22853</a>)
  <li class="bug">
    Remoting 2.62: Cleanup of minor issues discovered by FindBugs. 
    (<a href="https://github.com/jenkinsci/remoting/pull/96">remoting PR #96</a>)
  <li class="rfe">
    Remoting 2.62: Improve class filtering performance in remote invocations. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37218">issue 37218</a>)
  <li class="rfe">
    Remoting 2.62: TCP agent connection listener now publishes a list of supported agent protocols to speed up the connection setup. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37031">issue 37031</a>)
  <li class="rfe">
    Improve German, Lithuanian and Bulgarian translations. 
    (<a href="https://github.com/jenkinsci/jenkins/pull/2473">PR #2473</a>,
     <a href="https://github.com/jenkinsci/jenkins/pull/2470">PR #2470</a>,
     <a href="https://github.com/jenkinsci/jenkins/pull/2498">PR #2498</a>
     )
<h3><a name=v2.17>What's new in 2.17</a> (2016/08/05)</h3>
<ul class=image>
Daniel Beck's avatar
Daniel Beck committed
  <li class="major bug">
    Don't load all builds to display the paginated build history widget.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31791">issue 31791</a>)
  <li class="rfe">
    Add dagnostic HTTP response to TCP agent listener.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37223">issue 37223</a>)
  <li class="rfe">
    Internal: Invoke FindBugs during core build.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36715">issue 36715</a>)
<h3><a name=v2.16>What's new in 2.16</a> (2016/07/31)</h3>
<ul class=image>
  <li class="major bug">
    Fix plugin dependency resolution. Jenkins will now refuse to load plugins with unsatisfied dependencies, which resulted in difficult to diagnose problems. <strong>This may result in errors on startup if your instance has an invalid plugin configuration.</strong>, check the Jenkins log for details.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-21486">issue 21486</a>)
  <li class="major rfe">
    Decouple bouncycastle libraries from Jenkins into bouncycastle-api plugin.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36923">issue 36923</a>)
  <li class="rfe">
    Upgrade to instance-identity module 2.1.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36922">issue 36922</a>)
  <li class="rfe">
    Hide the Java Web Start launcher when the TCP agent port is disabled.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36996">issue 36996</a>)
  <li class="rfe">
    Allow admins to control the enabled agent protocols on their instance from the global security settings screen.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37032">issue 37032</a>)
  <li class="bug">
    Make sure that the All view is created.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36908">issue 36908</a>)
  <li class="bug">
    Remove trailing space from <tt>Hudson.DisplayName</tt> in Spanish, which resulted in problems with Blue Ocean.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36940">issue 36940</a>)
  <li class="bug">
    Honor non-default update sites in setup wizard.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34882">issue 34882</a>)
  <li class="bug">
    Display delete button only when build is not locked.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2483">pull 2483</a>)
  <li class="bug">
    Use build start times instead of build scheduled times in build timeline widget.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36732">issue 36732</a>)
  <li class="bug">
    Ensure that detached plugins are always at least their minimum version.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-37041">issue 37041</a>)
  <li class="rfe">
    Internal: Move CLI commands wait-node-online/wait-node-offline from core to CLI module.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34915">issue 34915</a>)
  <li class="rfe">
    Internal: Allow accessing instance identity from core.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36871">issue 36871</a>)
  <li class="bug">
    Internal: Fix the default value handling of <tt>ArtifactArchiver.excludes</tt>.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-29922">issue 29922</a>)
<h3><a name=v2.15>What's new in 2.15</a> (2016/07/24)</h3>
<ul class=image>
  <li class="major bug">
    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.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-18435">issue 18435</a>)
  <li class=rfe>
    Add a cache for user information to fix performance regression due to SECURITY-243.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35493">issue 35493</a>)
  <li class=bug>
    Prevent null pointer exceptions when not entering a cron spec for a trigger.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36748">issue 36748</a>)
  <li class=bug>
    Defend against some fatal startup errors.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36666">issue 36666</a>)
  <li class=rfe>
    Use the icon specified by the computer implementation on its overview page.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36775">issue 36775</a>)
  <li class=rfe>
    Internal: Extract the CLI command <tt>offline-node</tt> from core.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34468">issue 34468</a>)
<h3><a name=v2.14>What's new in 2.14</a> (2016/07/17)</h3>
<ul class=image>
  <li class=rfe>
    Minor optimization in calculation of recent build stability health report.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36629">issue 36629</a>)
  <li class=bug>
    Underprivileged users were unable to use the default value of a password parameter.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36476">issue 36476</a>)
  <li class=bug>
    Allow keeping builds forever with custom build retention strategies.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-26438">issue 26438</a>)
  <li class=bug>
    Properly handle exceptions during global configuration form submissions when <code>SCM Retry Count</code> field is empty.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36387">issue 36387</a>)
  <li class=bug>
    When a user aborts the build, this user may be restored after its deletion.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36594">issue 36594</a>)
  <li class=bug>
    Prevent potential <code>NullPointerException</code> in the <code>BlockedBecauseOfBuildInProgress</code> build blockage cause visualization.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36592">issue 36592</a>)
  <li class=rfe>
    CLI commands <code>quiet-down</code> and <code>cancel-quiet-down</code> were extracted from the core to CLI.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35423">issue 35423</a>)
  <li class=rfe>
    Developer API: Extract listing of computer names to the <code>ComputerSet#getComputerNames()</code> method.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35423">issue 35423</a>)
Stephen Connolly's avatar
Stephen Connolly committed
  <li class=rfe>
Daniel Beck's avatar
Daniel Beck committed
    Developer API: Add a try with resources form of impersonation.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36494">issue 36494</a>)
  <li class=bug>
    Developer API: Usage of <code>ItemCategory#MIN_TOSHOW</code> in external plugins is now restricted.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36593">issue 36593</a>)
</ul>
<h3><a name=v2.13>What's new in 2.13</a> (2016/07/10)</h3>
<ul class=image>
  <li class=bug>
    <code>IllegalStateException</code> under certain conditions when reloading configuration from disk while jobs are in the queue.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-27530">issue 27530</a>)
  <li class=rfe>
    Eliminate “dead executor” UI appearing after certain errors, such as JENKINS-27530.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2440">PR 2440</a>)
Daniel Beck's avatar
Daniel Beck committed
  <li class=bug>
    Make setup wizard installation panel usable on small screens.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34668">issue 34668</a>)
</ul>
<h3><a name=v2.12>What's new in 2.12</a> (2016/07/05)</h3>
<ul class=image>
  <li class=rfe>
    Enable the <code>DescriptorVisibilityFilter</code>s for ComputerLauncher, RetentionStrategy and NodeProperty.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36280">issue 36280</a>)
  <li class=rfe>
    Before starting a process, ensure that its working directory exists.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36277">issue 36277</a>)
  <li class=bug>
    Prevent <code>NullPointerException</code> during SCM polling if <code>SCMDecisionHandler</code> returns <code>null</code> veto.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36232">issue 36232</a>, regression in 2.11)
  <li class=bug>
    Ensure that <code>SCMDescriptor.newInstance</code> overrides are honored when creating new SCM entries.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36043">issue 36043</a>,
     <a href="https://issues.jenkins-ci.org/browse/JENKINS-35906">issue 35906</a>
    , regression in 2.10)
  <li class=bug>
    Performance: Improve configuration page load times by removing the CodeMirror reloading cycle.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-32027">issue 32027</a>)
  <li class=bug>
    Fix optional plugin dependency version resolution.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-21486">issue 21486</a>)
  <li class=bug>
    When creating a tar file, ensure that the final size does not exceed the value
    in header in the case of growing files.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-20187">Issue 20187</a>)
  <li class=bug>
    Do not inject build variables into Maven process by default for new projects.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-25416">issue 25416</a>, 
     <a href="https://issues.jenkins-ci.org/browse/JENKINS-28790">issue 28790</a>)
  <li class=rfe>
    Update <code>BUILD_TAG</code> environment variable description to mention the replacement of slashes with dashes.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2417">PR #2417</a>)
  <li class=rfe>
    Internal API: Make <code>BulkChange</code> auto-closeable.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2428">PR #2428</a>)
</ul>
<h3><a name=v2.11>What's new in 2.11</a> (2016/06/26)</h3>
<ul class=image>
  <li class=rfe>
    Provide an extension point for SCM decisions such as whether to poll a specific job's backing
    repository for changes.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36123">issue 36123</a>)
</ul>
<h3><a name=v2.10>What's new in 2.10</a> (2016/06/19)</h3>
<ul class=image>
  <li class=rfe>
    Better exception message if a <code>SecurityRealm</code> returns null when loading a user.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2407">PR #2407</a>)
  <li class=bug>
    Prevent <code>NullPointerException</code> in user registration if user ID is not specified.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-33600">issue 33600</a>)
  <li class=bug>
    Internal: It was impossible to build Jenkins on 32-bit Linux machine.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-36052">issue 36052, regression from 2.0</a>)
</ul>
<h3><a name=v2.9>What's new in 2.9</a> (2016/06/13)</h3>
<ul class=image>
  <li class=bug>
    Always send usage statistics over HTTPs to the new usage.jenkins.io hostname.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35641">issue 35641</a>)
  <li class=bug>
    Performance: Disable AutoBrowserHolder by default to improve the changelog rendering performance.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35098">issue 35098</a>)
  <li class=bug>
    Remoting 2.60: Make the channel reader tolerant against Socket timeouts.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-22722">issue 22722</a>)
  <li class=bug>
    Remoting 2.60: Proper handling of the <code>no_proxy</code> environment variable.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-32326">issue 32326</a>)
  <li class=bug>
    Remoting 2.60: Do not invoke PingFailureAnalyzer for agent=>master ping failures.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35190">issue 35190</a>)
  <li class=bug>
    Remoting 2.60: <code>hudson.Remoting.Engine#waitForServerToBack</code> now uses credentials for connection.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31256">issue 31256</a>) 
  <li class=bug>
    Remoting 2.60: Fix potential file handle leaks during the build agent (FKA slave) startup.
Daniel Beck's avatar
Daniel Beck committed
    <a href="https://issues.jenkins-ci.org/browse/JENKINS-35190">issue 35190</a>) 
  <li class=rfe>
    Internal: Upgrade Groovy to 2.4.7 to finalize the fix in Jenkins 2.7.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34751">issue 34751</a>)
  <li class=rfe>
    API: Allow delegating <code>TaskListener</code> creation to build agent implementations.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34923">issue 34923</a>)
  <li class=rfe>
    API: Restrict external usages of </code>jenkins.util.ResourceBundleUtil</code>.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35381">issue 35381</a>)
  <li class=rfe>
    API: Make it easier for <code>UpdateSite</code>s to tweak the </code>InstallationJob</code>.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35402">issue 35402</a>)
</ul>
<h3><a name=v2.8>What's new in 2.8</a> (2016/06/05)</h3>
<ul class=image>
    Explicitly declare compatibility of Windows build agent service with .NET Framework 4.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2386">PR #2386</a>)
Oliver Gondža's avatar
Oliver Gondža committed
  <li class=rfe>
    API: Introduce new listener extension point for slave creation/update/deletion.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-33780">issue 33780</a>)
  <li class=rfe>
    Lossless optimization sizes of PNG images in Jenkins.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2379">PR #2379</a>)
  <li class=bug>
    Fix the repeatable item delete button layout in Safari.
    Addresses Build Steps and other such configuration items.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35178">issue 35178</a>)
  <li class=bug>
    Installation Wizard: Do not offer creating new admin user if the security is preconfigured.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34881">issue 34881</a>)
  <li class=bug>
    Prevent <code>NullPointerException</code> on startup after update from Jenkins 2.5.
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35206">issue 35206</a>)
  <li class=bug>
    Honor noProxy settings from "Manage Jenkins > Manage Plugins > Advanced".
Daniel Beck's avatar
Daniel Beck committed
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31915">issue 31915</a>)
  <li class=rfe>
    Add <a href="http://hc.apache.org/httpclient-3.x/authentication.html#NTLM">NTLM support</a>
    to the proxy validation logic.
    (<a href="https://github.com/jenkinsci/jenkins/pull/1955">PR #1955</a>)
</ul>
<h3><a name=v2.7>What's new in 2.7</a> (2016/05/29)</h3>
<ul class=image>
  
  <li class="bug">
    Prevent stack overflow when using classes with complex generic type arguments 
    (e.g. <code>hudson.model.Run</code> or <code>hudson.model.Job</code>).
    Regression in Groovy 2.4, 
    see <a href="https://issues.apache.org/jira/browse/GROOVY-7826">GROOVY-7826</a> for more info.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34751">issue 34751</a>)
  <li class="bug">
    Do not invoke <code>PingFailureAnalyzer</code> for agent=>master ping failures.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35190">issue 35190</a>)
  <li class="bug">
    Fix keyboard navigation in setup wizard.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-33947">issue 33947</a>)
  <li class="bug">
    Cleanup of Javascript issues discovered by the JSHint static analyis tool.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35020">issue 35020</a>)
  <li class="bug">
    <code>DelegatingComputerLauncher</code> now accepts child classes in its hooks
    (pre-offline, pre-connect, etc.).
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35198">issue 35198</a>)
  <li class="rfe">
    Internal: Activate JSHint in Jenkins js-builder component during the core build.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34438">issue 34438</a>)
  <li class="rfe">
    Internal: Add symbol annotation for <code>SystemInfoLink</code>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2375">PR #2375</a>)
  <li class="bug">
    Internal: NodeJS build was malfunctional on Win x64.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-35201">issue 35201</a>)
</ul>
<h3><a name=v2.6>What's new in 2.6</a> (2016/05/22)</h3>
<ul class=image>
  <li class="major rfe">
    Adapt the Setup Wizard GUI to provide a similar user experience when upgrading Jenkins. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-33663">issue 33663</a>)
  <!--TODO: add a links to the Extension points when Wiki get's updated-->
  <li class="rfe">
    Improve extensibility of the Setup Wizard GUI: 
    <code>InstallState</code> and <code>InstallStateFilter</code> extension points. 
    (<a href="https://github.com/jenkinsci/jenkins/pull/2281">PR 2281</a> as supplimentary change for 
    <a href="https://issues.jenkins-ci.org/browse/JENKINS-33663">issue 33663</a>)
  <li class="rfe">
    Improve User Experience in the New Item form. Submit button is always visible. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34244">issue 34244</a>)
  <li class="rfe">
    Allow passing a list of safe job parameters in <code>ParametersAction</code>.
    It simplifies fixing of <a href="https://wiki.jenkins-ci.org/display/JENKINS/Plugins+affected+by+fix+for+SECURITY-170">plugins affected by SECURITY-170 fix</a>.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2353">PR 2353</a>)
  <li class="rfe">
    Added Symbol annotations for 
    <code>ParametersDefinition</code> and <code>BuildDiscarder</code> properties. 
    (<a href="https://github.com/jenkinsci/jenkins/pull/2358">PR 2358</a>)
  <li class="rfe">
    Extended the <code>online-node</code> CLI command for accepting multiple agents. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34531">issue 34531</a>)
  <li class="bug">
    Listed Parameters should reflect what was used when the build ran (filtering of unsafe parameters).
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34858">issue 34858</a>)
  <li class="bug">
    Scalability: Fix performance issues in the XML unmarshalling code.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34888">issue 34888</a>)
  <li class="bug">
    Support the legacy icon size specification approach in the Status Ball visualization.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-25220">issue 25220</a>, regression in 1.586)
  <li class="bug">
    Migrate the leftover system properties to the new engine introduced in 2.4.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34854">issue 34854</a>)
  <li class="bug">
    Do not show warnings abot a missing Tool Installer if it is present in at least one Update Site.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34880">issue 34880</a>)
  <li class="bug">
    Prevent hanging of the installation wizard due to the plugin status update issue.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34708">issue 34708</a>)
  <li class="rfe">
    Internal: CLI command <code>connect-node</code> was extracted from the core to CLI. 
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31417">issue 31417</a>)
</ul>
<h3><a name=v2.5>What's new in 2.5</a> (2016/05/16)</h3>
<ul class=image>
Oleg Nenashev's avatar
Oleg Nenashev committed
  <li class="major bug">
    Do not throw exceptions if <code>Jenkins.getInstance()</code> returns <code>null</code> instance.
    It was causing failures on Jenkins agents in the case of unexpected API usage by agents.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34857">issue 34857</a>, regression in 2.4)
  <li class=rfe>
    Replace <code>jenkins.model.Jenkins.disableExceptionOnNullInstance</code> by
    <code>jenkins.model.Jenkins.enableExceptionOnNullInstance</code> to address the
Oleg Nenashev's avatar
Oleg Nenashev committed
    behavior change.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34857">issue 34857</a>)
</ul>
<h3><a name=v2.4>What's new in 2.4</a> (2016/05/15)</h3>
<ul class=image>
  <li class=rfe>
    Internal/build: <code>jenkins-ui</code> (NPM module) is private, used only internally.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34629">issue 34629</a>)
  <li class=rfe>
    Do not print stack trace during a plugin installation if it is missing its dependencies.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34683">issue 34683</a>)
  <li class=rfe>
    Allow specifying custom <code>AbortException</code>s.
    (<a href="https://github.com/jenkinsci/jenkins/pull/2288">pull 2288</a>)
  <li class=rfe>
     Add a <code>hudson.model.UpdateCenter.defaultUpdateSiteId</code> system property, 
     which allows specifying an alternate default Update Site ID.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34674">issue 34674</a>)
  <li class=rfe>
    Allow setting of properties from <code>context.xml</code> and <code>web.xml</code>
    in addition to setting system properties from the command line.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34755">issue 34755</a>)
    Remove the historical initialization of CVS changelog parser for jobs without explicit SCM definition.
    <b>Warning!</b> This change may potentially cause a regression if a Jenkins plugin depends on this default behavior and injects changelogs without SCM.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-4610">issue 4610</a>)
  <li class=rfe>
    Add the JOB_BASE_NAME environment variable to builds (job name without path).
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-25164">issue 25164</a>)
  <li class=rfe>
    Allow overriding Jenkins <code>UpdateCenter</code> by a custom implementation.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34733">issue 34733</a>)
  <li class=rfe>
    Allow overriding Jenkins <code>PluginManager</code> by a custom implementation.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34681">issue 34681</a>)
  <li class=rfe>
    Installation Wizard: Allow altering the list of suggested plugins from update sites.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34833">issue 34833</a>)
  <li class=bug>
    Prevent hanging of the Installation Wizard if the default Update Site ID cannot be resolved.
    In such case an error message will be displayed.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34675">issue 34675</a>)
  <li class=bug>
    Prevent hanging of the Installation Wizard if the internet check is skipped for the default update site.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34705">issue 34705</a>)
  <li class=bug>
    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.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34710">issue 34710</a>)
  <li class=bug>
    Plugin Manager was building incorrect list of bundled plugins for nested dependencies.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34748">issue 34748</a>)
  <li class=bug>
    Prevent fatal failure of the updates check <code>PeriodicWork</code> if update site certificate is missing.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34745">issue 34745</a>)
  <li class=bug>
    Pick up missing <code>Downloadable</code> items on restart if all update centers are up to date.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-32886">issue 32886</a>)
  <li class=bug>
    Allow starting non-<code>AbstractProject</code> (e.g. Pipeline) jobs from CLI.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-28071">issue 28071</a>)
  <li class=bug>
    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: <a href="https://issues.jboss.org/browse/WFLY-4782">WFLY-4782</a>
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34675">issue 34675</a>)
  <li class=bug>
    Prevent RSS ID collisions for items with same name in different folders.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34767">issue 34767</a>)
  <li class=bug>
    Prevent <code>NoSuchMethodException</code> in <code>loginLink.jelly</code>
    when attempting to start a job using REST API.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-31618">issue 31618</a>)
  <li class=bug>
    Make <code>ToolInstallers</code> to follow HTTP 30x redirects.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-23507">issue 23507</a>)
  <li class=bug>
    Prevent <code>NullPointerException</code> in the parameter definition job property
    if it gets initialized incorrectly.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34370">issue 34370</a>)
  <li class=bug>
    Bundle <code>Font Awesome</code> and <code>Google Fonts: Roboto</code> dependencies 
    to prevent failures in the offline mode.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34628">issue 34628</a>)
  <li class=rfe>
    Internal: CLI commands <code>disconnect-node</code> and <code>reload-configuration</code> were extracted from the core to CLI.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34328">issue 34328</a> and
     <a href="https://issues.jenkins-ci.org/browse/JENKINS-31900">issue 31900</a>)
  <li class=rfe>
    Internal: Support latest source version to avoid compile time warnings with JDK7.
    <a href="https://github.com/jenkinsci/lib-annotation-indexer">annotation-indexer</a> and
    <a href="https://github.com/jglick/sezpoz">sezpoz</a> have been updated to 1.11.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-32978">issue 32978</a>)
  <li class=rfe>
    Developer API: Switch <code>Jenkins.getInstance()</code> to <code>@Nonnull</code>.
    (new <a href="https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties">system property</a>)
    (<a href="https://github.com/jenkinsci/jenkins/pull/2297">pull 2297</a>)
  <li class=bug>
    Remoting, scalability: Ensure that the unexporter cleans up whatever it can each GC sweep.
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34213">issue 34213</a>)
  <li class=bug>
    Remoting: Force class load on UserRequest to prevent deadlocks on Windows nodes agents in the case of multiple classloaders.
    (Controlled by <a href="https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties">hudson.remoting.RemoteClassLoader.force</a>)
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-19445">issue 19445</a>)
  <li class=rfe>
    Remoting: Allow Jenkins admins to adjust the socket timeout.
    (Controlled by <a href="https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties">hudson.remoting.Engine.socketTimeout</a>)
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34808">issue 34808</a>)
  <li class=rfe>
    Remoting: Allow disabling the remoting protocols individually. 
    Allows working around compatibility issues like 
    <a href="https://issues.jenkins-ci.org/browse/JENKINS-34121">JENKINS-34121</a>.
    (Controlled by <a href="https://wiki.jenkins-ci.org/display/JENKINS/Features+controlled+by+system+properties">PROTOCOL_CLASS_NAME.disabled</a>)
    (<a href="https://issues.jenkins-ci.org/browse/JENKINS-34819">issue 34819</a>)
<h3><a name=v2.3>What's new in 2.3</a> (2016/05/11)</h3>
<ul class=image>
  <li class="major bug">
     <strong>Important security fixes</strong>
     (see the <a href="https://wiki.jenkins-ci.org/display/SECURITY/Jenkins+Security+Advisory+2016-05-11">security advisory</a> for details and plugin compatibility issues)
<h3><a name=v2.2>What's new in 2.2</a> (2016/05/08)</h3>
<ul class=image>
  <li class="rfe">
    Add symbol annotations on core.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2293">pull 2293</a>)
  <li class=rfe>
    Upgrade Stapler to 1.243.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2298">pull 2298</a>)
  <li class=rfe>
    Internal/build: Enable JSHint during build.
  	(<a href="https://issues.jenkins-ci.org/browse/JENKINS-34438">issue 34438</a>)
  <li class=rfe>
    Workaround for unpredictable Windows file locking.
  	(<a href="https://issues.jenkins-ci.org/browse/JENKINS-15331">issue 15331</a>)
  <li class="rfe">
  	Improved Lithuanian translation.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2309">pull 2309</a>)
  <li class="rfe">
  	Improved French translation.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2308">pull 2308</a>)
  <li class="rfe">
    Restrict access to URLs related to plugin manager.
  	(<a href="https://issues.jenkins-ci.org/browse/JENKINS-31611">issue 31611</a>)
  <li class=rfe>
    API: New <tt>HttpSessionListener</tt> extension point.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2303">pull 2303</a>)
  <li class=bug>
    Don't go through init sequence twice.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2177">pull 2177</a>)
  <li class=bug>
    Create Item form can be navigated using keyboard again.
  	(<a href="https://issues.jenkins-ci.org/browse/JENKINS-33822">issue 33822</a>)
  <li class="rfe">
    Fix inline help for node name field.
  	(<a href="https://issues.jenkins-ci.org/browse/JENKINS-34601">issue 34601</a>)
<h3><a name=v2.1>What's new in 2.1</a> (2016/05/01)</h3>
Daniel Beck's avatar
Daniel Beck committed
<ul class=image>
  <li class="major bug">
  	Enable disabled dependencies during plugin installations.
  	(<a href="https://issues.jenkins-ci.org/browse/JENKINS-34494">issue 34494</a>)
  <li class="major bug">
  	Force ordering between GPG and jarsigner to ensure correct GPG signature.
  	(<a href="https://github.com/jenkinsci/jenkins/pull/2285">pull 2285</a>)