Releases: ash-project/ash
v3.19.2
v3.19.0
Features:
-
Allow dumping and casting instance_of union types (#2597) by @Munksgaard (#2597)
-
make enum label/description overridable (#2594) by Hannes Wüthrich (#2594)
-
add touch_update_defaults? option to bulk_create (#2590) by Michael Bärtschi (#2590)
Bug Fixes:
- call manage_relationships in single hard destroy path (#2596) by @barnabasJ (#2596)
Improvements:
- add new trace types for bulk actions by @zachdaniel
v3.17.0
Features:
Bug Fixes:
-
Update Ash.Gen.Resource, validate relationship type (#2563) by Matt Savoia (#2563)
-
don't optimize equality into
inexpressions by @zachdaniel -
manual relationship implies no_attributes? true (#2562) by zackattackz (#2562)
Improvements:
-
include bread crumbs and standardize generic action errors by @zachdaniel
-
Allow Ash.Type.NewType to apply its own constraints (#2575) by Christopher Bonhage (#2575)
-
Split up usage rules into sub-rules (#2561) by @mylanconnolly (#2561)
v3.16.0
Features:
- calculations: Add multitenancy bypass options to calculations (#2552) by @shahryarjb (#2552)
Bug Fixes:
-
handle unrelated exists in authorizer ref replacement (#2556) by zackattackz (#2556)
-
pass full context to
Ash.load!in cascade changes (#2537) by @beam-bots (#2537) -
pass full context to
Ash.load!in cascade changes by @beam-bots (#2537) -
use scope option instead of to_opts for Ash.load! in cascade changes by @beam-bots (#2537)
-
avoid shadowing context variable in cascade changes by @beam-bots (#2537)
-
remove
authorize?: falsefrom cascadeAsh.load!calls by @beam-bots (#2537) -
ensure tenant is not overridden in aggregates by @zachdaniel
-
ensure that
changeis properly simulated whenbatch_changedefined by @zachdaniel -
remove incorrect stream calls (#2554) by Jesse Williams (#2554)
v3.15.0
Features:
Bug Fixes:
-
properly handle allow_nil? in expressions for atomic_set on create actions by @zachdaniel
-
Fix/1537 improve domain error message (#2545) by TravelCurry02 (#2545)
-
improve error reporting for duplicate use of Ash.Domain by TravelCurry02 (#2545)
-
resolve ^actor() template in manage_relationship filters (#2548) by @shahryarjb (#2548)
Improvements:
- manual load can return list without :ok by zackattackz (#2550)
v3.14.1
Bug Fixes:
- make manage_relationship return {:not_atomic} for non-ignored relationships (#2544) by @barnabasJ (#2544)
v3.13.0
Features:
-
Add
bulk_destroystep toAshReactor. (#2500) by wjrtz (#2500) -
add load and loading? functions to ActionInput (#2511) by zackattackz (#2511)
Bug Fixes:
-
transform after_batch results in bulk actions for partial change matches by @zachdaniel
-
aggregate type resolution when aggregate references a calculation (#2519) by sevenseacat (#2519)
-
AshReactor: inconsistencies between bulk_create step and Ash.bulk_create (#2518) by wjrtz (#2518)
-
remove typo in
referror message (#2520) by diogomrts (#2520) -
prevent lateral join handling for manual relationships (#2515) by @barnabasJ (#2515)
-
Remove redundant action nil guards in create/bulk.ex by @shahryarjb (#2509)
Improvements:
- Upgrade Splode to 0.3.0 for stacktrace filtering by @zachdaniel
Performance Improvements:
v3.12.0
Features:
-
add is_distinct_from and is_not_distinct_from functions (#2497) by @jechol (#2497)
-
add is_distinct_from and is_not_distinct_from operators by @jechol (#2497)
Bug Fixes:
-
revert inadvertant changes to accept dsl option by @zachdaniel
-
merge errors with
Reactor.Errorby @zachdaniel -
handle new operator_overloads format in operator evaluation by @zachdaniel
-
set
allow_nil?: falsefor get_by_read_actions arguments by @zachdaniel -
move optimization logic from simplify to new for is_distinct_from operators by @jechol (#2497)
-
raise an informative error when actor fields used in filters are not loaded by @zachdaniel
-
properly handle exists across data layers by @zachdaniel
Improvements:
-
optimize is_distinct_from operators when NULL is impossible by @jechol (#2497)
-
create: Add multitenancy bypass options to create actions (#2495) by @shahryarjb (#2495)
-
Support :allow_global in bulk multitenancy actions by @shahryarjb (#2495)
-
update: Add multitenancy bypass options to update actions (#2494) by @shahryarjb (#2494)
v3.11.3
Bug Fixes:
- only apply overload typing when there is only one option by @zachdaniel
v3.11.2
Bug Fixes:
-
don't run authorization in cross-datalayer filters by @zachdaniel
-
dont validate constraints in union_types (#2469) by zackattackz (#2469)
-
Ensure that calculations used in preparations have access to argument values (#2480) by sevenseacat (#2480)
-
many-to-many relationships should inherit the sort/limit from their join relationship (#2486) by sevenseacat (#2486)
-
correct UnsortableField exception key from name: to field: (#2482) by @rauann (#2482)
-
handle struct context in atomic_condition (#2483) by MaamonSakar (#2483)
-
link text in multitenancy documentation (#2484) by Pascal736 (#2484)
-
respect
read_actionoption in cascade_update/cascade_destroy fallback path (#2474) by @beam-bots (#2474) -
don't let unknown values short-circuit expression calculations by @zachdaniel
Improvements:
-
destroy: Add multitenancy bypass options to destroy actions (#2477) by @shahryarjb (#2477)
-
support operator overloads returning casting overrides by @zachdaniel