I’ve released a new distribution for Bot::BasicBot::Pluggable powered IRC bots, providing some useful GitHub-related functionality, named Bot::BasicBot::Pluggable::Module::GitHub.
The following modules are included – see the documentation for each for more details on how to use them.
Bot::BasicBot::Pluggable::Module::GitHub::EasyLinks
Provides quick URLs to view issues/pull requests etc when someone mentions one – for example:
<user> Go have a look at Issue 42
<bot1> Issue 42 (It doesn't work) https://github.com/....
<user> I fixed that in 5fcbb01
<bot1> Commit 5fcbb01 (Retarded logic fail.) - https://github.com/....
You can set a default project per-channel, so the above examples will look at whatever project is set as default for the channel the message was in.
You can also explicitly tell it to look at any other GitHub project:
<user> 5fcbb01 @ bigpresh/Bot-BasicBot-Pluggable-Module-GitHub
<bot1> Commit 5fcbb01 (Retarded logic fail.) - https://github.com/...
Bot::BasicBot::Pluggable::Module::GitHub::PullRequests
Monitor pull requests for GitHub projects.
Example:
<@bigpresh> !pr
< sophie> Open pull requests for sukria/Dancer : 8 pull requests open (felixdo:3, perlpilot:1, jamhed:1, dams:1, ambs:1, JTimothyKing:1)
Bot::BasicBot::Pluggable::Module::GitHub::Announce
Announces issues raised/closed for each channel’s default project.
Periodically checks on issues for each project, and reports changes,
for example:
< sophie> Issues closed : 667 (YAML::XS for Session::YAML) by jamhed : https://github.com/sukria/Dancer/issues/667
The code is on CPAN, and is available on GitHub. Contributions / bug reports / suggestions encouraged.