It's the Twelve Days of Dancer, 2023 edition!

The 2023 Dancer Advent Calendar, the Twelve Days of Dancer is up and running! We hope you'll enjoy this year's version - there's a lot of fun and practical gifts to be found there.

Hot on the heels of our earlier gift (Dancer2 1.1.0) come two more plugin releases, Dancer2::Plugin::Cache::CHI and Dancer2::Plugin::Syntax::GetPost.

Enjoy! Let us know what you think. Happy holidays to all! (and now it is time for this Dancer to enjoy a long winter's nap)


Dancer2 1.1.0 Released

Hey everyone,

Happy Holidays! Dancer2 1.1.0 has been released and is on its way to CPAN. It has one really awesome new feature: named routes.

With this update, you can name each route in your Dancer2 application, then refer to that route by name with a new keyword, uri_for_route. You have a lot of control over how this route is constructed, and can use it anywhere you were previously using uri_for. This helps you to avoid the need for lengthy URL references in your code, and makes it easier for you to build applications that are easier to grow, maintain, and later refactor.

You can read more about it in the Dancer2 manual, or check out the pull request that introduced the change. As a bonus, the Twelve Days of Dancer (our mini-advent calendar) launches this week, and Sawyer has written a great article that covers this new feature and keyword in-depth.

Happy Dancing! Jason/CromeDome

Dancer Advent Calendar 2023

Hey Dancers! We’re doing an advent calendar this year, and we’d love for you to contribute. Tell us your Dancer success story! Write about a project you worked on that used Dancer, a plugin you wrote, a plugin you love, anything.

December is coming fast, so get your ideas in now. Please reply to this post if you’d be interesting in helping with this year’s advent calendar.

Announcing Dancer2 1.0.0

On behalf of the Dancer Core Team, I am beyond excited to present you with Dancer2 1.0.0.

So how did we get here? Why now? I'll cover the specifics in a future blog post, but suffice it to say for now, we're stable, and we've been stable for a long time, but this was never reflected in our versioning. It's beyond time to commemorate that milestone.

If you're expecting big changes, you'll be disappointed that there aren't many on the technical side. Much of what's in this release involves adding some polish in spots, and smoothing out some jagged edges in others. Some important highlights include:

  • We've enabled GitHub Discussions on a trial basis as a means to better provide support and greater interaction with the community
  • Going forward, Dancer2 is (doing a better job of) adhering to the Semantic Versioning specification, making our version numbering easier to understand (and that includes for us, the core team!)
  • The Perl Toolchain gang recently announced that going forward, they’ll be tracking the Perl of 10 years ago. We have decided to follow suit. That doesn’t mean we will deliberately break backwards compatibility; that doesn’t mean Dancer2 won’t run on old Perl versions, but if something breaks on a Perl more than 10 years old it does mean we (probably) aren’t going to support that. It also means that going forward you'll see some newer Perl idioms and keywords in the Dancer2 code, especially when it makes code easier to implement and understand.
  • We’ve updated our contribution guidelines, providing new contributors with some more helpful guidance, and making our expectations for contributions clearer.
  • We’ve hard deprecated a mountain of old code. Hopefully you weren’t using it. The Core Team made some effort to either submit PRs or contact maintainers of plugins that are affected.

For more details, please see the Changes file.

We've recently partnered with TPRF to make it easier to donate to Dancer2. We’ll have more details to offer about this soon, but TL;DR: donating to Dancer2 will now be easier to do, and donations will be tax-deductible. The Core Team hopes you’ll take advantage of this new arrangement and help fund future development of Dancer2 and its ecosystem.

A number of bugs and minor enhancements have been made to our website in preparation for this release. We’ve got some additional incremental improvements ahead, but we hope you find this to be a nicer resource than it has been previously.

There's a lot of excitement among members of the core team, and Dancer2 1.0.0 is just the beginning. We've got some awesome ideas coming to fruition in the weeks and months ahead.

How can you help? Use Dancer2! Blog about it, tell your friends, especially your non-Perl using friends. Report bugs, send pull requests, improve the docs, donate some coffee or pizza or spare change... it all helps us to keep delivering.

Thank you for being such an amazing community. You make this worth doing for all of us.

Love, hugs, and, of course, the dance of joy!

Jason Crome / CromeDome, on behalf of the entire Dancer Core Team

Announcing Dancer Core Team Changes

We’re excited to announce that Ruth Holloway (GeekRuthie) has joined the Dancer Core Team.

Ruth is a longtime user of Dancer2, and has been one of our most vocal supporters in the greater Perl community. She’s responsible for a number of excellent additions to the Dancer2 ecosystem, and is an active member of our wonderful community.

Please join us in welcoming Ruth to our team. We’re looking forward to her continued contributions to the framework and community.

In other news, Steven Humphrey has retired from the Core Team. We’re grateful for his contributions …