245 lines
6.5 KiB
Markdown
245 lines
6.5 KiB
Markdown
|
|
# Changelog for v3.x
|
||
|
|
|
||
|
|
## v3.4.4 (2020-05-19)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [sandbox] Add `Ecto.Adapters.SQL.start_owner!/2` and `Ecto.Adapters.SQL.stop_owner/1`
|
||
|
|
* [myxql] decode BIT columns when using MyXQL and `:boolean` type
|
||
|
|
* [migrations] Use one line per migration in the schema dump
|
||
|
|
|
||
|
|
## v3.4.3 (2020-04-27)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [ecto] Support `as` and `parent_as` from Ecto v3.4.3+
|
||
|
|
* [ecto] Support `x in subquery(query)` from Ecto v3.4.3+
|
||
|
|
|
||
|
|
## v3.4.2 (2020-04-02)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [myxql] A binary with size should be a varbinary
|
||
|
|
* [mssql] A binary without size should be a varbinary(max)
|
||
|
|
|
||
|
|
## v3.4.1 (2020-03-25)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [myxql] Assume the reference does not change in MyXQL and prepare for v0.4.0
|
||
|
|
|
||
|
|
## v3.4.0 (2020-03-24)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [adapters] Support Ecto's v3.4 `json_extract_path/2`
|
||
|
|
* [migrations] Support multiple migration paths to be given with `--migration-path`
|
||
|
|
* [mssql] Add built-in support to MSSQL via the TDS adapter
|
||
|
|
* [repo] Support custom options on telemetry
|
||
|
|
|
||
|
|
## v3.3.4 (2020-02-14)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [adapters] Support fragments in locks
|
||
|
|
* [migration] Add `:include` option to support covering indexes
|
||
|
|
|
||
|
|
## v3.3.3 (2020-01-28)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [myxql] Allow not setting the encoding when creating a database
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [myxql] Removing prefixed table name from constraints on latest MySQL versions
|
||
|
|
* [sql] Fix precedence of `is_nil` when inside a comparison operator
|
||
|
|
|
||
|
|
## v3.3.2 (2019-12-15)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [adapters] Start StorageSupervisor before using it
|
||
|
|
|
||
|
|
## v3.3.1 (2019-12-15)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [adapters] Do not leak PIDs on storage commands
|
||
|
|
* [migrations] Use :migration_primary_key in create/1
|
||
|
|
|
||
|
|
## v3.3.0 (2019-12-11)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [ecto] Upgrade and support Ecto v3.3
|
||
|
|
* [repo] Include `:idle_time` on telemetry measuremnts
|
||
|
|
* [migration] Support anonymous functions in `Ecto.Migration.execute/2`
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [migration] Ensure that flush() will raise on rollback if called from `change/0`
|
||
|
|
|
||
|
|
## v3.2.2 (2019-11-25)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [mysql] Support myxql v0.3
|
||
|
|
|
||
|
|
## v3.2.1 (2019-11-02)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migration] Support anonymous functions in execute
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [mix ecto.create] Change default charset in MyXQL to utf8mb4
|
||
|
|
|
||
|
|
## v3.2.0 (2019-09-07)
|
||
|
|
|
||
|
|
This new version requires Elixir v1.6+. Note also the previously soft-deprecated `Ecto.Adapters.MySQL` has been removed in favor of `Ecto.Adapters.MyXQL`. We announced the intent to remove `Ecto.Adapters.MySQL` back in v3.0 and `Ecto.Adapters.MyXQL` has been tested since then and ready for prime time since v3.1.
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [sql] Use `get_dynamic_repo` on SQL-specific functions
|
||
|
|
* [sql] Respect `Ecto.Type.embed_as/2` choice when loading/dumping embeds (Ecto 3.2+ compat)
|
||
|
|
* [sql] Support CTE expressions (Ecto 3.2+ compat)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [sql] Fix generated "COMMENT ON INDEX" for PostgreSQL
|
||
|
|
|
||
|
|
## v3.1.6 (2019-06-27)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [sql] Set `cache_statement` for `insert_all`
|
||
|
|
|
||
|
|
## v3.1.5 (2019-06-13)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migration] Add `@disable_migration_lock` to be better handle concurrent indexes
|
||
|
|
* [mysql] Set `cache_statement` for inserts
|
||
|
|
|
||
|
|
### Deprecations
|
||
|
|
|
||
|
|
* [mysql] Deprecate Ecto.Adapters.MySQL
|
||
|
|
|
||
|
|
## v3.1.4 (2019-05-28)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migrator] Print warning message if concurrent indexes are used with migration lock
|
||
|
|
|
||
|
|
## v3.1.3 (2019-05-19)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migrator] Add `--migrations-path` to ecto.migrate/ecto.rollback/ecto.migrations Mix tasks
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [migrator] Make sure an unboxed run is performed when running migrations with the ownership pool
|
||
|
|
|
||
|
|
## v3.1.2 (2019-05-11)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migrator] Add `Ecto.Migrator.with_repo/2` to start repo and apps
|
||
|
|
* [mix] Add `--skip-if-loaded` for `ecto.load`
|
||
|
|
* [sql] Add `Ecto.Adapters.SQL.table_exists?/2`
|
||
|
|
|
||
|
|
## v3.1.1 (2019-04-16)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [repo] Fix backwards incompatible change in Telemetry metadata
|
||
|
|
|
||
|
|
## v3.1.0 (2019-04-02)
|
||
|
|
|
||
|
|
v3.1 requires Elixir v1.5+.
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [mysql] Introduce Ecto.Adapters.MyXQL as an alternative library for MySQL
|
||
|
|
* [migrations] Run all migrations in subdirectories
|
||
|
|
* [repo] Update to Telemetry v0.4.0 (note the measurements value differ from previous versions)
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [sandbox] Respect `:ownership_timeout` repo configuration on SQL Sandbox
|
||
|
|
* [migrations] Commit and relock after every migration to avoid leaving the DB in an inconsistent state under certain failures
|
||
|
|
|
||
|
|
### Backwards incompatible changess
|
||
|
|
|
||
|
|
* [migrations] If you are creating indexes concurrently, you need to disable the migration lock: `config :app, App.Repo, migration_lock: nil`. This will migrations behave the same way as they did in Ecto 2.0.
|
||
|
|
|
||
|
|
## v3.0.5 (2019-02-05)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [repo] Add `:repo` and `:type` keys to telemetry events
|
||
|
|
* [migrations] Add `:add_if_not_exists` and `:remove_if_exists` to columns in migrations
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [migrations] Load all migrations before running them
|
||
|
|
* [sandbox] Include `:queue_target` and `:queue_interval` in SQL Sandbox checkout
|
||
|
|
|
||
|
|
## v3.0.4 (2018-12-31)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [repo] Bump telemetry dependency
|
||
|
|
* [migrations] Perform strict argument parsing in `ecto.migrate`, `ecto.rollback`, `ecto.load` and `ecto.dump`
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [migrations] Do not log migration versions query
|
||
|
|
|
||
|
|
### Deprecations
|
||
|
|
|
||
|
|
* [repo] `Telemetry.attach/5` and `Telemetry.attach_many/5` are deprecated in favor of `:telemetry.attach/5` and `:telemetry.attach_many/5`
|
||
|
|
|
||
|
|
## v3.0.3 (2018-11-29)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migration] Support `after_begin` and `before_commit` migration callbacks
|
||
|
|
* [migration] Add `:prefix` option to `references/2`
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [migration] Do not start a transaction for migrated versions if there is no `:migration_lock`
|
||
|
|
* [migration] Fix removing an reference column inside alter table
|
||
|
|
* [migration] Warn on removed `:pool_timeout` option
|
||
|
|
|
||
|
|
## v3.0.2 (2018-11-20)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [query] Support `Ecto.Query` in `insert_all` values
|
||
|
|
* [migration] Add `Ecto.Migration.repo/0`
|
||
|
|
|
||
|
|
## v3.0.1 (2018-11-17)
|
||
|
|
|
||
|
|
### Enhancements
|
||
|
|
|
||
|
|
* [migrations] Support `drop_if_exists` for constraints
|
||
|
|
|
||
|
|
### Bug fixes
|
||
|
|
|
||
|
|
* [migrations] Only commit migration transaction if migration can be inserted into the DB
|
||
|
|
* [migrations] Do not run migrations from `_build` when using Mix
|
||
|
|
* [migrations] Improve errors when checking in already committed sandboxes
|
||
|
|
* [mysql] Do not pass nil for `--user` to mysqldump
|
||
|
|
* [package] Require Ecto 3.0.2 with bug fixes
|
||
|
|
* [package] Require Mariaex 0.9.1 which fixes a bug when used with Ecto 3.0.2
|
||
|
|
* [sandbox] Raise when using sandbox on non-sandbox pools
|
||
|
|
|
||
|
|
## v3.0.0 (2018-10-29)
|
||
|
|
|
||
|
|
* Initial release
|