- async test macro that wraps the test like: let db = PgTempDB::new() test_fn(db) await db.async_shutdown() - .pgpass file instead of just writing password to file? only seems to be an issue for createdb and really at that point we could just execute with psql instead. - support all builder options in cli (e.g. --persist) - cache initial files from initdb or otherwise optimize all setup stuff - pg extensions? - unix socket connections - postgres log stuff (you can set the relevant conf options via the builder though) - figure out how hard it would be to read the postgres wire protocol and change the database name to a random one so that you can have 1 cluster and each connection connects to a new database, even from the cli - obviously this doesn't work if the client code wants to use multiple databases - conflicts with --persist