This was initially (in 9a2e8e0a) a `TimeoutError`. Would this require callers who set a `timeout` to also catch `EmptyPoolError`?