Mrgiggles: Difference between revisions
Jump to navigation
Jump to search
(→Areas of Functionality (aka Plugins): knowledge plugin) |
(→Areas of Functionality (aka Plugins): knowledge example) |
||
Line 16: | Line 16: | ||
* map: Timezone lookup (mrgiggles: what time is it in Perth?) | * map: Timezone lookup (mrgiggles: what time is it in Perth?) | ||
* mqext: Suggest reviewers or bug components for patches to a given file (mrgiggles: who has reviewed nsJSEnvironment.cpp?) | * mqext: Suggest reviewers or bug components for patches to a given file (mrgiggles: who has reviewed nsJSEnvironment.cpp?) | ||
* knowledge: Return information about the interpretation of hex values as nsresult codes, JS::Values, or poison patterns | * knowledge: Return information about the interpretation of hex values as nsresult codes, JS::Values, or poison patterns (mrgiggles: what is 0xe5e5e5e5e5f7?) | ||
== Source == | == Source == |
Revision as of 23:27, 29 March 2019
Mr. Giggles
mrgiggles is an IRC bot originally created for monitoring and reporting on the results of a static analysis for GC (garbage collection) rooting hazards. It has grown beyond this original purpose, as such things often do.
Usage
For now, just ask him.
/msg mrgiggles help
Areas of Functionality (aka Plugins)
- analysis: Reporting on static rooting hazard analysis results for SpiderMonkey engine (mrgiggles: help analysis)
- treewatch: Watching the tree for openings/closures (mrgiggles: tell me when inbound opens or mrgiggles: help treewatch)
- pun: Telling puns (mrgiggles: pun)
- map: Timezone lookup (mrgiggles: what time is it in Perth?)
- mqext: Suggest reviewers or bug components for patches to a given file (mrgiggles: who has reviewed nsJSEnvironment.cpp?)
- knowledge: Return information about the interpretation of hex values as nsresult codes, JS::Values, or poison patterns (mrgiggles: what is 0xe5e5e5e5e5f7?)
Source
The source code may be found at https://bitbucket.org/sfink/mrgiggles
Note that you will almost certainly want a mrgiggles_config.py file. (I'm not sure if it still works without one, but probably not.) Not so basic example:
config = {
'nick': 'drchuckles',
'server': "irc.mozilla.org",
'port': 6667,
'password': "...",
'bitly_token': 'e4718deadbeefdeadbeef2422078f51d2cc41a4c',
'poll-interval': 10, # Seconds
'debug-channel': '#my-debug-channel',
'report-channels': [ '#my-debug-channel', '#mychannel' ],
'nondebug-channels': [ '#mychannel', '#theirchannel' ],
'var-path': "/home/tweety/var/{nick}",
'plugins': {
'treewatch': { 'class': 'TreeWatchPlugin',
'poll-interval': 180 },
'mqext': { 'class': 'MQExtPlugin' },
'pulse': {
'class': 'PulsePlugin',
'server': 'pulse.mozilla.org',
'port': 5672,
'user': 'mrgiggles',
'password': '...',
'exchanges': {
'build': 'exchange/build',
},
'queues': {
'build': 'queue/{user}/builds',
},
},
'pun': { 'class': 'PunPlugin' },
}
}