Commit graph

210 commits

Author SHA1 Message Date
Riccardo Binetti
021b7e4233
improvement: allow specifying multi-column foreign keys (#180)
* improvement: add match_with option on references
* improvement: add match_type option on references
2023-11-20 16:52:50 -05:00
Zach Daniel
db8255e5b1 improvement: support a 2 argument function for the repo option 2023-11-14 10:56:22 -05:00
Zach Daniel
082210933f improvement: spport CURRENT_DATE default 2023-10-27 10:33:03 -04:00
Zach Daniel
bc4b69a568 chore: ensure type is compiled 2023-10-27 00:06:55 -04:00
Zach Daniel
9769d995b3 chore: fix unused variable 2023-10-25 08:44:32 -04:00
Zach Daniel
53bb5941e8 fix: don't traverse new types for storage type 2023-10-24 12:54:31 -04:00
Zach Daniel
9f62d65215 improvement: support :ci_string as a storage_type 2023-10-10 14:12:25 -04:00
Alessio Montagnani
0adec1d163
* improvement: in multitenant resources migration's generation, check if the relationship points at the primary key of the target then not adding the multitenancy attribute (#144 and #157) 2023-09-25 15:33:28 -04:00
Zach Daniel
e8a4b41758 improvement: support vector types and vector_cosine_distance 2023-09-11 22:34:51 -04:00
Zach Daniel
c8aa2a8dd8 improvement: add value_to_postgres_default/3 and AshPostgres.Type 2023-08-18 11:22:01 -04:00
Alessio Montagnani
4a02d8c6ad
improvement: custom-extension implementation (#162)
* improvement: custom-extension implementation

* improvement: allow adding custom-extension by module's reference and fixes formatting

* ci: fixes formatter
2023-08-08 10:20:26 -07:00
Zach Daniel
83e78ad786 fix: properly alter deferrability on attribute alter 2023-07-27 13:57:42 -04:00
Zach Daniel
4724e9b878 improvement: handle empty maps in migration defaults automatically 2023-07-27 11:22:41 -04:00
Zach Daniel
e37b04c170 improvement: handle empty lists in migraiton defaults automatically 2023-07-27 11:22:06 -04:00
Zach Daniel
b4879beb86 improvement: support deferrable option in migration generator 2023-07-14 16:24:57 -04:00
Zach Daniel
c1a630ee16 improvement: support string_split 2023-07-12 15:16:28 -04:00
Eduardo B. A
4171ef851d
fix: Fixes multiple schema identities migrations (#156)
Co-authored-by: Eduardo <sezdocs@dev-distrobox.fedora.local>
2023-06-25 17:26:31 -04:00
Dmitry Maganov
29815eb6ec
fix: interpolate table names with inspect in generated migrations (#152) 2023-06-07 10:37:10 -04:00
Zach Daniel
34cc3196f4 fix: handle changing custom index names better
fix: validate custom index names
2023-06-06 01:33:50 -04:00
Zach Daniel
d969b2eef9 fix: don't incorrectly mark references as primary key references 2023-05-01 18:03:55 -04:00
Zach Daniel
ab18c85bd4 chore: remove commented out code 2023-05-01 14:03:39 -04:00
Zach Daniel
cd821cc153 fix: go back to old migration sorting algorithm
closes: #139
2023-05-01 10:51:09 -04:00
Zach Daniel
805de0f2f1 improvement: support locking 2023-04-27 21:49:13 -04:00
Zach Daniel
5d50b98298 improvement: handle new spark versions better, more explicit snapshots 2023-04-26 22:23:43 -04:00
Zach Daniel
aec9e1578e improvement: don't call .table on nil snapshot 2023-04-19 17:32:37 -06:00
Zach Daniel
86e02d2fe9 fix: don't call .table on nil 2023-04-18 22:44:19 -04:00
Zach Daniel
525dcc9f91 improvement: use digraph for operation ordering
fix: handle primary key changes properly

Doing this involves dropping all foreign keys using it, and dropping the existing
primary key before creating the new one.
2023-04-11 17:41:53 -04:00
Zach Daniel
7952a515fe fix: properly handle newtypes, add test 2023-04-07 10:56:06 -04:00
Zach Daniel
c72210adff chore: keep constraints on attribute in migration generator 2023-04-07 10:29:45 -04:00
Zach Daniel
bb2e3a3b9b fix: honor newtypes when determining migration type 2023-04-07 10:12:32 -04:00
Zach Daniel
a9cbf9b7c7 fix: handle nil ash_functions_version in another place 2023-04-06 12:13:26 -04:00
Zach Daniel
f19426789a fix: handle nil ash_functions_version 2023-04-06 12:10:13 -04:00
Zach Daniel
dc74dd534c fix: properly set next migration name 2023-02-03 11:44:34 -05:00
Zach Daniel
cc643393d9 improvement: add migration_ignore_attributes
chore: update ash, fix ci
2023-02-01 02:05:04 -05:00
Zach Daniel
4f91e65d51 fix: properly set migrations_path default in umbrellas 2022-12-27 18:19:18 -05:00
Zach Daniel
5a9abdc69c fix: properly skip unique indexes when configured 2022-12-21 02:16:30 -05:00
Zach Daniel
98418599f9 chore: release version v1.2.0 2022-12-13 14:55:26 -05:00
Zach Daniel
9d6996be25 fix: make migration generator work better for umbrellas 2022-12-13 13:31:57 -05:00
Zach Daniel
68c6d7aaf8 improvement: better error messages from mix tasks
fix: various broken behavior from new aggregate work
improvement: validate that references refer to relationships

closes #99
2022-12-10 15:59:50 -05:00
Zach Daniel
e271a27d3c improvement: avg/min/max/custom aggregate support
fix: fix various problems with the model behind aggregates
2022-12-07 20:32:38 -05:00
Zach Daniel
059837651d improvement: add unique constraints to changeset for custom unique indexes
improvement: separate out concurrent index creations and do them in a separate transaction
2022-11-25 14:06:22 -05:00
Zach Daniel
db3166ff88 Revert "improvement: use uuid_generate_v4() to eliminate need for uuid-ossp just for uuid defaults"
This reverts commit e0d7f0d0c0.
2022-11-21 02:42:26 -05:00
Zach Daniel
26668df73d improvement: add migration_defaults for customizing default values 2022-11-21 02:38:00 -05:00
Zach Daniel
e0d7f0d0c0 improvement: use uuid_generate_v4() to eliminate need for uuid-ossp just for uuid defaults
Thanks to @sevenseacat for pointing this out!
2022-11-21 02:14:47 -05:00
Zach Daniel
45356d6cce WIP 2022-11-21 02:14:47 -05:00
Zach Daniel
b7b5758134 improvement: update to the latest ash
improvement: remove the need to dynamically expand fragments
2022-10-07 15:50:20 -04:00
Zach Daniel
94edf64322 fix: use attribute source for identity fields 2022-10-04 16:13:52 -04:00
Zach Daniel
12cf97d89e fix: never attempt to group custom operations 2022-09-28 22:21:37 -04:00
Zach Daniel
79879e0bd6 fix: keep unique index keys in order in migrations
closes #109
2022-09-10 01:41:25 -04:00
Zach Daniel
385214694d docs: total docs reorg 2022-08-24 12:07:38 -04:00
Zach Daniel
3c8ce4c5ba fix: properly rewrite keys 2022-08-24 12:07:38 -04:00
Zach Daniel
a563786218 chore: rewrite keys properly 2022-08-24 12:07:38 -04:00
Zach Daniel
4a69edce2d important: update to ash 2.0 branch 2022-08-24 12:07:38 -04:00
Zach Daniel
0772c6ea2d fix: always install intended extensions in migration generator 2022-08-24 12:07:00 -04:00
James Harton
b561c4f8d4
fix: Squash dashes in migration names. (#105) 2022-08-15 12:29:01 -04:00
Zach Daniel
0fe770b9ea fix: include prefix in the proper place when renaming attributes
closes: #104
2022-08-09 16:37:20 -04:00
Zach Daniel
eb2bd267cb improvement: fix typecasting for calculations & embed access
chore: rebuild test migrations
2022-08-05 15:27:22 -04:00
Zach Daniel
778641fb28 fix: properly order check constraints 2022-07-22 00:50:19 -04:00
Zach Daniel
968fb45b4e fix: remove check constraints before adding them 2022-07-22 00:45:49 -04:00
Zach Daniel
e20e68e73a improvement: add custom_statements to migration generator 2022-07-21 13:34:38 -04:00
Zach Daniel
0f9a433c95 improvement: support || and && 2022-07-20 14:19:06 -04:00
Zach Daniel
71ddb28332 fix: use attribute.name if attribute.source is nil 2022-06-28 15:57:30 -04:00
Zach Daniel
d023949667 fix: set attribute source properly 2022-06-28 15:10:26 -04:00
Zach Daniel
abf5fdf346 fix: ensure source is always set on attributes in snapshots 2022-06-21 22:33:24 -04:00
Rebecca Le
c54c67af9d
fix: rename attributes correctly in down migration (#98) 2022-05-31 12:14:05 -04:00
Josh Price
ff3039ee32
improvement: handle fallback ecto migration default elegantly (#94) 2022-05-24 12:11:32 -04:00
Zach Daniel
fbb7477f13 chore: fix build, remove IO.inspect 2022-05-24 02:14:58 -04:00
Zach Daniel
10038dd8dd improvement: add ignore? option to references 2022-05-24 02:11:54 -04:00
Zach Daniel
eb61c2562a fix: don't generate modify commands for attributes due to schema changes 2022-05-24 00:38:13 -04:00
Zach Daniel
7798721858 fix: default schema to primary schema 2022-05-24 00:03:16 -04:00
Zach Daniel
5a61409e56 fix: don't try and match reference schema to table schema 2022-05-18 13:47:08 -04:00
Zach Daniel
2a5c7ac4a2 improvement: check_migrations, rename to --check
fix: don't use `table` where we should use `schema` in migration generator
2022-05-18 13:21:58 -04:00
Zach Daniel
6c5ee9aae5 improvement: add static schema specification in DSL
improvement: support static schema specification in migration generator
2022-05-13 17:41:30 -04:00
Zach Daniel
a916e2c470 fix: inspect un-defaultable value in error message 2022-05-02 18:02:19 -04:00
Josh Price
a9b2fc83df
improvement: Add EctoMigrationDefault protocol and implement defaults (#87) 2022-04-19 00:06:02 -04:00
Zach Daniel
f57a77f912 fix: don't add reference when renaming column if unnecessary
fix: don't cast `nil` to `""`
2022-02-18 22:30:12 -05:00
Zach Daniel
efaa7c6cc6 fix: properly handle relationship filter bindings
fix: don't consider fields changed with only source -> name changes
2022-02-14 17:44:17 -05:00
Zach Daniel
973a73e18c fix: handle name -> source change in more places 2022-02-14 16:30:25 -05:00
Zach Daniel
6c20f593b0 fix: handle name -> source rename in operation ordering 2022-02-14 15:38:16 -05:00
Zach Daniel
97bd185c17 feat: support cast_in_query?/0 and source 2022-02-14 11:39:50 -05:00
Zach Daniel
e2bd3c5aec improvement: support access syntax 2022-02-07 16:48:36 -05:00
Zach Daniel
2258e6f749 all green on dynamic refactor 2022-02-07 15:35:18 -05:00
kernel-io
4a1f1880ff
bugfix: ensure repo is compiled (#80) 2021-12-21 14:19:33 -05:00
Zach Daniel
af97c549c5 improvement: add custom migration types, and repo level override 2021-11-10 04:18:36 -05:00
Michael St Clair
4307415cca
handle when no opts are passed to custom index (#72) 2021-09-25 20:02:00 -04:00
Zach Daniel
3f0aa74db2 fix: remove unused default value 2021-09-21 15:28:45 -04:00
Zach Daniel
b9dfc20bf6 fix: use proper identity names for polymorphic resources 2021-09-21 15:10:25 -04:00
Zach Daniel
b2350a5d6b fix: set identity names propertly for polymorphic resources 2021-09-21 13:41:58 -04:00
Zach Daniel
b9afd37eb7 fix: handle nil values in snapshots better 2021-09-20 20:48:19 -04:00
Zach Daniel
9204ec0121 fix: remove unused field from snapshot parsing 2021-09-20 20:40:13 -04:00
Zach Daniel
be1fbd6137 improvement: support custom_indexes 2021-09-20 16:38:36 -04:00
Zach Daniel
981f6c8ccd improvement!: update to latest ash/ecto versions w/ parameterized types 2021-09-13 12:58:23 -04:00
Zach Daniel
e6ec25ec64 improvement: info on migration generator output 2021-07-27 18:35:14 -04:00
Zach Daniel
548f0f4eba improvement: use match: :full on attr multitenancy 2021-07-26 18:02:30 -04:00
Zach Daniel
5e5b5f3fc0 fix: interaction w/ attribute and context tenancy 2021-07-24 11:28:58 -04:00
Zach Daniel
95be84f734 improvement: --name when generating migrations 2021-07-08 14:52:53 -04:00
Zach Daniel
ddbd43b611 fix: fix migrator mix tasks w/ only/except tenants
fix: drop foreign keys after table create properly
2021-07-08 13:35:16 -04:00
Zach Daniel
7f5a56d9bd improvement: add mix ash_postgres.rollback
fix: drop foreign keys before dropping table
2021-07-08 11:37:33 -04:00
Zach Daniel
1b23bb3ccc fix: always add nullability flag 2021-06-15 16:04:17 -04:00
Zach Daniel
da9d24c96f fix: sort references only after other same-table ops 2021-06-08 17:41:35 -04:00