<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
        <meta charset="utf-8">
        <title>Apache Wicket 8.0.0-M2 released | Apache Wicket</title>
        <meta name="viewport" content="width=device-width, initial-scale=1" />

        <link rel="shortcut icon" href="/favicon.ico" type="image/vnd.microsoft.icon" />
        <link rel="stylesheet" href="/css/style.css" type="text/css" media="screen" />
        <link href="//maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" />

		<script src="//code.jquery.com/jquery-1.11.3.min.js"></script>

    </head>

    <body class="">
        <div class="header default">
    <div class="l-menu-container">
<nav class="mainmenu">
    <ul>
		<!-- /start/quickstart.html || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/start/quickstart.html">Quick Start</a></li>
		<!-- /start/download.html || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/start/download.html">Download</a></li>
		<!-- /learn || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/learn">Documentation</a></li>
		<!-- /help || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/help">Support</a></li>
		<!-- /contribute || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/contribute">Contribute</a></li>
		<!-- /community || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/community">Community</a></li>
		<!-- /apache || /news/2016/10/26/wicket-8.0.0-M2-released.html -->
    	<li class=""><a href="/apache">Apache</a></li>
    </ul>
</nav>
        <div class="logo">
    <a href="/"><img src="/img/logo-apachewicket.svg" alt="Apache Wicket"></a>
</div>
    </div>
</div>
<main>
    <div class="l-container">
        <header class="l-full preamble">
            <h1>Apache Wicket 8.0.0-M2 released</h1>
        </header>
        <section class="left">
            <div class="l-full">
    <p class="meta">26 Oct 2016</p>
    <p>The Apache Wicket PMC is proud to announce Apache Wicket 8.0.0-M2!</p>
<p>Apache Wicket is an open source Java component oriented web application
framework that powers thousands of web applications and web sites for
governments, stores, universities, cities, banks, email providers, and
more. You can find more about Apache Wicket at https://wicket.apache.org</p>
<p>This release marks the first milestone of the major release of Wicket 8. We
use semantic versioning for the development of Wicket, and as such no
API breaks are present breaks are present in this release compared to
8.0.0.</p>
<h2 id="using-this-release">Using this release</h2>
<p>With Apache Maven update your dependency to (and don’t forget to
update any other dependencies on Wicket projects to the same version):</p>
<figure class="highlight"><pre><code class="language-xml" data-lang="xml"><span class="nt">&lt;dependency&gt;</span>
    <span class="nt">&lt;groupId&gt;</span>org.apache.wicket<span class="nt">&lt;/groupId&gt;</span>
    <span class="nt">&lt;artifactId&gt;</span>wicket-core<span class="nt">&lt;/artifactId&gt;</span>
    <span class="nt">&lt;version&gt;</span>8.0.0-M2<span class="nt">&lt;/version&gt;</span>
<span class="nt">&lt;/dependency&gt;</span></code></pre></figure>
<p>Or download and build the distribution yourself, or use our
convenience binary package</p>
<ul>
  <li>Source: <a href="http://www.apache.org/dyn/closer.cgi/wicket/8.0.0-M2">8.0.0-M2 source download</a></li>
  <li>Binary: <a href="http://www.apache.org/dyn/closer.cgi/wicket/8.0.0-M2/binaries">8.0.0-M2 binary download</a></li>
</ul>
<!--more-->
<h2 id="upgrading-from-earlier-versions">Upgrading from earlier versions</h2>
<p>If you upgrade from 8.y.z this release is a drop in replacement. If
you come from a version prior to 8.0.0, please read our Wicket 7
migration guide found at</p>
<ul>
  <li><a href="http://s.apache.org/wicket8migration">http://s.apache.org/wicket8migration</a></li>
</ul>
<p>Have fun!</p>
<p>— The Wicket team</p>
<p>================================</p>
<p>The signatures for the source release artefacts:</p>
<p>Signature for apache-wicket-8.0.0-M2.zip:</p>
<div class="highlight"><pre> 
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iEYEABECAAYFAlgHzXgACgkQJBX8W/xy/UU4+ACgxCcY0zPKiw3x7n0rizY9CkiN
3tkAmwYX0hrkfkSYJKkkBaMSrI+z/zSf
=9mFS
-----END PGP SIGNATURE-----
</pre></div>
<p>Signature for apache-wicket-8.0.0-M2.tar.gz:</p>
<div class="highlight"><pre> 
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - https://gpgtools.org
iEYEABECAAYFAlgHzXgACgkQJBX8W/xy/UU+GQCgsvsRwloc9JSMB1ieJT+6aoqR
CWsAnAmmb+z3Exzbn2bT8zE3IrY6wUHw
=LVj6
-----END PGP SIGNATURE-----
</pre></div>
<p>================================</p>
<h3 id="this-release">This Release</h3>
<h4 id="changelog-for-800-m2">CHANGELOG for 8.0.0-M2:</h4>
<h5 id="sub-task">Sub-task</h5>
<ul>
  <li>[WICKET-6243] - ResourceReferenceAutolink component resolved by
AutoLinkResolver ignores session locale changes</li>
</ul>
<h5 id="bug">Bug</h5>
<ul>
  <li>[WICKET-5836] - Update the version of clirr-maven-plugin (current 2.6.1)</li>
  <li>[WICKET-5972] - Datepicker “Close” text overlays ‘x’ icon.</li>
  <li>[WICKET-6041] - Nested forms / parent FormComponents do not reflect updated model when nested form submitted</li>
  <li>[WICKET-6136] - AutoCompleteTextField issue in Android 5.1.1</li>
  <li>[WICKET-6161] - SecuritySettings.setEnforceMounts() should be applicable for all kind of pages</li>
  <li>[WICKET-6192] - Remove recreateBookmarkablePagesAfterExpiry check in AbstractBookmarkableMapper#mapHandler</li>
  <li>[WICKET-6196] - CheckingObjectOutputStream broken in Wicket 7</li>
  <li>[WICKET-6198] - Unable to disable a MultiFileUploadField</li>
  <li>[WICKET-6202] - Guide: 26.1 Page storing, section HttpSessionDataStore - example code is not correct</li>
  <li>[WICKET-6204] - Copy only the provided attributes for Ajax link inclusion</li>
  <li>[WICKET-6209] - requesting focus on disabled field fails with error in IE8</li>
  <li>[WICKET-6214] - ModalWindow broken on IE</li>
  <li>[WICKET-6215] - Test fail when non empty model is set to PasswordTextField</li>
  <li>[WICKET-6216] - Problem with queued components and border</li>
  <li>[WICKET-6217] - Enclosure broken within Border/Panel</li>
  <li>[WICKET-6219] - Fragment fails to report an error in development mode</li>
  <li>[WICKET-6220] - TagTester incomplete support for void elements</li>
  <li>[WICKET-6221] - WicketTester - missing border path</li>
  <li>[WICKET-6222] - renderHead not called with anonymous inner Border class</li>
  <li>[WICKET-6225] - Button wrongly sets its model object as ‘value’ attribute</li>
  <li>[WICKET-6227] - CharSequenceResource calculates wrong length when there are unicode symbols</li>
  <li>[WICKET-6230] - Infinite redirection when using UrlPathPageParametersEncoder</li>
  <li>[WICKET-6231] - wicket:enclosure and getVariation().</li>
  <li>[WICKET-6232] - When sending binary data from server to client, wicket-websocket-jquery.js throws error “message.indexOf is not a function”</li>
  <li>[WICKET-6235] - TableTree#updateNode() fails if no corresponding node is visible</li>
  <li>[WICKET-6236] - Files.remove() causes a 5 seconds delay instead of 500ms as was intended</li>
  <li>[WICKET-6237] - PageRequestHandlerTracker doesn’t work with IRequestHandlerDelegate</li>
  <li>[WICKET-6238] - pub2 Wicket example isn’t switching the beer images</li>
  <li>[WICKET-6241] - CheckingObjectOutputStream should track the original instance, before writeReplace()</li>
  <li>[WICKET-6242] - Weak concurrency management in AuthenticatedWebSession#signedIn</li>
  <li>[WICKET-6244] - Palette does not list unselected options</li>
  <li>[WICKET-6245] - Open up CsrfPreventionRequestCycleListener for extension</li>
  <li>[WICKET-6249] - Invalid state of LoadableDetachableModel with exception during load()</li>
  <li>[WICKET-6250] - FileUploadField does not deteach models and fails to null the reference to the transient fileUploads field if forceCloseStreamsOnDetach is false</li>
  <li>[WICKET-6254] - Wicket WebSockets problem behind HTTP proxy without servlet context</li>
</ul>
<h5 id="improvement">Improvement</h5>
<ul>
  <li>[WICKET-5866] - Reconsider generics of IConverterLocator#getConverter()</li>
  <li>[WICKET-5920] - roll a version of ListDataProvider implementing ISortableDetachable model</li>
  <li>[WICKET-6200] - Add default converters for Java 8 classes</li>
  <li>[WICKET-6203] - Rename IModel#mapWith() to IModel#combineWith() and reorder the parameters</li>
  <li>[WICKET-6206] - Allow to use custom anticache parameter value for Image component</li>
  <li>[WICKET-6210] - FileUpload does not support files of zero size</li>
  <li>[WICKET-6211] - PasswordTextField should clear password by default</li>
  <li>[WICKET-6226] -  DOCTYPE URL in properties.xml example in wicket documentation won’t work.</li>
  <li>[WICKET-6228] - Hide AuthenticatedWebSession#signOut() from the public API</li>
  <li>[WICKET-6229] - Introduce a new setting in ExceptionSettings to control whether to throw exception or log a WARN when requesting for markup id on non-renderable component</li>
  <li>[WICKET-6233] - Add component info in the error messages related to WicketTester #assertComponentOnAjaxResponse()</li>
  <li>[WICKET-6234] - Log the decrypted url in CryptoMapper for debugging purposes</li>
  <li>[WICKET-6239] - Use Response#addHeader() instead of #setContentLength()</li>
  <li>[WICKET-6240] - Hook method to display more information on ExceptionErrorPage</li>
</ul>
<h5 id="new-feature">New Feature</h5>
<ul>
  <li>[WICKET-5623] - Custom Getters and Setters for PropertyResolver</li>
  <li>[WICKET-6194] - PushBuilder API integration</li>
</ul>
</div>
        </section>
    </div>
</main>
        <footer class="l-container">
            <div class="l-full">
   	<img src="/img/asf_logo_url.svg" style="height:90px; float:left; margin-right:10px;">
    <div style="margin-top:12px;">Copyright © 2020 — The Apache Software Foundation. Apache Wicket, Wicket, Apache, the Apache feather logo, and the Apache Wicket project logo are trademarks of The Apache Software Foundation. All other marks mentioned may be trademarks or registered trademarks of their respective owners.</div>
</div>
        </footer>
    </body>

</html>
