- UPDATE
- 下位互換がある変更
- ADD
- 下位互換がある追加
- CHANGE
- 下位互換のない変更
- FIX
- バグ修正
- [UPDATE] Elixir 1.17 に対応
- [UPDATE] 依存ライブラリを更新
- ecto_sql: 3.11.1 → 3.11.3
- ex_doc: 0.31.0 → 0.34.2
- [ADD] Ecto.Schema の
:virtualオプションに対応
- [FIX] Elixir 1.16 でマイナスレンジの警告が出ていたのを修正 (fix #24)
- [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 に上げる
- [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
- [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
- [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
- [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
- [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] テスト周りのリファクタリング
- Implement table name converter
- Use asdf
- Fix migration error when using custom Ecto.Type with default value
- Customize a hashing function for sharding databases
- Fix a migration error is occured when using
:sourcein field
timestamps/1can be had:meta
- Fix an issue where using
autogenerate: {m, f, a}in@primary_keydefinition causes an error - Implement
@primary_key_metathat specify a primary key meta info for migration
- Implement
Yacto.XA.rollback/2
- Update dependencies
- In
Yacto.Schema.field/3, if opts[:default] is specified, set the value to meta[:default]
- Rename
get_or_new/4toget_by_or_new/4andget_or_insert_for_update/4toget_by_or_insert_for_update/4
- Add
Yacto.Schema.SingleandYacto.Schema.Shardmodules.- These define
repo/{0-1}afteruse Yacto.Schema.
- These define
- Add
Yacto.Repo.Helperto provide convenient functions.
- Apply elixir formatter
- Fix warnings
- Update dependencies
- [Bug] Fix a migration type name includes with spaces.
- Shorten index name for too long name error.
- Use specified migration type if :type defined in meta
- Remove illegal character in filename for Windows