This doesn't respect node-style callbacks. If this wasn't an error, the first parameter should be `null`