Commit graph

4059 commits

Author SHA1 Message Date
Zach Daniel
51be60cb4b improvement: detect invalid resources placed in relationships on domains verifier 2024-06-05 09:48:32 -04:00
Andreas Donig
7d10c781d4
fix: Do not compare nil values in compare validation (#1223)
Co-authored-by: Andreas Donig <git@innwiese.de>
2024-06-05 09:23:33 -04:00
Zach Daniel
c9a7ac7ba9 improvement: warn at compile time on types that don't define atomic_update/2 2024-06-04 21:38:42 -04:00
Andreas Donig
58cc007ff5
docs: Fix a small mistake in the docs. (#1222)
Co-authored-by: Andreas Donig <git@innwiese.de>
2024-06-04 14:41:09 -04:00
Zach Daniel
3726f9b8b0 chore: List.wrap .load call on calculations 2024-06-03 19:30:10 -04:00
Zach Daniel
8799191165 test: add tests showing before_transaction hooks setting derived values 2024-06-02 11:59:18 -04:00
Zach Daniel
a3e3e8701f fix: ensure context is properly set on bulk manual action invocations
closes #1217
2024-06-02 11:44:15 -04:00
Zach Daniel
a35d4b2b6f docs: fix docs rendering issues 2024-05-31 10:28:25 -05:00
Zach Daniel
77f6c9526d chore: release version v3.0.9 2024-05-31 09:48:53 -05:00
Zach Daniel
e47ceafc41 chore: update to new assets format in ex_doc 2024-05-31 09:48:20 -05:00
dependabot[bot]
fba3287ddb
chore(deps-dev): bump ex_doc from 0.33.0 to 0.34.0 (#1215)
Bumps [ex_doc](https://github.com/elixir-lang/ex_doc) from 0.33.0 to 0.34.0.
- [Release notes](https://github.com/elixir-lang/ex_doc/releases)
- [Changelog](https://github.com/elixir-lang/ex_doc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/elixir-lang/ex_doc/compare/v0.33.0...v0.34.0)

---
updated-dependencies:
- dependency-name: ex_doc
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-31 09:39:50 -05:00
Riccardo Binetti
d71718c691
fix: use correct boolean operation names in Filter.find/4 (#1214) 2024-05-30 07:59:11 -05:00
Zach Daniel
fbcafa1bfa fix: when hydrating nested aggregates, use correct related resource/path pair
closes #1213
2024-05-30 00:12:12 -05:00
dependabot[bot]
4910bf9d6d
chore(deps): bump stream_data from 1.0.0 to 1.1.0 (#1212) 2024-05-29 19:49:51 -04:00
Zach Daniel
4ab37a18f5 chore: fix 1.17 warning 2024-05-29 17:07:30 -04:00
Zach Daniel
2a304a581b fix: check if in transaction before trying to roll it back 2024-05-29 15:21:08 -04:00
Zach Daniel
1c21e390be fix: retain ref_path when authorizing aggregates 2024-05-29 14:03:33 -04:00
Zach Daniel
e9897eb50f fix: ensure that belongs_to relationships are properly not reloaded with lazy?: true
closes #1208
2024-05-29 12:59:10 -04:00
Zach Daniel
49b69628f8 improvement: compatibility with elixir 1.17 2024-05-29 09:20:44 -04:00
Riccardo Binetti
421905c163
docs: add pagination guide in advanced topics (#1113) 2024-05-29 07:35:34 -04:00
Jechol Lee
99cc10a9c7
Ash.can? to be boolean | no_return (#1210) 2024-05-29 07:32:32 -04:00
Jechol Lee
5dbf8fc0ed
fix get_domain (#1209) 2024-05-29 07:31:18 -04:00
Zach Daniel
2d9ffe7fab fix: implement rollback on after hooks for bulk actions 2024-05-28 14:57:49 -04:00
Zach Daniel
acbe60a9b4 chore: release version v3.0.8 2024-05-28 14:33:36 -04:00
Zach Daniel
bfdb8f9bab chore: format 2024-05-28 14:32:30 -04:00
Zach Daniel
4b873438dd fix: missing else caused manual updates not to work with bulk_update
closes #1205
2024-05-28 14:30:41 -04:00
Zach Daniel
d1736a109b docs: fix miscommunication in upgrade guide 2024-05-28 14:23:28 -04:00
dependabot[bot]
f2bfc51988
chore(deps): bump reactor from 0.8.3 to 0.8.4 (#1207) 2024-05-27 19:37:37 -04:00
Alan Heywood
2ee311b061
test: demonstrate error with bulk update on manual action (#1204)
The following error is produced

1) test manual updates are supported (Ash.Test.Actions.BulkUpdateTest)
     test/actions/bulk/bulk_update_test.exs:358
     ** (CaseClauseError) no case clause matching: nil
     code: |> Ash.bulk_update!(:update_manual, %{},
     stacktrace:
       (ash 3.0.7) lib/ash/actions/update/bulk.ex:2076: anonymous fn/11 in Ash.Actions.Update.Bulk.run_batch/10
       (elixir 1.16.2) lib/enum.ex:1264: anonymous fn/3 in Enum.flat_map/2
       (stdlib 5.0.2) maps.erl:416: :maps.fold_1/4
       (elixir 1.16.2) lib/enum.ex:2540: Enum.flat_map/2
       (ash 3.0.7) lib/ash/actions/update/bulk.ex:1966: Ash.Actions.Update.Bulk.run_batch/10
       (ash 3.0.7) lib/ash/actions/update/bulk.ex:1505: Ash.Actions.Update.Bulk.do_handle_batch/13
       (ash 3.0.7) lib/ash/actions/update/bulk.ex:1042: anonymous fn/12 in Ash.Actions.Update.Bulk.do_stream_batches/7
       (elixir 1.16.2) lib/stream.ex:613: anonymous fn/4 in Stream.map/2
       (elixir 1.16.2) lib/stream.ex:1816: anonymous fn/3 in Enumerable.Stream.reduce/3
       (elixir 1.16.2) lib/stream.ex:273: anonymous fn/4 in Stream.chunk_while_fun/2
       (elixir 1.16.2) lib/stream.ex:1159: anonymous fn/3 in Stream.with_index/2
       (elixir 1.16.2) lib/stream.ex:1079: Stream.do_transform_each/3
       (elixir 1.16.2) lib/stream.ex:1816: anonymous fn/3 in Enumerable.Stream.reduce/3
       (elixir 1.16.2) lib/enum.ex:4839: Enumerable.List.reduce/3
       (elixir 1.16.2) lib/stream.ex:1027: Stream.do_transform_inner_list/7
       (elixir 1.16.2) lib/stream.ex:1828: Enumerable.Stream.do_each/4
       (elixir 1.16.2) lib/stream.ex:1052: Stream.do_transform_inner_enum/7
       (elixir 1.16.2) lib/stream.ex:1828: Enumerable.Stream.do_each/4
       (elixir 1.16.2) lib/stream.ex:943: Stream.do_transform/5
       (elixir 1.16.2) lib/enum.ex:4396: Enum.reverse/1
       (elixir 1.16.2) lib/enum.ex:3728: Enum.to_list/1
       (ash 3.0.7) lib/ash/actions/update/bulk.ex:1070: Ash.Actions.Update.Bulk.run_batches/3
       (ash 3.0.7) lib/ash/actions/update/bulk.ex:386: Ash.Actions.Update.Bulk.run/6
       (ash 3.0.7) lib/ash.ex:2209: Ash.bulk_update!/4
       test/actions/bulk/bulk_update_test.exs:373: (test)
2024-05-27 10:32:39 -04:00
Zach Daniel
6de8e765a9 improvement: verify notifiers all use the Ash.Notifier behaviour 2024-05-26 13:00:15 -04:00
Rebecca Le
8cf10b1a8d
docs: Remove duplicate link to mnesia in DSL docs (#1201) 2024-05-26 07:34:41 -04:00
Zach Daniel
b5dce2494a chore: optimize strict check fact checking 2024-05-24 23:07:46 -04:00
Zach Daniel
adda85297c fix: multiple filter-checks in policy conditions were not composing properly 2024-05-24 22:58:05 -04:00
Zach Daniel
3057c4d936 chore: make credo happy 2024-05-24 21:57:54 -04:00
Zach Daniel
c45ecbfa49 fix: properly honor trailing policies that are constantly false 2024-05-24 21:03:06 -04:00
dependabot[bot]
98adffd1bb
chore(deps): bump reactor from 0.8.2 to 0.8.3 (#1199) 2024-05-24 19:14:16 -04:00
Zach Daniel
65c0e8185e chore: release version v3.0.7 2024-05-24 00:35:45 -04:00
Zach Daniel
3510cd48f4 chore: clean up changelog and format 2024-05-24 00:35:13 -04:00
Zach Daniel
dc94f3a743 improvement: support nils_distinct? on identities
improvement: support `where` option on `identities`
improvement: allow calculations in identity keys

closes #1001
closes #1182
2024-05-24 00:24:42 -04:00
Zach Daniel
8b1ce5e5a0 chore: release version v3.0.6 2024-05-23 18:35:01 -04:00
Zach Daniel
808692bbd7 fix: improve non-atomic-upgrade policy handling
fix: ensure we have a primary key for certain kinds of calculations:
2024-05-23 18:34:15 -04:00
Zach Daniel
e63d80e645 fix: handle subquery-requiring calculations in calculate/2 2024-05-23 17:33:29 -04:00
Joel Kociolek
d0ffc55924
fix: mixup between atomic upsert vs update capability of datalayers (#1198) 2024-05-23 12:19:20 -04:00
Zach Daniel
969eee4270 chore: release version v3.0.5 2024-05-23 11:06:47 -04:00
Zach Daniel
feb187bdf6 improvement: add atomic_upgrade? flag to update/destroy actions
improvement: do not do atomic upgrade by default unless `require_atomic?` is `true`
improvement: allow configuring the read action used by atomic upgrades
2024-05-23 11:05:17 -04:00
Zach Daniel
73a2ef4852 fix: only use Mix.deps_tree if defined
fixes #1197
2024-05-23 10:00:46 -04:00
Zach Daniel
66de15db28 chore: release version v3.0.4 2024-05-22 18:52:29 -04:00
Zach Daniel
67c6e5e22a fix: ensure that all notifications are sent for bulk destroy/update
closes #1186
2024-05-22 18:42:19 -04:00
Zach Daniel
e01e95235f chore: release version 3.0.3 2024-05-22 17:48:34 -04:00
Zach Daniel
9b3eace611 fix: properly hydrate and scope sorts
improvement: support anonymous aggregates and calculations in queries
2024-05-22 17:47:03 -04:00