Library authors, please assert your expectations early. We spent too much time today trying to track down a bizarre error because we forgot to attach a property to
module.exports. Yes, we felt silly after we realized the mistake, but it wouldn’t be too difficult to ensure the callback argument is actually a function.
I know I should submit a pull request, and for this library I probably will. Or better, I’ll see if the intern I was helping (poorly) would rather take it on; the GitHub contributions will be more useful to somebody about to finish up a CS degree.