Now that I've put Djet into production, I recon it's time I at least told about it.
Djet is a Node Based Content Management System. It's a rather advanced one, using features from modern Perl and PostgreSQL. It's meant to be used behind some kind of frontend server, e.g. Nginx, or at least a Web Cache like Varnish.
Perhaps you remember Padre, The Perl IDE. It was started around 5 years ago, had a lot of development, and ended up being a quite decent programmer's editor.
Alas it's been suffering from lack of care for a couple of years now. Not because of lack of need or interest, but because nobody seems to have the time. And perhaps somebody needs to step up and grab the torch. Perhaps it's you?
Role::REST::Client is a small module to be used as a Moose role. It will enable your module to call REST services in a clean, transparent way. It was originally a part of Catalyst::Model::REST , and I guess that is still the main use case, but it can really be used in any module needing to call a REST service. To use it, all you have to do is
use Moose; with 'Role::REST::Client';
and you will be able to use ->get, ->post, and so on with Role::REST::Client handling the encoding, (de)serialization, etc of the call. Thanks to many contributions from Wallace Reis, Matt Phillips and Mark Stosberg it is very configurable and robust.
I've been getting error reports for some time, but a cursory glance through the code showed no faulty use of hashes. I've used all my ressources at $work, so I haven't had time to dig into this problem, until Сергей Романов (sergeyromanov) poked me with a pointy test case. The problem was easy to find, two parameters to ->new relying on their individual order.
Problem is fixed and uploaded to CPAN as Role::REST::Client 0.15