Frank Dugan III
2e5f045f72
feat: add fields/1
and public_fields/1
to Ash.Resource.Info ( #569 )
2023-04-20 12:27:13 -06:00
Zach Daniel
d5074a1dd4
fix: handle calculation deps w/ multiple nested relationship paths
2023-04-20 07:46:42 -06:00
Zach Daniel
84a426c53e
chore: don't require action set in run_query/6
2023-04-19 21:03:57 -06:00
Zach Daniel
d1d8deaab3
fix: only do tenant things in ETS if strategy is :context
2023-04-19 20:19:42 -06:00
Zach Daniel
5005d57b1d
fix: add the spark function version of calculations
2023-04-18 20:22:17 -04:00
Zach Daniel
2cbae1bd9a
fix: proper error message on invalid inline function calculation
2023-04-18 16:42:26 -04:00
Zach Daniel
6b5a1da66d
docs: improve api/interface documentation for aggregates
2023-04-18 12:10:52 -04:00
Mariusz Morawski
ce749072e4
improvement: Add upserts option to flow's create step ( #566 )
2023-04-16 10:46:38 -04:00
Mariusz Morawski
8686cc9417
Fix: Add tenant attribute to identity attributes on upserts ( #565 )
2023-04-16 10:44:20 -04:00
George Anderson
54f65b4d6f
improvement: Change storage type of Ash.Type.Term to :binary ( #561 )
2023-04-13 15:59:34 -04:00
Zach Daniel
13591a4681
chore: docs & deprecations
2023-04-13 09:24:37 -04:00
Zach Daniel
81c9475e2e
chore: fix return_notifications?
behavior
2023-04-13 01:41:19 -04:00
Zach Daniel
911acdef5b
chore: better notification handling
2023-04-12 18:10:17 -04:00
Zach Daniel
dcd8f305b6
chore: only gather notifications if not return_notifications?
2023-04-12 17:38:45 -04:00
Zach Daniel
ba5a7e2cb7
improvement: automatically gather up notifications
2023-04-12 17:35:17 -04:00
Zach Daniel
36d6380c6e
fix: properly require attributes on creates
2023-04-11 09:42:11 -04:00
Zach Daniel
92edb11499
improvement: add build_action_metadata to resource builder
...
improvement: add `Ash.merge_context/1` and `Ash.update_context/1`
2023-04-10 19:03:16 -04:00
Zach Daniel
38cdaa8c88
fix: don't require values if a changeset result has been set
2023-04-08 19:25:26 -04:00
Zach Daniel
29096c27ae
fix: properly return errors on invalid calculation arguments
2023-04-08 03:39:41 -04:00
Barnabas Jovanovics
b5e0cbb3cc
improvement: add constraints to maps ( #556 )
2023-04-07 09:53:41 -04:00
Zach Daniel
be7fa0f898
chore: use unused variable
2023-04-06 12:39:11 -04:00
Zach Daniel
a14d9ab456
fix: user unpaginated_read for read_one
2023-04-06 12:35:30 -04:00
Zach Daniel
f104e155e9
chore: credo
2023-04-06 10:30:58 -04:00
Zach Daniel
a20ee0abf7
chore: fix tests/stacktrace setting
2023-04-06 10:23:17 -04:00
Zach Daniel
80616781d6
Revert "chore: fix tests"
...
This reverts commit 67305a6ec8
.
2023-04-06 09:38:21 -04:00
Zach Daniel
67305a6ec8
chore: fix tests
2023-04-06 09:32:10 -04:00
Zach Daniel
92208d8f84
chore: fix tests and add_expression_part
2023-04-05 20:49:28 -04:00
Zach Daniel
4afe87159b
fix: handle strings better in refs
2023-04-05 18:44:24 -04:00
Zach Daniel
66bb01f3bb
fix: consider strings in ref
2023-04-05 18:40:00 -04:00
Zach Daniel
cc01bd9b04
chore: fix invalid guard
2023-04-05 18:38:34 -04:00
Zach Daniel
1ecde072f0
chore: consider strings in ref
2023-04-05 18:37:42 -04:00
Zach Daniel
11771c8b02
chore: don't overwrite stacktraces
2023-04-05 18:33:09 -04:00
Zach Daniel
018ecca89e
chore: inspect invalid return result
2023-04-05 18:26:12 -04:00
Zach Daniel
a41841940c
chore: add error message on return format
2023-04-05 18:25:35 -04:00
Zach Daniel
db508f7038
chore: credo
2023-04-04 16:41:14 -04:00
Zach Daniel
72158a8c9a
chore: always raise class errors
2023-04-04 15:53:55 -04:00
Zach Daniel
f177c1cda0
improvement: validate returnable steps in flow returns
2023-04-04 15:46:28 -04:00
Zach Daniel
a6e3ff233e
fix: various ash flow return value fixes
2023-04-04 15:36:08 -04:00
Mariusz Morawski
a0287f96a0
fix: Fix set_new_attribute by adding missing option to set_attribute ( #553 )
2023-04-04 10:35:30 -04:00
Zach Daniel
152a0b185c
chore: better error context on resolvers
2023-04-03 23:45:49 -04:00
Zach Daniel
6ba7c76aea
fix: show context on all errors
2023-04-03 23:44:16 -04:00
Zach Daniel
30309dac1d
fix: include error context in top level of errors
2023-04-03 23:28:55 -04:00
Zach Daniel
6a13903673
chore: add context to resolver errors
2023-04-03 23:16:48 -04:00
James Harton
882747adef
chore: fix various incorrect "context" typespecs. ( #547 )
2023-04-04 10:49:37 +12:00
Zach Daniel
ff98fe7ed1
improvement: update touched_resources logic
2023-04-03 18:46:16 -04:00
Alan Heywood
698cbd1f4c
improvement: Add :field option to relate_actor change ( #546 )
2023-04-02 21:50:32 -04:00
Zach Daniel
fd7854acc1
chore: fix build
2023-04-02 21:49:53 -04:00
Zach Daniel
e29ad1fcb1
improvement: thread context through when loading data
2023-04-02 21:42:01 -04:00
kernel-io
3a4b82a41e
remove deprecation warning on aggregate/5 in query.ex ( #545 )
2023-04-01 18:46:19 -04:00
Zach Daniel
4fd4055e21
chore: fix small lint issue
2023-04-01 18:26:39 -04:00
Zach Daniel
eb2c2de528
chore: a few small error case improvements
2023-04-01 18:19:08 -04:00
Zach Daniel
f832ab3624
improvment: loading data shouldn't call before action hooks
...
by this, I mean that loading data shouldn't call before action
hooks on the root resource you're loading data on
2023-04-01 01:35:12 -04:00
Zach Daniel
a9db35e79f
fix: properly handle nested calculation selects
2023-03-31 12:36:20 -04:00
Zach Daniel
7f1ee67dde
improvement: update spark to fix deeply nested DSLs
2023-03-31 11:54:44 -04:00
b8484710bb
improvement(read_uses_flow?): Build stub for Ash.Actions.Flows.Read
.
...
Returns an empty result, but at least it returns a result so now we have failing tests with this feature flag, rather than a compile error.
2023-03-31 15:32:47 +13:00
Zach Daniel
9baf9d21ea
fix: fix typespecs and not_found_error?
code interface option
2023-03-30 16:51:54 -04:00
Zach Daniel
a745939913
fix: typespec support Expr.t()
in calculation builder
2023-03-30 12:50:17 -04:00
Zach Daniel
cbc9703cc7
chore: fix NewType dialyzer error
2023-03-30 09:01:59 -04:00
Zach Daniel
648572386a
improvement: properly set related resource
2023-03-30 08:27:37 -04:00
Zach Daniel
47468391c2
improvement: simpler required attributes behavior
2023-03-30 01:47:58 -04:00
Zach Daniel
1db7025b41
test: add a test for calc -> calc -> attribute chain
...
chore: simplify some code
2023-03-29 21:34:50 -04:00
Zach Daniel
bacd54a01b
fix: remove bad default for struct constraint
2023-03-29 20:24:45 -04:00
Alan Heywood
6e76a91215
improvement: add :subfield option to relates_to_actor_via ( #540 )
2023-03-29 12:11:23 -04:00
Zach Daniel
b4163127f9
improvement: add accessing_from/2
builtin check
2023-03-29 09:19:49 -04:00
Zach Daniel
24d802cd4b
fix: use values when already loading aggregates
2023-03-29 08:02:10 -04:00
9c5119d8c8
chore: add read_uses_flow?
feature flag.
2023-03-29 16:15:59 +13:00
557f60b03b
chore: fix dialyzer error in Ash.Query.select_and_load_calc/3
2023-03-29 16:15:59 +13:00
Zach Daniel
ad347ca38b
improvement: rewrite calculation loader
...
Calculation loading is complex because different calculations can
depend on differently parameterized things. FOr example:
```elixir
def load(_, _, _), do: [foo: %{arg: 1}]
def load(_, _, _), do: [foo: %{arg: 2}]
```
The previous naive implementation would simply merge all of the calculation loads, which naturally would not work. Now we ensure that we load each requirement in isolation.
2023-03-28 20:34:15 -04:00
bcksl
de943509f7
improvement: add {set,update,get}_context
to Ash.PlugHelpers
( #534 )
2023-03-23 23:01:27 -04:00
Zach Daniel
5bfc1aeb0c
improvement: improve compile times with 🪄
2023-03-23 22:39:56 -04:00
Zach Daniel
de550e7bac
improvement: fix action typespecs
2023-03-23 19:13:26 -04:00
bcksl
53c99a0705
improvement: add option set_when_nil?
to builtin change set_attribute
( #528 )
2023-03-22 22:48:06 -04:00
Zach Daniel
e60f255ac9
chore: fix typespec for subtype_constraints/1
2023-03-22 19:40:54 -04:00
bcksl
dc2cb7b86f
improvement: add update_actor
to Ash.Plughelpers
( #532 )
2023-03-22 12:59:54 -04:00
Zach Daniel
d777f2924d
fix: use proper arguments for aggregating queries
2023-03-21 15:54:02 -04:00
Zach Daniel
678497b263
chore: fix dialyzer typespec
2023-03-21 15:15:08 -04:00
Zach Daniel
ed45a72ea6
improvement: add skip_global_validations?
option for actions
2023-03-21 13:33:48 -04:00
Zach Daniel
65f21e76be
fix: datetime_add was actually datetime_subtract in elixir
2023-03-21 09:37:10 -04:00
Alan Heywood
9966274678
fix: prevent exception when describing some checks ( #531 )
2023-03-21 08:59:05 -04:00
James Harton
171967d6de
improvement: Add get_by
option to read actions. ( #530 )
2023-03-21 18:03:06 +13:00
Zach Daniel
3c464b863f
improvement: builder & typespec improvements
2023-03-20 23:11:17 -04:00
James Harton
9dc202ca44
chore: fix incorrect typespec for SimpleCheck.context. ( #529 )
2023-03-20 13:38:46 +13:00
Zach Daniel
3a82204c8f
improvement: better resource detection of transactions in Ash.Flow
...
fix: properly handle multi-resource transaction return values
improvement: better formatting for branches in flow charts
2023-03-17 18:42:17 -04:00
Zach Daniel
8b722e6460
fix: various fixes in aggregate authorization behavior
...
improvement: add `:read_action` and `:authorize?` configurations for resource aggregates
2023-03-17 12:02:37 -04:00
Rebecca Le
22cad90ae7
docs: format code blocks appropriately ( #527 )
2023-03-16 09:42:01 -04:00
Zach Daniel
700b577cb2
fix: use builtin short names for builtin type helper
2023-03-14 13:47:15 -04:00
James Harton
a8346907c1
improvement: Add before_action/1
and after_action/1
to Ash.Resource.Preparations.Builtins
. ( #526 )
2023-03-13 19:20:41 -04:00
Zach Daniel
1f2e8f7a09
fix: properly set builtin types
2023-03-13 18:29:53 -04:00
Zach Daniel
a559a0cd3f
improvement: add Ash.Type.NewType
2023-03-13 17:44:27 -04:00
Zach Daniel
15657f3e51
improvement: add :unknown
for all potential facts
2023-03-10 20:24:36 -05:00
Zach Daniel
b899a6ecf3
improvement: optimize policy check running with laziness
...
Implemented lazy evaluation of individual checks, so that checks that
are demonstrably irrelevant when building policies are not checked at all.
This will often mean no need to visit the sat solver at all, or only with
a very minimal set of filter checks.
2023-03-10 13:29:29 -05:00
Zach Daniel
3233129682
improvement: don't select when running policy queries
2023-03-10 00:17:44 -05:00
Zach Daniel
5723b0447f
fix: remove pre_flight expression checking
2023-03-09 20:57:53 -05:00
James Harton
ee99bf367f
improvement: Add builtin changes for lifecycle hooks. ( #523 )
2023-03-09 19:59:39 -05:00
Zach Daniel
979b4e648d
fix: properly return false
on forbidden errors
2023-03-09 07:55:27 -05:00
Zach Daniel
2fcacc4be6
chore: support data
option for can?
with updates/destroys
2023-03-08 16:41:25 -05:00
Zach Daniel
c643e9a88f
improvement: add Api.can?
and Api.can
2023-03-08 16:34:44 -05:00
Zach Daniel
785af56002
fix: add actor
back to transaction metadata
2023-03-06 08:59:20 -05:00
Juha
2db5de0be7
Fix typo in Ash.Flow moduledoc ( #520 )
2023-03-06 08:05:35 -05:00
Zach Daniel
0715da0aad
improvement: add delay_global_validations?
action option
2023-03-03 13:07:14 -05:00