All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
v0.42.0-rc.2 (2022-05-18)
- support
cast_in_query?/0
andsource
-
don't try and match reference schema to table schema
-
don't use
table
where we should useschema
in migration generator -
handle combinations of distinct & sort
-
ensure all single actions are explicitly marked as primary? (#95)
-
only rename schema when necessary
-
inspect un-defaultable value in error message
-
select custom aggregates properly
-
don't add reference when renaming column if unnecessary
-
don't cast
nil
to""
-
!is_atom/1
->!is_boolean/1
-
sanitize lists to stringify atoms
-
cast embedded atoms to strings first
-
don't cast
{:in, :any}
types -
more don't cast any types
-
don't cast if there is no type
-
properly handle relationship filter bindings
-
don't consider fields changed with only source -> name changes
-
handle name -> source change in more places
-
handle name -> source rename in operation ordering
-
fix aggregate/base filters
-
don't select more fields than necessary
-
don't call
ecto_type
twice when resolving types -
place expressions in the proper order in selects
-
match on count in expr
-
remove incorrect param count tracking
-
properly track param count
-
properly reverse parameters before/after expansion
-
don't use the base ecto type
-
don't sort when joining
-
ensure repo is compiled (#80)
-
properly construct nested join relationships
-
use
CiStringWrapper
type in ash_postgres -
ensure we are returning * on upserts (#79)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
check_migrations, rename to
--check
-
add explicit timeout capability declaration
-
add static schema specification in DSL
-
support static schema specification in migration generator
-
implement decimal ecto migration default (#91)
-
support float as Ecto migration default (#89)
-
update ecto
-
add atom impl for
EctoMigrationDefault
-
Add EctoMigrationDefault protocol and implement defaults (#87)
-
update ecto, fix dialyzer
-
support new timeouts
-
make select unique before running query
-
add doc_index
-
add exclusion_constraint_names (#83)
-
support referencing aggregates from aggregate filters
-
support access syntax
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.42.0-rc.1 (2022-05-18)
- support
cast_in_query?/0
andsource
-
don't use
table
where we should useschema
in migration generator -
handle combinations of distinct & sort
-
ensure all single actions are explicitly marked as primary? (#95)
-
only rename schema when necessary
-
inspect un-defaultable value in error message
-
select custom aggregates properly
-
don't add reference when renaming column if unnecessary
-
don't cast
nil
to""
-
!is_atom/1
->!is_boolean/1
-
sanitize lists to stringify atoms
-
cast embedded atoms to strings first
-
don't cast
{:in, :any}
types -
more don't cast any types
-
don't cast if there is no type
-
properly handle relationship filter bindings
-
don't consider fields changed with only source -> name changes
-
handle name -> source change in more places
-
handle name -> source rename in operation ordering
-
fix aggregate/base filters
-
don't select more fields than necessary
-
don't call
ecto_type
twice when resolving types -
place expressions in the proper order in selects
-
match on count in expr
-
remove incorrect param count tracking
-
properly track param count
-
properly reverse parameters before/after expansion
-
don't use the base ecto type
-
don't sort when joining
-
ensure repo is compiled (#80)
-
properly construct nested join relationships
-
use
CiStringWrapper
type in ash_postgres -
ensure we are returning * on upserts (#79)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
check_migrations, rename to
--check
-
add explicit timeout capability declaration
-
add static schema specification in DSL
-
support static schema specification in migration generator
-
implement decimal ecto migration default (#91)
-
support float as Ecto migration default (#89)
-
update ecto
-
add atom impl for
EctoMigrationDefault
-
Add EctoMigrationDefault protocol and implement defaults (#87)
-
update ecto, fix dialyzer
-
support new timeouts
-
make select unique before running query
-
add doc_index
-
add exclusion_constraint_names (#83)
-
support referencing aggregates from aggregate filters
-
support access syntax
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.42.0-rc.0 (2022-04-26)
- support
cast_in_query?/0
andsource
-
select custom aggregates properly
-
don't add reference when renaming column if unnecessary
-
don't cast
nil
to""
-
!is_atom/1
->!is_boolean/1
-
sanitize lists to stringify atoms
-
cast embedded atoms to strings first
-
don't cast
{:in, :any}
types -
more don't cast any types
-
don't cast if there is no type
-
properly handle relationship filter bindings
-
don't consider fields changed with only source -> name changes
-
handle name -> source change in more places
-
handle name -> source rename in operation ordering
-
fix aggregate/base filters
-
don't select more fields than necessary
-
don't call
ecto_type
twice when resolving types -
place expressions in the proper order in selects
-
match on count in expr
-
remove incorrect param count tracking
-
properly track param count
-
properly reverse parameters before/after expansion
-
don't use the base ecto type
-
don't sort when joining
-
ensure repo is compiled (#80)
-
properly construct nested join relationships
-
use
CiStringWrapper
type in ash_postgres -
ensure we are returning * on upserts (#79)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
update ecto
-
add atom impl for
EctoMigrationDefault
-
Add EctoMigrationDefault protocol and implement defaults (#87)
-
update ecto, fix dialyzer
-
support new timeouts
-
make select unique before running query
-
add doc_index
-
add exclusion_constraint_names (#83)
-
support referencing aggregates from aggregate filters
-
support access syntax
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.7 (2021-12-21)
-
ensure repo is compiled (#80)
-
properly construct nested join relationships
-
use
CiStringWrapper
type in ash_postgres -
ensure we are returning * on upserts (#79)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.6 (2021-12-21)
-
properly construct nested join relationships
-
use
CiStringWrapper
type in ash_postgres -
ensure we are returning * on upserts (#79)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.5 (2021-11-26)
-
ensure we are returning * on upserts (#79)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.4 (2021-11-25)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
don't upsert defaults on conflict (#77)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.3 (2021-11-13)
-
handle new if types
-
copy query prefix to newly created query (#74)
-
relax ash version requirement
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.2 (2021-11-10)
- copy query prefix to newly created query (#74)
-
add custom migration types, and repo level override
-
update to latest version of ash
v0.41.1 (2021-11-03)
- copy query prefix to newly created query (#74)
- update to latest version of ash
v0.41.0-rc.9 (2021-11-01)
-
use proper ecto types everywhere
-
try to fix missing paren issue in array_agg
-
fix can? for :joins (#73)
-
remove unused default value
-
use proper identity names for polymorphic resources
-
set identity names propertly for polymorphic resources
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
-
support
default
on aggregates -
support
custom_indexes
v0.41.0-rc.8 (2021-10-25)
-
fix can? for :joins (#73)
-
remove unused default value
-
use proper identity names for polymorphic resources
-
set identity names propertly for polymorphic resources
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
-
support
default
on aggregates -
support
custom_indexes
v0.41.0-rc.7 (2021-10-24)
-
fix can? for :joins (#73)
-
remove unused default value
-
use proper identity names for polymorphic resources
-
set identity names propertly for polymorphic resources
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
- support
custom_indexes
v0.41.0-rc.6 (2021-09-26)
-
remove unused default value
-
use proper identity names for polymorphic resources
-
set identity names propertly for polymorphic resources
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
- support
custom_indexes
v0.41.0-rc.5 (2021-09-21)
-
use proper identity names for polymorphic resources
-
set identity names propertly for polymorphic resources
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
- support
custom_indexes
v0.41.0-rc.4 (2021-09-21)
-
set identity names propertly for polymorphic resources
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
- support
custom_indexes
v0.41.0-rc.3 (2021-09-21)
-
handle nil values in snapshots better
-
remove unused field from snapshot parsing
- support
custom_indexes
v0.41.0-rc.2 (2021-09-21)
- remove unused field from snapshot parsing
- support
custom_indexes
v0.41.0-rc.1 (2021-09-20)
- support
custom_indexes
v0.41.0-rc.0 (2021-09-13)
- update to latest ash/ecto versions w/ parameterized types
- Support default tenant migration path in releases (#69)
v0.40.11 (2021-07-28)
- set subquery prefix properly
v0.40.10 (2021-07-27)
-
set subquery source correctly
-
create parameter for ci strings
-
explicitly set prefix at each level
-
interaction w/ attribute and context tenancy
-
info on migration generator output
-
use match: :full on attr multitenancy
-
update to latest ash
-
update to latest ash
-
upgrade ash dep
v0.40.9 (2021-07-22)
- don't add a non-list to a list
- add sort + select test
v0.40.8 (2021-07-19)
- ensure source table is sorted in lateral join
- fix significant performance issue in lateral joins
v0.40.7 (2021-07-12)
- support default_prefix configuration
v0.40.6 (2021-07-08)
-
fix migrator mix tasks w/ only/except tenants
-
drop foreign keys after table create properly
-
drop foreign keys before dropping table
-
left_lateral_join for many_to_many aggregates
-
properly reference nested aggregate fields for join
-
properly determine fallback table for polymorphic resources
-
ensure non-tenant resources can be aggregates
-
properly set aggregate query sources
-
retain parent as bindings
-
don't add
rel_source
at all -
properly build atoms list
-
horribly hack ecto for dynamic bindings
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
-
--name
when generating migrations -
add
mix ash_postgres.rollback
-
update to latest ash
-
update to latest ash
-
leverage new
private_vars
for errs
v0.40.5 (2021-07-08)
-
fix migrator mix tasks w/ only/except tenants
-
drop foreign keys after table create properly
-
drop foreign keys before dropping table
-
left_lateral_join for many_to_many aggregates
-
properly reference nested aggregate fields for join
-
properly determine fallback table for polymorphic resources
-
ensure non-tenant resources can be aggregates
-
properly set aggregate query sources
-
retain parent as bindings
-
don't add
rel_source
at all -
properly build atoms list
-
horribly hack ecto for dynamic bindings
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
-
add
mix ash_postgres.rollback
-
update to latest ash
-
update to latest ash
-
leverage new
private_vars
for errs
v0.40.4 (2021-07-05)
-
left_lateral_join for many_to_many aggregates
-
properly reference nested aggregate fields for join
-
properly determine fallback table for polymorphic resources
-
ensure non-tenant resources can be aggregates
-
properly set aggregate query sources
-
retain parent as bindings
-
don't add
rel_source
at all -
properly build atoms list
-
horribly hack ecto for dynamic bindings
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
-
update to latest ash
-
update to latest ash
-
leverage new
private_vars
for errs
v0.40.3 (2021-07-03)
-
ensure non-tenant resources can be aggregates
-
properly set aggregate query sources
-
retain parent as bindings
-
don't add
rel_source
at all -
properly build atoms list
-
horribly hack ecto for dynamic bindings
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
-
update to latest ash
-
leverage new
private_vars
for errs
v0.40.2 (2021-07-02)
-
properly set aggregate query sources
-
retain parent as bindings
-
don't add
rel_source
at all -
properly build atoms list
-
horribly hack ecto for dynamic bindings
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
-
update to latest ash
-
leverage new
private_vars
for errs
v0.40.1 (2021-07-02)
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
-
update to latest ash
-
leverage new
private_vars
for errs
v0.40.0-rc5 (2021-07-01)
-
properly coalesce aggregate values
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
- leverage new
private_vars
for errs
v0.40.0-rc4 (2021-06-23)
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
- leverage new
private_vars
for errs
v0.40.0-rc3 (2021-06-15)
-
always add nullability flag
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
v0.40.0-rc2 (2021-06-08)
-
sort references only after other same-table ops
-
generate multitenant foreign keys properly
v0.40.0-rc1 (2021-06-05)
v0.39.0-rc.0 (2021-06-04)
-
support expression based calculations
-
support concat + if expressions
- various other improvements
v0.38.11 (2021-05-23)
- set prefix to "public" for fkeys to public schema
- set explicit prefix on join filters
v0.38.10 (2021-05-19)
-
support new ash upsert specifying targets
-
update to latest ash
v0.38.9 (2021-05-12)
- properly group many_to_many aggregates
v0.38.8 (2021-05-09)
- update to the latest ash version
v0.38.7 (2021-05-09)
- support latest ash/filtering on related aggregates
v0.38.6 (2021-05-07)
-
properly construct sources for lateral joins
-
copy the correct data for lateral join queries
-
better errors in error cases
- update to latest ash
v0.38.5 (2021-05-07)
- don't cast booleans to string in last_ditch_cast
v0.38.4 (2021-05-07)
- support latest ash version resource sorts
v0.38.3 (2021-05-06)
-
update to latest ash
-
document script to iterate migrations (#65)
v0.38.2 (2021-05-04)
-
join to join table in lateral join query
-
multitenancy + lateral join sources
-
don't distinct in lateral joins
v0.38.1 (2021-05-04)
- fix fragment processing broken (#64)
v0.38.0 (2021-04-29)
- support new side load improvements
- Preserve attribute order (#63)
v0.37.8 (2021-04-27)
-
simpler index names
-
don't prefix unique indices with prefix()
-
sort index operations last
- custom index names
v0.37.7 (2021-04-27)
- remove inspects that were left in by accident
v0.37.6 (2021-04-27)
-
type cast atoms to strings in last ditch cast
-
properly type cast
-
Remove duplicate file extension (#60)
v0.37.5 (2021-04-27)
- properly type cast
v0.37.4 (2021-04-26)
- support
list
aggregate
v0.37.3 (2021-04-26)
-
stringify struct defaults in migration generator
-
properly comment out extension uninstallation code
v0.37.2 (2021-04-21)
- support ash enums
v0.37.1 (2021-04-19)
- include type in references (because it is not automatic)
v0.37.0 (2021-04-19)
- add check_constraints, both for validation and migrations
v0.36.5 (2021-04-13)
-
always drop constraints before modifying
-
properly compare old references and new references
v0.36.4 (2021-04-12)
- don't explicitly set type in
references
- default integers to
:bigint
v0.36.3 (2021-04-12)
- primary autoincrement key as bigserial (#54)
v0.36.2 (2021-04-09)
- support new ash select feature
v0.36.1 (2021-04-04)
- raise when
all_tenants/0
default impl is called
- add sum aggregate (#53)
v0.36.0 (2021-04-01)
-
support configuring references
-
support configuring polymorphic references
-
support
distinct
Ash queries
v0.35.5 (2021-03-29)
- Made AshPostgres.Repo.init/2 overridable (#51)
-
only count resources w/ create action for nullability
-
better error message on missing table
v0.35.4 (2021-03-21)
-
reroute
Ash.Type.UUID
to:uuid
in migrations -
force create extensions snapshot
-
consistent foreign key names
-
support custom foreign key error messages
v0.35.3 (2021-03-19)
-
force create extensions snapshot
-
more conservative inner join checks
-
add back in inner join detection logic
-
consistent foreign key names
-
support custom foreign key error messages
v0.35.2 (2021-03-05)
-
more conservative inner join checks
-
add back in inner join detection logic
v0.35.1 (2021-03-02)
- don't start the whole app in migrate
v0.35.0 (2021-03-02)
- automatically install extensions from repo
v0.34.7 (2021-03-02)
-
typo in references for multitenancy
-
null: true
when attr isn't on all resources for a table
v0.34.6 (2021-02-24)
- better embedded filters, switch to latest ash
v0.34.5 (2021-02-23)
- support latest ash
v0.34.4 (2021-02-08)
- trim when choosing new attribute name
v0.34.3 (2021-02-06)
- don't reference polymorphic tables to belongs_to relationships
v0.34.2 (2021-02-06)
- set up references properly
v0.34.1 (2021-02-06)
- reference the configured table if set
v0.34.0 (2021-02-06)
- support polymorphic relationships
v0.33.1 (2021-01-27)
- actually insert the tracking row
v0.33.0 (2021-01-27)
-
add
mix ash_postgres.create
-
add
mix ash_postgres.migrate
-
add
mix ash_postgres.migrate --tenants
-
add
mix ash_postgres.drop
- rework the way multitenant migrations work
v0.32.2 (2021-01-26)
- un-break the
in
filter type casting code
- better errors for multitenant unique constraints
v0.32.1 (2021-01-24)
ago
was adding, not subtracting
v0.32.0 (2021-01-24)
- support latest ash + contains
v0.31.1 (2021-01-22)
- update to latest ash
v0.31.0 (2021-01-22)
-
support fragments
-
support type casting
-
update to latest ash to support expressions
- update CI versions
v0.30.1 (2021-01-13)
v0.30.0 (2021-01-13)
- Add check_migrated option to migration generator (#40) (#43)
v0.29.6 (2021-01-12)
- rename out of phase, small migration fix
v0.29.5 (2021-01-10)
- Use ecto_sql formatter settings (#38)
v0.29.4 (2021-01-10)
- Omit field opts if they are default values (#37)
v0.29.3 (2021-01-08)
- support latest ash
v0.29.2 (2021-01-08)
- Make integer serial if generated
v0.29.1 (2021-01-08)
- support latest ash version
v0.29.0 (2021-01-08)
- retain snapshot history
- support latest ash version
v0.28.1 (2021-01-07)
- Add :binary migration type (#33)
v0.28.0 (2020-12-29)
- support latest Ash version
v0.27.0 (2020-12-23)
- support refs on both sides of operators
- bump ash version
v0.26.2 (2020-12-06)
- properly accept the
tenant_migration_path
v0.26.1 (2020-12-01)
- set default properly when modifying
v0.26.0 (2020-11-25)
- don't drop columns unless explicitly told to
- various migration generator bug fixes
v0.25.5 (2020-11-17)
- drop constraints outside of phases (#29)
v0.25.4 (2020-11-07)
- only alter the things that have changed
v0.25.3 (2020-11-06)
- add utc_datetime migration type
v0.25.2 (2020-11-03)
- access data_layer_query with function
v0.25.1 (2020-10-29)
- mark repo as not requiring compile-time dep
v0.25.0 (2020-10-29)
- multitenancy (#25)
- verify repo using ensure_compiled
v0.24.0 (2020-10-17)
- support latest ash
v0.23.2 (2020-10-07)
v0.23.1 (2020-10-06)
v0.23.0 (2020-10-06)
- update to latest ash, trigram filter
v0.22.1 (2020-10-01)
-
don't group alters with creates (#22)
-
add jason dependency, clean lockfile (#21)
v0.22.0 (2020-09-24)
- fix error when filtering with
true
- broken types for
in
operator
v0.21.0 (2020-09-19)
- support base_filter (#18)
v0.20.1 (2020-09-11)
- document/update migration path logic
v0.20.0 (2020-09-11)
- snapshot-based migration generator
v0.19.0 (2020-09-02)
- support inner joins when possible (#15)
-
better support for aggregates/calculations when delegating
-
don't fail w/ no extensions configured
v0.18.0 (2020-08-26)
-
update to ash 1.11 (#13)
-
support Ash v1.10 (#12)
-
support latest ash
-
update to latest ash
v0.17.0 (2020-08-26)
-
update to ash 1.11 (#13)
-
support Ash v1.10 (#12)
-
support latest ash
-
update to latest ash
v0.16.1 (2020-08-19)
- fix compile/dialyzer issues
v0.16.0 (2020-08-19)
-
update to latest ash
-
update to latest version of ash
v0.15.0 (2020-08-18)
- update to latest version of ash
v0.14.0 (2020-08-17)
-
support ash 1.7
-
support named aggregates
v0.13.0 (2020-07-25)
-
update to latest ash
-
support latest ash
v0.12.1 (2020-07-24)
- add can? for
:aggregate
v0.12.0 (2020-07-24)
- update to latest ash
v0.11.2 (2020-07-23)
v0.11.1 (2020-07-23)
v0.11.0 (2020-07-23)
- support ash 13.0 aggregates
v0.10.0 (2020-07-15)
- update to latest ash
v0.9.0 (2020-07-13)
- update to latest ash
v0.8.0 (2020-07-09)
- update to latest ash
v0.7.0 (2020-07-09)
-
update to latest ash
-
update to latest ash, add docs
-
update to ash 0.9.1 for transactions
v0.6.0 (2020-06-29)
- update to latest ash
v0.5.0 (2020-06-29)
- upgrade to latest ash
v0.4.0 (2020-06-27)
- update to latest ash
v0.3.0 (2020-06-19)
- New filter style (#10)
v0.2.1 (2020-06-15)
- update .formatter.exs
v0.2.0 (2020-06-14)
- use the new DSL builder for config (#7)
v0.1.4 (2020-06-05)
-
update ash version dependency
-
account for removal of name
v0.1.3 (2020-06-03)
This release was a test of our automatic hex.pm package deployment