develop
2.1.1 (2024-08-23)
- [UPDATE] Elixir 1.17 に対応
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.11.1 → 3.11.3
- ex_doc: 0.31.0 → 0.34.2
2.1.0 (2024-01-27)
- [ADD] Ecto.Schema の
:virtual
オプションに対応
2.0.6 (2024-01-26)
- [FIX] Elixir 1.16 でマイナスレンジの警告が出ていたのを修正 (fix #24)
2.0.5 (2023-12-23)
- [UPDATE] Elixir 1.16 に対応
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.10.2 → 3.11.1
- memoize: 1.4.1 → 1.4.2
- ex_doc: 0.29.4 → 0.31.0
- myxql: 0.6.3 → 0.6.4
- [UPDATE] Elixir 1.14 以上の場合、
Yacto.Migration.Structure
を inspect する際に Map データをソートして文字列に変換する - [CHANGE] サポートする Elixir のバージョンを 1.9 から 1.11 に上げる
2.0.4 (2023-06-22)
- [UPDATE] Elixir 1.15 に対応
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.8.3 → 3.10.2
- memoize: 1.4.1 → 1.4.2
- ex_doc: 0.28.5 → 0.29.4
- myxql: 0.6.2 → 0.6.3
2.0.3 (2022-09-04)
- [UPDATE] Elixir 1.14 に対応
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.7.2 → 3.8.3
- myxql: 0.6.1 → 0.6.2
- ex_doc: 0.28.2 → 0.28.5
- memoize: 1.4.0 → 1.4.1
2.0.2 (2022-03-15)
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.6.0 → 3.7.2
- myxql: 0.5.1 → 0.6.1
- ex_doc: 0.25.0 → 0.28.2
- memoize: 1.3.3 → 1.4.0
- power_assert: 0.2.1 → 0.3.0
2.0.1 (2021-04-04)
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.5.0 → 3.6.0
- myxql: 0.4.3 → 0.5.1
- ex_doc: 0.22.6 → 0.24.1
- memoize: 1.3.1 → 1.3.3
- power_assert: 0.2.0 → 0.2.1
2.0.0 (2020-10-07)
下位互換のない変更
- [CHANGE] マイグレーションファイルをモデル毎に生成する
- 今まで生成した全てのマイグレーションファイルは利用できなくなります。
- 新しく生成したマイグレーションファイルで
mix yacto.migrate --fake
を実行して新しくマイグレーションスキーマを設定する必要があります。
- [CHANGE]
Yacto.Schema
で定義していたデフォルトの @primary_key
を削除した - [CHANGE]
@auto_source
から生成するテーブル名のルールを変更した- 例えば
App.Model.FooBar
の場合、1.x では app_model_foo_bar
になっていたが、2.x では app_model_foobar
となる
- [CHANGE]
Yacto.DB
の引数にキーワードリストを取れるようにして、データベースの設定を動的に渡せるようにしたYacto.DB.repo(:player, "key")
と書いていたのを Yacto.DB.repo(:player, shard_key: "key")
と書く必要がある
- [CHANGE]
:table_name_converter
は不完全な機能だったので削除した - [CHANGE]
Yacto.Schema.Single
と Yacto.Schema.Shard
を削除した- データベースの設定を動的に渡せるようになり、
Yacto.Schema.Single
と Yacto.Schema.Shard
のチェック機構が使えなくなるため。
- [CHANGE]
mix yacto.migrate
で --repo
を指定しなかった場合に利用するリポジトリ一覧を :ecto_repos
から取得するようにした
下位互換がある追加
- [ADD] スキーマの定義時にマイグレーションファイルを生成するかどうかを選択できるようにした(Thanks @mori5321 !)
- [ADD]
field/3
のマイグレーション用メタ情報に :precision
と :scale
を追加 - [ADD] モデルを削除した時に drop table する機能を実装
- [ADD] マイグレーションファイルを検証する機能を実装
- 複数のブランチからマージした場合に矛盾が起きる可能性があったので、それを検出してエラーにする
- [ADD]
Yacto.transaction/3
に、XA を行わない :noxa
オプションを追加した
下位互換がある変更
- [UPDATE] Ecto 3.5 への対応
- MySQL Adapter をやめて MyXQL Adapter を使うようにした
- 新しいバージョンの Ecto.Migration.Runner に追従
- [UPDATE] Elixir 1.11 への対応
- [UPDATE] 全体的に日本語でやることにした
バグ修正
- [FIX] インデックスの付いたフィールドを削除するとマイグレーションに失敗する問題を修正した (Thanks @h1u2i3 !)
- [FIX] DB の新規作成時に、カラムの並びが定義順になるようにした
- [FIX]
:index_name_max_length
設定がある場合、長いインデックス名を削るようにした - [FIX]
get_for_update/3
を修正した - [FIX] テスト周りのリファクタリング
1.2.6
- Implement table name converter
1.2.5
- Use asdf
- Fix migration error when using custom Ecto.Type with default value
1.2.4
- Customize a hashing function for sharding databases
1.2.3
- Fix a migration error is occured when using
:source
in field
1.2.2
timestamps/1
can be had :meta
1.2.1
- Fix an issue where using
autogenerate: {m, f, a}
in @primary_key
definition causes an error - Implement
@primary_key_meta
that specify a primary key meta info for migration
1.2.0
1.1.3
1.1.2
1.1.1
- Rename
get_or_new/4
to get_by_or_new/4
and get_or_insert_for_update/4
to get_by_or_insert_for_update/4
1.1.0
- Add
Yacto.Schema.Single
and Yacto.Schema.Shard
modules.- These define
repo/{0-1}
after use Yacto.Schema
.
- Add
Yacto.Repo.Helper
to provide convenient functions.
1.0.7
- Apply elixir formatter
- Fix warnings
- Update dependencies
1.0.6
- [Bug] Fix a migration type name includes with spaces.
1.0.5
- Shorten index name for too long name error.
- Use specified migration type if :type defined in meta
- Remove illegal character in filename for Windows