Monthly Archives: May 2011
Bot::BasicBot::Pluggable::Module::GitHub
We have an IRC bot in the #dancer IRC channel powered by Bot::BasicBot::Pluggable, and I recently wrote some new features as a distribution of modules which I plan to release to CPAN soon.
Until then, you can see the code in the Bot::BasicBot::Pluggable::Module::GitHub repository on GitHub.
There are two modules so far:
EasyLinks
Bot::BasicBot::Pluggable::Module::GitHub::EasyLinks recognises certain elements within discussions on IRC and provides responses containing titles/URLs to see the corresponding entity, for instance:
<someuser> I'm just working on Issue 42 now
<bot> Issue 42 (Issue Title - Issues - sukria/Dancer - GitHub) - https://github.com/user/project/issues/42
<someuser> I've just submitted PR 517, anyone want to merge it?
<bot> Pull request 517 (Pull request title - Pull Request - GitHub) - https://github.com/user/project/pull/517
<someuser> What do you think of commit 0d2752 then?
<bot> Commit 0d2752 (Commit message summary here) - https://github.com/user/project/commit/0d2752...
PullRequests
Responds to a !pr command, reporting the number of open pull requests, either for whatever project is specified as the default for that channel, or a specific project can be named. For instance:
<someuser> !pr user/project
<bot> Open pull requests for user/project : 5 pull requests open (usera:3, userb:2)
I plan to add more features before releasing the first version to CPAN; in particular, I’d like to add commit hook support, so the module could spawn a trivial webserver to listen for hook triggers from GitHub, and announce commits.
As always, contributions would be welcomed.
Welcoming ambs to the Dancer core dev team
Alberto Simões (ambs) has been a helpful contributor to the Perl Dancer web framework for some time now, submitting a lot of helpful pull requests and being a valued member of the community providing ideas and support to new users.
I’m very happy to note that ambs is now a member of the Dancer core developers team – great to see all that hard work recognised (well, Dancer 1.3030 was released with codename “Silence of the ambs” as recognition too :) )
Welcome aboard, ambs!
Dancer::Plugin::SimpleCRUD 0.03 and Dancer::Plugin::Database 1.24
A busy evening’s hacking on Dancer plugins tonight. I’ve released Dancer::Plugin::SimpleCRUD 0.03, which incorporates a new search feature kindly contributed by Alberto Simões which I’ve been meaning to release for a while, along with removing the dependency on SQL::Abstract in favour of the convenience methods provided by Dancer::Plugin::Database, which will make D::P::SimpleCRUD work correctly with PostgreSQL databases too – thanks to Jonathan Barber for reporting this issue in RT #68040.
(I should point out that the problem was not with SQL::Abstract, but with D::P::SimpleCRUD setting the quote_char param to a backtick, which is good for MySQL and SQLite, but not so much for PostgreSQL. The code in D::P::Database uses the quote() / quote_identifer() methods provided by DBI, so should Do The Right Thing for any DBI-supported database engine.)
Also released is version 1.24 of Dancer::Plugin::Database, fixing a bug with the log_queries setting reported today on IRC by Martin P Evans (mpe) – thanks Martin!
As soon as time permits, I intend to add more features and refinement to Dancer::Plugin::SimpleCRUD to make it even more useful. Any contributions would be very welcome indeed – you can fork the Dancer::Plugin::SimpleCRUD repository on GitHub and submit pull requests, or contact me with patches.
(You can also find Dancer::Plugin::Database on GitHub, and if you’re interested in my other projects or “following” me, see my GitHub profile.)
Alternative vote – best explanation I’ve seen
I’m still not fully decided whether to vote yes or no to the Alternative Vote (AV) in the upcoming poll here, but I rather like this explanation of why it’s a good thing:

