github/hubot — pull request #432 by technicalpickles (2013-03-10 21:50:54+00:00)
Title: Exit on errors during startup

I reviewed `bin/hubot` and `src/robot.coffee` for cases where we catch errors, and only logged it. There were several that I would consider critical, like if there's an error, hubot should be exitted, as it wouldn't be fully working as configured.

The motivation for this was an issue last week where I had scripts in `hubot-scripts.json`, but somehow my install of hubot-scripts was missing a bunch of scripts were simply missing. Most notably was redis-brain.coffee, which meant it looked like hubot's brain wasn't persisting between restarts... which it wasn't, since it was using the default in memory brain.

I know that particular issue was probably a fluke, but I'm hoping to make it more clear when there's hubot-breaking issues at startup like it. Off hand, it'd be particularly useful for new users adding their scripts (which would exit with error on syntax error), or if they make an error in `hubot-scripts` (which would exit with error on json syntax error, or if the script doesn't exist), etc.

This should be a pretty safe set of changes, but if there's any users that have errors like this now exits on, they are obviously going to have failures at startup, but that is probably for the best. I think that puts this as a minor version bump, rather than a patch version.