fork from https://bitbucket.org/zzzeek/alembic