Dancer::Plugin::Database and Dancer2::Plugin::Database
Not sure if you already noticed that Dancer2 is already on CPAN. It is usable and in fact I know some people using it in production.
Unlike other modules that just evolved until a version 2, the Dancer team decided that Dancer2 will be a different module, and Dancer (version 1) will continue to be maintained. I do not want to discuss on whether this decision is good or bad, but it was a decision.
Now, Plugins for Dancer and Dancer2 are different. In one hand it makes it easier to write plugins for each of the Dancer versions. At the other hand, it makes it more difficult to have shared plugins.
With Dancer::Plugin::Database we wanted to have the less possible work on maintaining two versions. With that in mind we decided to create a shared core module, named Dancer::Plugin::Database::Core with most of the code. And now, Dancer::Plugin::Database and Dancer2::Plugin::Database just use the specific Plugin syntax to glue the Core with the running Dancer version.
Although we think this is working pretty well, if you are a Dancer::Plugin::Database user, please test the latest version, and let us know of any problem it might have.