- Added
--migrations-table
flag to specify custom schema_migrations table (#178) - PostgreSQL: Support custom schema (search path) using
search_path
URL parameter (#167, #169, #166) - MySQL: Create the
schema_migrations
table usinglatin1
charset to avoid index length limits withutf8mb4
(#172) - Go v1.15 and additional linters (#161, #165, #170)
- Refactored drivers into separate packages (#179)
Backwards compatibility note: If you are using PostgreSQL with the (previously undocumented) search_path
parameter in your URL, you will need to take action depending on the desired location of your schema_migrations
table:
Prior to dbmate v1.11, the
schema_migrations
table was always stored in thepublic
schema. Going forward, dbmate will always storeschema_migrations
in the first schema of yoursearch_path
.If you wish to adopt the new behavior, you need to manually move your schema migrations table to the first schema in your
search_path
:ALTER TABLE public.schema_migrations SET SCHEMA myschemaAlternatively, you can force dbmate to continue storing the migrations table in the public schema by using the
--migrations-table "public.schema_migrations"
CLI flag.If you are only using the default (public) schema and did not specify a
search_path
in your URL, no action is necessary.