Dancer2 0.300004 Released

The Dancer Core Team would like to announce the availability of Dancer2 0.300004. This release brings several important fixes and enhancements:

  • Session cookies can be restricted to a first-party or same-site context

  • There were a number of spots where Dancer2 would return a 500 error upon receiving an invalid request, rather than (correctly) returning 400 - Bad Request. Many, if not all, of these have been fixed.

For more information about same-site context, please refer to RFC-6265bis.

To use this, add the cookie_same_site key to your session engine configuration in the appropriate YAML file. Valid settings include Strict, Lax, and None.

The complete changelog is as follows: 0.300004 2020-05-26 20:52:34-04:00 America/New_York

[ BUG FIXES ]
* GH #1509: Request instantiation fails throw 400 Bad Response (Russell
  @veryrusty Jenkins). This resolves GH #1056, 1482, 1496, 1507, 1508,
  and 1510.

[ ENHANCEMENTS ]
* GH #1510: Test for proper multi-part form handing (ice-lenor, Sawyer X)
* GH #1547: Cookie SameSite support (Russell @veryrusty Jenkins)

[ DOCUMENTATION ]
* None

Thanks for your pull requests and bug reports. We really appreciate the help we receive from our community!

Until next time, keep on Dancing!

Dancer2 0.300001 Released

On behalf of the Dancer Core Team, I’d like to announce the availability of Dancer2 0.300001. This maintenance release brings brings a revamped tutorial, fixing of a YAML-related regression, repair of an encoding bug, and a slew of documentation fixes.

The full changelog is as follows:

0.300001  2020-04-06 12:14:47-04:00 America/New_York

[ BUG FIXES ]
* GH #1461: Relax redirect to match RFC_7231 (James Raspass)
* GH #1499: Don't double decode date strings (simbabque)
* GH #1536: Fix storing objects in YAML sessions (Tom Hukins)

[ ENHANCEMENTS ]
* GH #1540: Improve configuration handling (Tom Hukins)

[ DOCUMENTATION ]
* GH #1425: Revamped Tutorial (Steve Dondley)
* GH #1521: Documentation on configuring the adress to listen on: 
  "server" does not seem to work, but "host" does (Ma_Sys.ma)
* GH #1530: Fix missing space in docs (ferki)
* GH #1535: Fix example code in SessionFactory::File (Sergiy Borodych)
* GH #1538: Defined or should not be an assignment (Timothy Alexis 
  Vass)

Personally, I’d like to thank SysPete for spending a lot of time helping me to prepare for this release, and to my employer Clearbuilt for giving me some spare cycles at work to get this out the door.

The Dancer Core Team hopes that you are all staying safe in these difficult times. Wash your hands, maintain a safe distance from others, and keep on dancing!

Dancer2 0.300000 released

The Dancer Core Team has one more holiday treat in store for you: Dancer2 0.300000 is headed to CPAN, and it's a good one: Dancer now offers typed route parameters!

To be clear, all of the existing route syntax is unaffected. You don't have to use types, and typed parameters might not be good for all situations. There is a lot to be gained from having them though, and we're excited to bring them to you!

Using them in your own code is simple:

get '/thing/:id[Int]' => sub {};

# if not Int then perhaps a Num...
get '/thing/:id[Num]' => sub {};

The default type checking library is Type::Tiny, but you can also specify your own type checking library too. See the manual for more information.

A big thanks to SysPete for making this long-standing request a reality.

I'd also like to apologize to Tom Hukins. I erroneously listed a PR of his in the last release that didn't seem to make it in. I believe that I have made things better in this release.

Happy holidays from your friends at Dancer! See you in 2020.

Dancer2 0.208002

Your gift is arriving just a bit early this year: a new Dancer2 just in time for the holidays!

There are a number of documentation fixes and enhancements in this version. The largest change you will see under the hood removes Return::MultiLevel (and therefore Scope::Upper) from the list of Dancer2 dependencies, and makes your favorite lightweight web application framework just a little bit lighter.

The full changelog follows:

0.208002  2019-12-14 16:08:46-05:00 America/New_York

[ BUG FIXES ]
* GH#1527: Update travis dist to 'trusty' (Sergiy Borodych)

[ ENHANCEMENTS ]
* GH #1525: Remove use of Return::MultiLevel, and implement stack frame 
  jumping manually (Graham Knop)

[ DOCUMENTATION ]
* GH #1505: Fix Flaskr link (Mohammad S Anwar)
* GH #1506, 1520: Explain what add_route() does with args (Tom Hukins)
* GH #1519: Fix Template Toolkit config docs (Tom Hukins)
* GH #1522: Fix itetare typo (Stefan Hornburg - Racke)
* GH #1523: Fix typo in Template Toolkit documentation (Mike Katasonov)
* GH #1524: Fix error in configuration documentation (Tom Hukins)
* GH #1526: Mention that TT2 config start_tag/end_tag need escaping 
  (Chris White)
* GH #1528: Note that"Engines" key must be merged in config.yml (Chris
  White)

Barring any show-stopping bugs or security vulnerabilities, this will be the last release of the year. Happy holidays, and we will see you in 2020!

Dancer2 0.208001 Released

The Dancer Core Team just released a minor update, which is on its way to your favorite CPAN mirror now. The fixes include:

  • GH #1515: Add Types::Standard to cpanfile (Russell @veryrusty Jenkins)
  • GH #1513: Fix Dancer2::Test typo (Utkarsh Gupta)

Keep on Dancing!