Changes for version 2.0.0 - 2025-09-15
- BUG FIXES
- GH #1701: Split cookie values on & only (Yanick Champoux)
- ENHANCEMENTS
- GH #530: Make data censoring configurable (Yanick Champoux, David Precious)
- GH #850: Scaffold tutorial app; allow multiple apps to be scaffolded in core Dancer2 (Jason A. Crome)
- GH #1512: Log hook entries as they are executed (Yanick Champoux)
- GH #1615: Remove Dancer2::Template::Simple from Dancer2 core (Jason A. Crome)
- PR #1637: New, extendable configuration system (Mikko Koivunalho)
- GH #1723: Enable use of a different Template Toolkit base class (Andy Beverley)
- PR #1727: Don't create CPAN package files when generating new apps (Jason A. Crome)
- PR #1731: Retire Template::Tiny fork, use CPAN's (Jason A. Crome, Karen Etheridge, Damien Krotkine, Yanick Champoux)
- PR #1736: Allow config system to bootstrap itself (Yanick Champoux)
- GH #1737: Add on_hook_exception for errors during hook processing (Andy Beverley)
- PR #1739: Add source to on_hook_exception (Andy Beverley)
- PR #1742: Refactor CLI for future expansion (Jason A. Crome)
- DOCUMENTATION
- DEPRECATED
- None
- MISC
- None
Documentation
Define the process by which outdated, broken, or unused code is removed from Dancer2
A guide to building web applications with Dancer2
Dancer2 Configuration Reference
Example-driven quick-start to the Dancer2 web framework
A non-exhaustive guide to put your Dancer2 app into production
A guide to extending Dancer2 via engines and plugins
Dancer2 DSL Keyword Reference
Migrating from Dancer to Dancer2
A curated list of recommended Dancer2 plugins
Quickly install Dancer2 and boostrap a new application
Writing tests for Dancer2
A step-by-step guide to get you dancing
Dancer core and community policy and standards of conduct
Dancer2 command line interface
Modules
Lightweight yet powerful web application framework
Dancer2 CLI application
Create new Dancer2 application
Display Dancer2 version
Config reader for Dancer2 App
Config reader for files
Config utility helpers
Core libraries for Dancer2 2.0
encapsulation of Dancer2 packages
A cookie representing class
Dancer2's Domain Specific Language (DSL)
Class for dispatching request to the appropriate route handler
Class representing fatal errors
Instantiate components by type and name
helper for rendering HTTP status codes for Dancer2
Manipulate hooks with Dancer2
Class to ease manipulation of MIME types
Interface for accessing incoming requests
Class representing file upload requests
Response object for Dancer2
Delayed responses
Config reader role for Dancer2 core objects
Role for DSL
Role for engines
Role for Handlers
Role that represents the config of Dancer2 App
Role for application environment name
Role for application location "guessing"
Role for hookable objects
Role for logger engines
Role for Serializer engines
Role for session factories
Role for file-based session factories
Role to provide commonly used responses
Role for template engines
Dancer2's route handler
Top-layer class to start a dancer app
class to represent any session object
class to handle common helpers for time manipulations
Type::Tiny types for Dancer2 core.
File utility helpers
Class for handling the AutoPage feature
class for handling file content rendering
Capture dancer logs
a place to store captured Dancer2 logs
Console logger
Test::More diag() logging engine for Dancer2
file-based logging engine for Dancer2
Test::More note() logging engine for Dancer2
Blackhole-like silent logging engine for Dancer2
base class for Dancer2 plugins
Serializer for handling Dumper data
Serializer for handling JSON data
Serialize and deserialize content based on HTTP header
Serializer for handling YAML data
in-memory session backend for Dancer2
YAML-file-based session backend for Dancer2
Template toolkit engine for Dancer2
Template::Tiny engine for Dancer2
Useful routines for testing Dancer2 apps