Blog

- May 23, 2012

Since the last blog post related to releases in February, we have pushed a couple of new versions, including 2.1 RC5 and 2.0.14 today. It’s time to recap a little about the changes they bring  and other important news…

Enhancements

Versions 2.1 RC4 and RC5 contain minor enhancements including:

  • Support for URI templates on the client-side
  • Improved internal HTTP connector (chunked encoding and SSL)
  • Added syntactic sugar on Resource, ClientResource and ServerResource
    • getAttribute(name), getQueryValue(name), getMatrixValue(name) and equivalent setters
    • accept(…) for easier content negotiation
    • setProxyChallengeRequest(..), setProxyChallengeResponse(…)
  • Added CertificateAuthenticator to SSL extension

Bug fixed

In addition, version 2.0.14 fixes 16 issues on the stable branch including:

  • Security issue in the XML extension related to XML entities
  • OutputRepresentation issue with binary data causing early end of file
  • User agent name detection for Firefox on Windows
  • Content negotiation, multiple cookies and interface introspection issues with JAX-RS extension

Also, versions 2.1 RC4 and RC5 contain 22 bug fixes.

“Restlet in Action” in pre-production

We have continued working hard on our book, benefiting from a great technical proofing work done by Tim Peierls and on the constant feed-back of readers in the book forum. The manuscript is now complete, with all chapters and appendices available in early access. We have also refined the first six chapters and led them into the pre-production stage.

We recently made significant enhancements to the security chapter (n°5) to add more complete and reusable sample code and to better connect it with surrounding chapters, listening to the feed-back of several readers. We still have a busy work schedule for the summer, but should be able to put our hands on the printed version around September or soon after!

Development of version 2.2

After migrating our code base to GitHub, we have done the same for our issues tracker, adding cross-references for existing issues. If you need to report bugs or enhancements requests, please only use GitHub from now on. We have also started using their wiki area as a replacement for our developers wiki currently using Daisy and will complete the migration of the next few months. Next steps are the migration of the mailing list to Google Groups and StackOverflow.

We have also complete the upgrade to Java 6 which will be the minimum requirement as Java 5 has been phased out, which allowed us to remove some dependencies and libraries. We have also clarified the build process, now relying solely on Ant to generate the editions and build them. Building from Eclipse is also simplified, not requiring PDE/OSGi anymore.

JavaScript editions

Finally, we have bootstrapped the development of two new JavaScript-based editions of the Restlet Framework, one for web browsers based solely on AJAX, and the other targeting Node.js. Of course, we are following the same semantics as the Restlet API for Java-based editions, but relying on code style and patterns specific to JavaScript development.

Currently, only the client-side of the API is available, including support for most common HTTP headers, and we will progressively complete the features scope, including the server-side aspects on Node.js. We are looking for alpha testers and contributors at this stage to help us bring RESTful web APIs and JavaScript together in a high-level and productive way.

Recent contributors

  • Alessandro Pacifici
  • Anca Luca
  • Andrei Pozolotin
  • Andy Dennie
  • Arjohn Kampman
  • Bjorn Roche
  • Bruno Harbulot
  • Fabio Mancinelli
  • Gabriel Pulido
  • Grzegorz Godlewski
  • Jean-Baptiste Dusseaut
  • John Logsdon
  • Laszlo Hordos
  • Marc Knaup
  • Martin Svensson
  • Michael Henderson
  • Nicholas Waltham
  • Shaun Elliott
  • Thomas Mortagne
  • Tim Peierls
  • Vincent Massol

Thanks to all others who helped us in various ways.

Additional resources

Changes log:
http://www.restlet.org/documentation/2.0/jse/changes
http://www.restlet.org/documentation/2.1/jse/changes

Download links:
http://www.restlet.org/downloads/