[dancer-users] Dancer2 v0.161000 on its way to CPAN

Sawyer X xsawyerx at gmail.com
Wed Jul 8 14:15:06 BST 2015


Hi everyone,

A new version of Dancer2 is on its way to CPAN as we speak. It has a
lot of exciting changes that I want to share with you.

First of all, it's significantly faster, since the request object is
now fully based on Plack::Request. I'm very proud of that. There are
still additional spots we want to improve (I'm looking at you,
parameters!) and we have room for further optimizations (in fact
there's a branch waiting for merging that optimizes it even further),
but it's at a much better standing as of this release.

Security has improved thanks to work by Andy Beverley (thanks!) and
Russell Jenkins (G'day!). Thanks goes to long-time community member,
Pedro Melo!

The build and install time for Dancer2 has now been substantially
improved. We removed unnecessary dependencies (prompted by David
Golden!) and no longer require memory cycle tests (unless you have it
installed) or Module::Build, since we already support MakeMaker.

We now handle a long-standing issue of sending non-hash data. JSON
(and other serializers) allow you to serialize arrays or strings but
parameters don't work that way. Until now that would crash (and get
caught by Dancer, of course, but still annoying), whereas now it
silently ignores them for the parameters, but still makes them
available via "request->data".

An additional "VERSION" method fix, thanks to Miyagawa for reporting!

The old dispatcher which goes into effect when you call the "dance"
method (although we recommend "to_app" instead) had a small bug fix
provided.

Changelog with ticket numbers is included below.

A big thanks to everyone involved with this release and this lovely community.

>From the Dancer core dev team with love,
Sawyer.


0.161000  2015-07-08 14:57:16+02:00 Europe/Amsterdam

    [ BUG FIXES ]
    * GH #915, #930: Check existence of optional extension headers when
      behind proxy. (Andy Beverley, Pedro Melo, Russell Jenkins)
    * GH #926, #940: Set session directory default to $apprdir/session.
      (Russell Jenkins)
    * GH #936, #939: Use the error_template configuration on a 404.
      (Russell Jenkins)
    * GH #844, #937: Non-hash serialized params do not cause a crash. (Sawyer X)
    * GH #943: Pass @_ to UNIVERSAL's VERSION so it validates version number.
      (Sawyer X)
    * GH #934: Cleanup internals in the old Dispatcher. (Russell Jenkins)

    [ DOCUMENTATION ]
    * Sanitize Changes
    * GH #938: Fix POD link to params keyword. (Ludovic Tolhurst-Cleaver)
    * GH #935: Provide more details and considerations when using
      behind_proxy. (Andy Beverley)

    [ ENHANCEMENT ]
    * GH #933: use note in tests to produce cleaner non-verbose output (Vernon)
    * Remove unnecessary dependencies: build chain should be smaller. (Sawyer X)
    * No need for Module::Build. (Sawyer X)
    * GH #911: Dancer2 request object is now a subclass of Plack::Request.
      It's also much faster now. (Sawyer X)


More information about the dancer-users mailing list