All notable changes to this project will be documented in this file. See Conventional Commits for commit guidelines.
v2.9.1 (2026-05-01)
Bug Fixes:
handle base filter index rewrite detection (#742) by Minsub Kim
failing test for calculation loading on relationships in policies (#741) by Rutgerdj
immutable_expr_error support for newly added required expr (#737) by adamtharani
correct prefix name when loading many_to_many relationships (#736) by gcugnet
v2.9.0 (2026-04-12)
Features:
relationship through (#686) by Kenneth Kostrešević
add support for
:identitytypes (#715) by Jatanasioadd native_in/2 function for SQL IN (...) syntax (#728) by jkreddy020203
Drop tables on missing resources & table name change handling (#713) by obviouslyweb
Bug Fixes:
Add missing usage_rules files to hex package (#733) by Philip Munksgaard
ensure proper ordering when dropping orphan tables (#730) by Jechol Lee
sort snapshot JSON keys when recording drop_table opt-out (#729) by Jechol Lee
sort AddUniqueIndex after CreateTable and all AddAttribute ops by Zach Daniel
ensure split migrations get unique names and modules by Zach Daniel
properly sequence items that depend on concurrent migrations by Zach Daniel
Fix/236 unique index before self fk (#705) by WillG2001
show warning on concurrent index multitenancy #610 (#711) by Ryland Bangerter
raise error when reference is configured for non-belongs_to relationship (#712) by henryzhan013
Improvements:
- Add required!/1, ash_required/1, and ash_required!/2 (issue #261) (#707) by dallingson
v2.8.0 (2026-03-09)
Features:
add --use_fragments option to resource generator | Closes #437 (#709) by henryzhan013
Bug Fixes:
test setup by Philip Capel
formatting by Philip Capel
v2.7.0 (2026-03-05)
Features:
support offset option in lateral join queries (#700) by Jinkyou Son
support touch_update_defaults? option to skip update_default fields on upsert by Michael Bärtschi
Bug Fixes:
bulk_create with upsert now updates update_timestamp fields on conflict by Michael Bärtschi
Fix locks handling for WAIT and SKIP_LOCKED (#704) by sezaru
set size when type changes in migrations (Issue #150) (#694) by Jatanasio
bulk_create with upsert now updates update_timestamp fields (#697) by Michael Bärtschi
Improvements:
- read touch_update_defaults? from options instead of changeset context (#701) by Michael Bärtschi
v2.6.32 (2026-02-11)
Bug Fixes:
- produce correct error on
restrictmanaged_relationship behavior (#690) by lincolnhuls
Improvements:
- Split up usage rules into sub-rules (#691) by Mylan Connolly
v2.6.31 (2026-02-05)
Bug Fixes:
handle atomic no_rollback errors during creates by Zach Daniel
correct test expectation for
firstaggregate withinclude_nil?(#683) by sevenseacat
v2.6.30 (2026-02-04)
- fix for atomic create support
v2.6.29 (2026-02-03)
Improvements:
- support atomic creates by Zach Daniel
v2.6.28 (2026-01-29)
Bug Fixes:
- properly wrap through queries with subqueries in wheres by Zach Daniel
Improvements:
Update AshFunctions, remove timestamp_from_uuid_v7 (#676) by Matt Savoia
Update MigrationGenerator to use uuidv7 when available (#674) by Matt Savoia
add create_table_options for partitioned tables and more (#664) by Robert Graff
v2.6.27 (2025-12-24)
Bug Fixes:
don't set
size,precision, orscalefor references by Zach Danielapply join_relationship sort/limit in many_to_many lateral joins (#666) by sevenseacat
add overrides for timestamptz types, config them on installation by Zach Daniel
do not build query filter with or: [] when all records are successfully inserted, for return_skipped_upsert?: true (#659) by Dohan Kim
v2.6.26 (2025-11-23)
Improvements:
add generator to tsvector type (#655) by Jesse Williams
verify check constraint attributes at compile time by Zach Daniel
update deps for bug fixes by Zach Daniel
v2.6.25 (2025-11-05)
Bug Fixes:
- add failing test for exists expansnion inside of calculations by Zach Daniel
v2.6.24 (2025-10-30)
Bug Fixes:
handle results that can't be mapped to the changeset in bulk_create (#638) by Barnabas Jovanovics
handle results that can't be mapped to the changeset in bulk_create by Barnabas Jovanovics
Improvements:
- remove unused bulk operation metadata function & update ash by Zach Daniel
v2.6.23 (2025-10-15)
Improvements:
- implement combination_acc/1 by Zach Daniel
v2.6.22 (2025-10-14)
Bug Fixes:
- return skipped upserts in bulk_create (#626) by Barnabas Jovanovics
Improvements:
- leverage new aggregate loading optimization by Zach Daniel
v2.6.21 (2025-10-10)
Bug Fixes:
simplify bulk operation metadata handling by Zach Daniel
update ash_postgresql to handle the new bulk_create response in Ash v3.5.44 (#632) by Daniel Gollings
Support non-public PostgreSQL schemas in resource generator (#631) by Elliot Bowes
guard against missing snapshot directories in migration generator by Elliot Bowes
ensure that tenant is properly used in many-to-many joins by Zach Daniel
Improvements:
- Add immutable version of
ash_raise_errorfunction to support extensions like Citus (#620) by Steve Brambilla
v2.6.20 (2025-09-27)
Bug Fixes:
- use
:mutaterepo for on_transaction_begin callback by Zach Daniel
Improvements:
location in spark errors and migration generator fixes by Zach Daniel
use default constraint of 'now()' for AshPostgres.Timestamptz (#621) by siassaj
v2.6.19 (2025-09-20)
Bug Fixes:
- fix conditional on installing ash in installer by Zach Daniel
v2.6.18 (2025-09-19)
Bug Fixes:
Handle optional/empty input in relationship name guesser (#616) by Trond A Ekseth
properly handle sorts w/ parent refs on lateral joins by Zach Daniel
annotate unrelated exists expressions as supported by Zach Daniel
v2.6.17 (2025-08-31)
Bug Fixes:
- resolve a typo in pending dev migration error message (#608) by Sheharyar Naseer
v2.6.16 (2025-08-21)
Improvements:
- Unrelated aggregates (#606) by Zach Daniel
v2.6.15 (2025-08-07)
Bug Fixes:
Use new attribute source in down migration (#604) by Anatolij Werle
always set disable_async, and remove log level config by Zach Daniel
v2.6.14 (2025-07-29)
Bug Fixes:
- deduplicate identity keys by Zach Daniel
v2.6.13 (2025-07-27)
Bug Fixes:
- ensure tenant prefix is set only for resources with context multitenancy (#600) by Emad Shaaban
v2.6.12 (2025-07-25)
Bug Fixes:
- ensure tenant is set on query for updates by Zach Daniel
Improvements:
- do not create snapshots for resources that have no attributes #571 (#599) by horberlan
v2.6.11 (2025-07-17)
Bug Fixes:
clean args and properly scope rollback task by Zach Daniel
Reverse migrations order when reverting dev migrations (#590) by Kenneth Kostrešević
Improvements:
- make rollbacks safer by using
--toinstead of-nby Zach Daniel
v2.6.10 (2025-07-09)
Bug Fixes:
properly return the type when configured by Zach Daniel
retain sort when upgrading to a subquery by Zach Daniel
v2.6.9 (2025-06-25)
Bug Fixes:
smallserial not mapping to proper type (#574) by Marc Planelles
Fix foreign key constraint on specially named references (#572) by olivermt
v2.6.8 (2025-06-18)
Bug Fixes:
- ensure prefix is set even with create_schemas_in_migrations? false by Zach Daniel
v2.6.7 (2025-06-13)
Bug Fixes:
- double select error (#569) by Barnabas Jovanovics
v2.6.6 (2025-06-10)
Bug Fixes:
- simply storage of size/scale/precision information
v2.6.5 (2025-06-10)
Bug Fixes:
remove spurios debug logging
properly detect nested array decimals
v2.6.4 (2025-06-09)
Bug Fixes:
reenable migrate task
use
force: true, notforce?: truecalling mix.generatorcasting integers to string in expressions works as intended (#564)
use better wrappers around string/ci_string
Improvements:
- add
c:AshPostgres.Repo.create_schemas_in_migrations?callback
v2.6.3 (2025-06-04)
Bug Fixes:
- undo change for timestamptz usec, retaining precision
v2.6.2 (2025-06-04)
Bug Fixes:
- don't use
:"timestamptz(6)"in ecto storage type
v2.6.1 (2025-05-30)
Bug Fixes:
- retain repo as atom in migrator task (#560)
v2.6.0 (2025-05-30)
Features:
- --dev flag for codegen (#555)
Bug Fixes:
- properly encode decimal scale & preicison into snapshots
Improvements:
use new
PendingCodegenerrorassume not renaming when generating dev migrations
support scale & precision in decimal types
v2.5.22 (2025-05-22)
Bug Fixes:
- Convert sensitive patterns from module constant to function for OTP/28 (#552)
v2.5.21 (2025-05-21)
Improvements:
- update igniter, remove inflex
v2.5.20 (2025-05-20)
Bug Fixes:
self-join if combination queries require more fields
enforce tenant name rules at creation (#550)
v2.5.19 (2025-05-06)
Improvements:
- support unions (#543)
v2.5.18 (2025-04-29)
Bug Fixes:
fix some issues in migration generator related to tenancy (#539)
use old multitenancy in generated removals of previous indexes (#536)
add tenant to ash bindings in update (#534)
correct order, when renaming attribute with an identity (#533)
v2.5.17 (2025-04-22)
Bug Fixes:
add tenant to ash bindings in update (#534)
correct order, when renaming attribute with an identity (#533)
v2.5.16 (2025-04-15)
Bug Fixes:
fixes for map types nested in expressions
use proper migrations path configuration
v2.5.15 (2025-04-09)
Bug Fixes:
ash postgres subquery usage (#524)
use subqueries for join resources
use schema when changing reference deferrability (#519)
Improvements:
- propagate
-rflag to Ecto (#521)
v2.5.14 (2025-03-28)
Bug Fixes:
remove debugging code accidentally committed
retain loads on atomic upgrade update actions
Improvements:
- create schema before table creation (#518)
v2.5.13 (2025-03-25)
Bug Fixes:
- order when renaming attribute with an index (#514)
v2.5.12 (2025-03-18)
Improvements:
- include error detail in constraint violation errors
v2.5.11 (2025-03-11)
Bug Fixes:
ignore attributes with no known type
honor skip_unknown option in spec table generator
honor --no-migrations flag
allow optional input for relationship name guesser
put move up/down in the right place
go to top of if block
use
configures_key?/3don't modify repo in runtime.exs
remove Helpdesk.Repo from installer ð¤¦
only configure repo in installer if not already configured
install ash if not installed already
Improvements:
document options, add
--no-migrationsadd
skip_unknownoption toash_postgres.gen.resources
v2.5.10 (2025-03-06)
Bug Fixes:
- honor skip_tables
Improvements:
- never import
schema_migrationstable
v2.5.9 (2025-03-06)
Bug Fixes:
- match on non-empty repo options
Improvements:
add
--publicoption togen.resources, defaulttrueadd
--default-actionsoption togen.resources, defaulttrue
v2.5.8 (2025-03-06)
Bug Fixes:
handle CLI args better for ash_postgres.gen.resources
compose check constraints and base filters properly
v2.5.7 (2025-03-04)
Bug Fixes:
handle errors from identities in polymorphic resources properly (#497)
Use exclusion_constraint instead of check_constraint in add_exclusion_constraints (#495)
check for stale record errors on destroy
don't rely on private function from
Ecto.Repo(#492)
v2.5.6 (2025-02-25)
Bug Fixes:
start lateral join source query bindings at 500
Ensure primary key migrations use prefix for multitenancy (#488)
don't rewrite identities when only global? is changed
don't modify an attribute when it only needs to be renamed
Improvements:
- support SKIP LOCKED in locks
v2.5.5 (2025-02-17)
Bug Fixes:
- ensure field names defaults to the field of the constraint
v2.5.4 (2025-02-17)
Improvements:
- Add support for field names in idenitity constraints (#478)
v2.5.3 (2025-02-14)
Bug Fixes:
handle dropping primary key columns properly
Ignore module conflict when compiling migration file (#482)
v2.5.2 (2025-02-11)
Bug Fixes:
update lateral join logic to match ash_sql's
simplify lateral join source filter
update sql log switches for migration and rollback tasks (#470)
Improvements:
add vector l2 distance function
use dimenstions constraint on vector for size
consider identity.where in identity deduplicator
generate migrations task support concurrent indexes flag (#471)
v2.5.1 (2025-01-27)
Bug Fixes:
- handle cross global to tenant references in migration generator
v2.5.0 (2025-01-20)
Features:
- add repo callback to disable atomic actions and error expressions (#464)
Bug Fixes:
generate a repo when selecting one
handle regex match correctly (#460)
Improvements:
use prettier SQL in
Ash.calculateadd
c:AshPostgres.Repo.default_constraint_match_typemark ash_raise_error as STABLE
v2.4.22 (2025-01-13)
Bug Fixes:
inner join bulk operations if distinct? is present
fully specificy synthesized indices from multi-resource tables
v2.4.21 (2025-01-06)
Bug Fixes:
filter query by source record ids when lateral joining
don't use symlinked app dir for migration's path
v2.4.20 (2024-12-26)
Bug Fixes:
- use passed in version of postgres when modifying existing repo
v2.4.19 (2024-12-26)
Bug Fixes:
- ensure there is always at least one upsert field so filter is run
Improvements:
better min_pg_version when modifying a repo
automatically set
min_pg_versionwhere possibleuse a notice to suggest configuring
min_pg_version
v2.4.18 (2024-12-20)
Bug Fixes:
- handle double select issue
Improvements:
make igniter optional
make tsvector type selectable
v2.4.17 (2024-12-16)
Bug Fixes:
Fix query for metadata on foreign keys and fix duplicate references being produced (#444)
alter resource generation query to go to the source pg_constraints table instead of to the view to fetch constraint data (#443)
v2.4.16 (2024-12-12)
Bug Fixes:
properly support expr errors in bulk create
only build references for belongs_to relationships
Improvements:
- add postgres_reference_expr callback (#438)
v2.4.15 (2024-12-06)
Bug Fixes:
split off varchar options from index
don't attempt to use non-existent relationship
handle manual/no_attributes? relationships in lateral join logic
don't use
privconfiguration for snapshot_path
Improvements:
- update sql implementation for type determination
v2.4.14 (2024-11-27)
Bug Fixes:
- pass AST to deal with stupid igniter behavior
v2.4.13 (2024-11-26)
Bug Fixes:
- [
mix ash.migrate] honor thesnapshots_onlyoption
Improvements:
[
mix ash.migrate] honor repo configuration in migration generator[
mix ash.codegen] honor:privin migration generator, and make it explicitly configurable[
mix ash_postgres.install] don't generate task aliases that run seeds in test
v2.4.12 (2024-10-30)
Bug Fixes:
[query builder] don't double add distinct clauses
[
AshPostgres.DataLayer] don't usecastfor changes
Improvements:
[
AshPostgres.Repo] setprefer_transaction?to false in generated repos[
AshPostgres.DataLayer] support prefer_transaction?
v2.4.11 (2024-10-23)
Bug Fixes:
- [upserts] ensure repo_opts is passed through to
repo.all/2
v2.4.10 (2024-10-23)
Security
- Patch of GHSA-hf59-7rwq-785m Empty, atomic, non-bulk actions, policy bypass for side-effects vulnerability.
Bug Fixes:
[upserts] run any query that could produce errors when performing atomic upgrade
[multitenant migrations] race condition compiling migrations when concurrently creating new tenants (#406)
v2.4.9 (2024-10-16)
Bug Fixes:
- [
mix ash_postgres.gen.resources] fix resource generator task & tests
v2.4.8 (2024-10-11)
Improvements:
- [migration generator] use the
nameparameter when generating migrations
v2.4.7 (2024-10-10)
Improvements:
- [upserts] adapt to fixes and optimizations around skipped upserts in ash core
v2.4.6 (2024-10-07)
Improvements:
- [
mix ash_postgres.install] with--yesassume oldest version
v2.4.5 (2024-10-06)
Bug Fixes:
- [upserts] ensure upsert fields are uniq
Improvements:
[
mix ash_postgres.install] detect 1 arg repo use in installer[
AshPostgres.Repo] support to_ecto(%Ecto.Changeset{}) and from_ecto(%Ecto.Changeset{}) (#395)
v2.4.4 (2024-09-29)
Bug Fixes:
- [atomic updates] handle atomic array operations
v2.4.3 (2024-09-27)
Bug Fixes:
- [
mix ash_postgres.gen.resources] support pg <= 14 in resource generator, and update tests
v2.4.2 (2024-09-24)
Bug Fixes:
[migration generator] typo of
biging->bigint[migration generator] altering attributes not properly generating foreign keys in some cases
[
mix ash_postres.install] use correct module name in theDataCasemoduledocs. (#393)[migration generator] trim input before passing to
String.to_integer/1. (#389)
Improvements:
[
mix ash_postgres.install] add--repooption to installer, and warn on clashing existing repo[
mix ash_postgres.install] prompt for minimum pg version[
mix ash_postgres.install] adjust mix task aliases to be used withash_postgres[migration generator] set a name for generated migrations
v2.4.1 (2024-09-16)
Bug Fixes:
[bulk updates] ensure that returning is never an empty list
[
mix ash_postgres.gen.resources] match on table schema as well as table name
v2.4.0 (2024-09-13)
Features:
- [
AshPostgres.Ltree] Implement Ltree Type (#385)
Improvements:
[migration generator] remove LEAKPROOF from function to prevent migration issues
[
Ash.Changeset] support upcomingaction_selectoptions[
mix ash.install] ensureRepois started after telemetry in igniter installer
v2.3.1 (2024-09-05)
Improvements:
[
mix ash_postgres.gen.migrations] better imported index names[
mix ash_postgres.gen.migrations] add--extendoption, forwarded to generated resource
v2.3.0 (2024-09-05)
Features:
- [
mix ash_postgres.gen.resources] Addmix ash_postgres.gen.resourcesfor importing tables from an existing database as resources
v2.2.5 (2024-09-04)
Improvements:
- [
AshPostgres.DataLayer] support ash main upsert_condition logic
v2.2.4 (2024-09-03)
Bug Fixes:
[
AshPostgres.DataLayer] ensure default bindings are present on data layer[
AshPostgres.DataLayer] properly traverse newtypes when determining types
v2.2.3 (2024-08-18)
Bug Fixes:
- [
mix ash_postgres.install] was not adding ash_functions/min_pg_version
v2.2.2 (2024-08-17)
Bug Fixes:
- [
mix ash_postgres.install] properly handle new igniter installer functions
v2.2.1 (2024-08-16)
Bug Fixes:
- [
AshPostgres.DataLayer] set a proper default forskip_unique_indexes
Improvements:
- [
mix ash_postgres.install] includemin_pg_versionin new generators
v2.2.0 (2024-08-13)
Bug Fixes:
- [
AshPostgres.Repo] removeAgent"convenience" for determining min pg version
We need to require that users provide this function. To that end we're adding a warning in a minor release branch telling users to define this. The agent was acting as a bottleneck that all queries must go through, causing nontrivial performance issues at scale.
- [upserts] handle filter condition on create (#368)
v2.1.19 (2024-08-12)
Bug Fixes:
[ecto compatibility] we missed a change when preparing for ecto 3.12 parameterized type changes
[exists aggregates] update ash_sql for exists aggregate fixes
v2.1.18 (2024-08-09)
Improvements:
- [
ash_postgres.gen.migration] dynamically select and allow setting a repo
v2.1.17 (2024-07-27)
Improvements:
- [
ash_sql] update ash & ash_sql for various fixes
v2.1.16 (2024-07-25)
Bug Fixes:
[updates] don't overwrite non-updated fields on update
[
mix ash_postgres.generate_migrations] ensure app is compiled before using repo modules
Improvements:
- [
ash_sql] update ash_sql for cleaner queries
v2.1.15 (2024-07-23)
Bug Fixes:
- [query building] use a subquery if any exists aggregates are in play
v2.1.14 (2024-07-22)
Bug Fixes:
- [multitenancy] properly convert tenant to string when building lateral join
v2.1.13 (2024-07-22)
Bug Fixes:
- [atomic validations] update ash & ash_sql for fixes, test atomic validations in destroys
v2.1.12 (2024-07-19)
Bug Fixes:
- [
mix ash_postgres.install] properly add prod config in installer
Bug Fixes:
[
mix ash_postgres.install] properly perform or don't perform configuration modification code[
has_manyrelationships] allow non-unique has_many source_attributes (#355)
Improvements:
[
mix ash_postgres.install] prepend:postgresto section order[
mix ash.patch.extend] pluralize table name in extender
v2.1.10 (2024-07-18)
Bug Fixes:
- [lateral joins] allow non-unique has_many source_attributes (#355)
v2.1.9 (2024-07-18)
Bug Fixes:
Improvements:
- [
mix ash.gen.resource] pluralize table name in extender
v2.1.8 (2024-07-17)
Bug Fixes:
[aggregates] update ash_sql & ash for include_nil? fix (and test it)
[aggregates] ensure synthesized query aggregates have context set
Improvements:
[installers] update igniter dependencies
[expressions] add
binding()expression, for referring to the current table
v2.1.7 (2024-07-17)
Bug Fixes:
update to latest ash version for aggregate fix
update ash_sql for include_nil? fix and test it
ensure synthesized query aggregates have context set
Improvements:
update ash/igniter dependencies
add
binding()expressionuse latest type casting code from ash
support new type determination code
v2.1.6 (2024-07-16)
Bug Fixes:
- ensure synthesized query aggregates have context set
Improvements:
update ash/igniter dependencies
add
binding()expressionuse latest type casting code from ash
support new type determination code
v2.1.5 (2024-07-15)
Bug Fixes:
- ensure synthesized query aggregates have context set
Improvements:
[
Ash.Expr] addbinding()expression to refer to current table[
Ash.Expr] use latest type casting code from ash
v2.1.4 (2024-07-14)
Improvements:
- [
Ash.Expr] use latest type casting code from ash
v2.1.3 (2024-07-14)
Improvements:
- [
Ash.Expr] support new type determination code
v2.1.2 (2024-07-13)
- [query builder] update ash & improve type casting behavior
v2.1.1 (2024-07-10)
Bug Fixes:
- [mix ash_postgres.install] properly interpolate module names in installer
v2.1.0 (2024-07-10)
Features:
- [AshPostgres.DataLayer] add
storage_typesconfiguration (#342) - [generators] add
mix ash_postgres.install(mix igniter.install ash_postgres)
Bug Fixes:
[AshPostgres.DataLayer] ensure that
from_many?relationships in lateral join have a limit applied[migration generator] properly delete args passed from migrate to ecto
Improvements:
[Ash.Type.UUIDv7] add support for
:uuid_v7type (#333)[migration generator] order keys in snapshot json (#339)
v2.0.12 (2024-06-20)
Bug Fixes:
- [migration generator] only add references indexes if they've changed
v2.0.11 (2024-06-19)
Bug Fixes:
[AshPostgres.DataLayer] rework expression type detection
[migration generator] ensure index keys are atoms in generated migrations (#332)
v2.0.10 (2024-06-18)
Bug Fixes:
[AshPostgres.DataLayer] update ash_sql to fix query generation issues
[migration generator] ensure that parens are always added to calculation generated SQL
[migration generator] properly get calculation sql
Improvements:
[AshPostgres.DataLayer] better type handling using new type inference
[identities] identities w/ calculations and where clauses in upserts
v2.0.9 (2024-06-13)
Features:
- [migration generator] autogenerate index in references (#321)
Bug Fixes:
[AshPostgres.DataLayer] fix invalid select on sorting by some calculations
[AshPostgres.DataLayer] fix error message displaying in identity verifier
[lateral joining] ensure that context multitenancy is properly applied to lateral many-to-many joins
[migration generator] don't assume old snapshots have
index?key for attributes[ash.rollback]
list_tenants->all_tenants[ash.rollback] when checking for roll back-able migrations, only check
Path.basename
Improvements:
- [migration generator] don't sort identity keys.
v2.0.8 (2024-06-06)
v2.0.7 (2024-06-06)
Bug Fixes:
[fix] update ash_sql and fix issues retaining lateral join context
[fix] ensure that all current attribute values are selected on bulk update shifted root query
v2.0.6 (2024-05-29)
Bug Fixes:
[atomic updates] properly support aggregate references in atomic updates
[migration generator] ensure that identities are dropped when where/nils_distinct? are changed
[migration generator] ensure that
whereis wrapped in parenthesis[ecto compatibility] support old/new parameterized type format
Improvements:
[identities] require clarification of index names > 63 characters
[mix ash_postgres.squash_snapshots] add
ash_postgres.squash_snapshotsmix task (#302)
v2.0.5 (2024-05-24)
Improvements:
- [idenities] update
ashand support newidentityfeatures
v2.0.4 (2024-05-23)
Bug Fixes:
[updates] ensure update's reselect all changing values
v2.0.3 (2024-05-22)
Bug Fixes:
[updates] handle complex maps/list on update
[Ash.Query] support anonymous aggregates in sorts
[exists] ensure parent_as bindings properly reference binding names
[migration generator] add and remove custom indexes in tandem properly
Improvements:
[references] support on_delete: :nilify for specific columns (#289)
v2.0.2 (2024-05-15)
Bug Fixes:
[update_query/destroy_query] rework the update and destroy query builder to support multiple kinds of joining
[mix ash_postgres.migrate] remove duplicate repo flags (#285)
[Ash.Error.Changes.StaleRecord] ensure filter is included in stale record error messages we return
[AshPostgres.MigrationGenerator] properly parse previous version from migration generation
v2.0.1 (2024-05-12)
Bug Fixes:
- [AshPostgres.MigrationGenerator] properly parse previous version of custom extensions when generating migrations
v2.0.0
The changelog is starting over. Please see /documentation/1.0-CHANGELOG.md in GitHub for previous changelogs.
Breaking Changes:
- [Ash.Type.UUID] change defaults in migrations for uuids to
gen_random_uuid() - [Ash.Type.DateTime] Use UTC for default generated timestamps (#131)
- [AshPostgres.DataLayer] must now know the min_pg_version that will be used. By default we check this at repo startup by asking the database, but you can also define it yourself.
- [AshPostgres.DataLayer] Now requires postgres version 14 or higher
Features:
- [AshPostgres.Timestamptz] add timestamptz types (#266)
- [AshPostgres.Repo] add
create?anddrop?callbacks toAshPostgres.Repo(#143) - [AshPostgres.DataLayer] support
c:AshDataLayer.calculate/3capability
Bug Fixes:
- [AshPostgres.MigrationGenerator] honor dry_run option in extension migrations
- [AshPostgres.MigrationGenerator] don't wait for shell input when checking migrations
- [AshPostgres.DataLayer] ensure limit/offset triggers joining for update/destroy query
- [AshPostgres.DataLayer] properly honor
limitin bulk operations - [AshPostgres.DataLayer] ensure that
existswith a filter paired withfrom_many?functions properly
Improvements:
- [AshPostgres.Repo] warn on missing ash-functions at compile time
- [AshPostgres.Repo] add default implementation for pg_version, and rename to
min_pg_version - [mix ash.rollback] support
mix ash.rollbackwith interactive rollback - [AshSql] move many internals out to
AshSqlpackage to be shared