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
Zach Daniel
a45267441a
chore: more fluent datetime type casting
2023-03-03 11:59:15 -05:00
Zach Daniel
ccdbafa730
chore: improve inspect protocol
2023-03-03 11:39:50 -05:00
Zach Daniel
44d744daba
improvement: add new date expressions
...
chore: fix dialyzer
2023-03-03 11:08:38 -05:00
Zach Daniel
5addfb37fb
fix: calc loading in keyset pagination
2023-02-28 10:11:48 -05:00
Zach Daniel
5c71e3b6bc
fix: properly handle allow_nil fields in keyset pagination
2023-02-27 12:18:18 -05:00
Zach Daniel
7dddbade5c
fix: don't reselect fields automatically
...
it leads to strange/unpredictable behavior
improvement: introduce `reselect_all?` option for loading
2023-02-24 14:31:37 -05:00
Zach Daniel
c8ca9cd3ce
fix: ensure data layer is compiled
2023-02-24 11:37:01 -05:00
Zach Daniel
119905e5ad
chore: fix call inspects
2023-02-24 11:27:06 -05:00
Zach Daniel
83bd8215b0
fix: only use resource_to_query/2
2023-02-24 11:22:40 -05:00
Zach Daniel
41ea63aed3
improvement: support record's as calculate arguments
2023-02-24 10:54:25 -05:00
Rebecca Le
9105d4f297
docs: Update pubsub docs to be readable on AshHQ ( #517 )
2023-02-24 06:58:09 -05:00
Zach Daniel
f060a2bdc4
improvement: include actor in all calculation context
2023-02-23 09:45:27 -05:00
Zach Daniel
86d2297018
fix: support nil
values in dump_to_native
2023-02-22 22:36:02 -05:00
Zach Daniel
2a6fe49348
fix: properly support calc expansion in policies
...
fix: support `nil` cast for resource type
2023-02-22 22:28:15 -05:00