Commit graph

2235 commits

Author SHA1 Message Date
Dmitry Maganov
b428fb8995
chore: continue update validate_related_resource_inclusion.ex (#871) 2024-02-06 19:29:20 -05:00
Bryan Bryce
974acdf5b9
chore: Update validate_related_resource_inclusion.ex (#870)
The error message had an error because it referred to a option name that doesn't exist
2024-02-06 12:46:34 -05:00
Zach Daniel
5b10d6f292 fix: use primary key for lateral join source in ets 2024-02-06 11:55:05 -05:00
Dmitry Maganov
0cc0e142a6
fix: set right accessing_from name in many to many managed create (#868) 2024-02-06 09:48:49 -05:00
Robert Graff
e331e24c7b
Pass the tenant to full_atomic_changeset call (#867) 2024-02-03 20:33:43 -05:00
Dmitry Maganov
e1efea81bf
improvement: add join_keys option to manage_relationship (#866) 2024-02-03 15:02:25 -05:00
Zach Daniel
89a8f59e18 fix: set_tenant on fully atomic changesets 2024-02-03 14:56:13 -05:00
Zach Daniel
dd3f4766ec fix: handle api.can case in authorize_changeset
fix: properly bypass authorization in atomic update switch-over
2024-02-02 04:25:07 -05:00
Zach Daniel
c5ef834b5b improvement: don't run check in cases that require strict checks 2024-02-01 17:09:34 -05:00
Zach Daniel
94ffeaa057 fix: properly set action_type on atomic changesets 2024-02-01 14:32:01 -05:00
Zach Daniel
1cd73e2ec7 chore: also properly process opts for destroy atomic changesets 2024-02-01 14:29:26 -05:00
Zach Daniel
618ae4459a chore: properly process opts for atomic changesets 2024-02-01 14:29:01 -05:00
Zach Daniel
3baa9c5951 fix: extract relationship filters from pre-authorization query 2024-02-01 13:06:43 -05:00
Zach Daniel
57654d3df4 improvement: atomic_batches behavior for bulk destroys
improvement: allow strategy selection for bulk actions
2024-02-01 13:00:52 -05:00
Zach Daniel
e707758c93 fix: retain metadata on updates, atomic and otherwise
fix: properly load expression -> runtime calculation deps
2024-02-01 10:21:22 -05:00
Barnabas Jovanovics
60c10e9af4
feat: support returning streams from mod calc (#864) 2024-02-01 09:06:51 -05:00
Zach Daniel
3b3e3a06f2 fix: ignore input? when considering refs equal in filter subset checking 2024-01-31 15:57:47 -05:00
Zach Daniel
b3977817bb chore: add sobelow skip statement 2024-01-31 15:47:38 -05:00
Dmitry Maganov
51990bd784
fix: change names of code interface methods for calculations (#863) 2024-01-31 15:42:22 -05:00
Zach Daniel
fc3cbc4e2c improvement: change nested field filtering to be done with at_path 2024-01-31 15:41:10 -05:00
Zach Daniel
9efe456e16 fix: properly mark manuall created input refs with input?: true 2024-01-31 12:12:06 -05:00
Zach Daniel
f7716c5222 improvement: support referencing non-array embeds in input filters 2024-01-31 12:11:36 -05:00
Zach Daniel
107e6c53f5 improvement: bulk update in batches if not given a query 2024-01-31 10:26:08 -05:00
Zach Daniel
9749b75e3b fix: clean vars should handle map vars 2024-01-31 09:46:11 -05:00
Zach Daniel
f8ef4529c1 fix: properly merge union loads 2024-01-31 08:29:02 -05:00
Zach Daniel
7811dfaa11 improvement: update action should respect load and select 2024-01-30 20:25:49 -05:00
Zach Daniel
6602ae63e6 fix: support expression calculations referencing runtime calculations 2024-01-30 16:34:17 -05:00
Zach Daniel
49ac5a23dd fix: set default access type properly 2024-01-30 13:37:34 -05:00
Zach Daniel
15ab382ee0 chore: remove IO.inspect 2024-01-30 13:17:12 -05:00
Zach Daniel
9f748b5c55 test: update authorizer tests
fix: properly handle the case where all valid scenarios are pruned
2024-01-30 13:11:47 -05:00
Zach Daniel
9e02b0d0c7 improvement: introduce require_atomic?, which defaults to false in 2.0, true in 3.0
fix: properly prevent the atomic handling of manual update actions
improvement: better support around the mixing of atomic and non atomic changes/validations
2024-01-30 12:32:41 -05:00
Zach Daniel
8e82d9588f chore: better handling of atomic validations 2024-01-29 17:55:56 -05:00
Zach Daniel
f4339be426 chore: fix stream option taking (again) 2024-01-29 15:56:48 -05:00
Zach Daniel
248f99ebcf fix: fix passing extra opts to stream
fix: properly check if data layer can update_query
2024-01-29 15:43:21 -05:00
Zach Daniel
210d8d03c7 improvement: more atomic implementations
chore: wrap up load/select support in atomic updates
2024-01-29 15:17:52 -05:00
Zach Daniel
c02bced508 improvement: support loading and selecting in bulk operations 2024-01-29 14:29:50 -05:00
Zach Daniel
cf009476b2 chore: better non-atomic message on updates 2024-01-29 11:15:56 -05:00
Zach Daniel
b01168b597 improvement: use atomic create actions where possible 2024-01-29 10:37:10 -05:00
Tun Cham Roeun
c075d18f33
fix: Ash.Type.Float to support min/max constraints(#856) 2024-01-28 09:11:10 -05:00
Zach Daniel
2549c20105 chore: format 2024-01-27 10:33:17 -05:00
Zach Daniel
c9c2408401 fix: add calculations before distinct is applied in data layer query 2024-01-27 10:20:23 -05:00
Zach Daniel
f1952a5d8b chore: format 2024-01-27 09:55:11 -05:00
Zach Daniel
77c01123f0 fix: properly set index on embedded type array errors
fixes #854
2024-01-27 09:55:04 -05:00
Dmitry Maganov
c40f762eee
fix: use correct option for relationship in atomic relate_actor (#855)
---------

Co-authored-by: Zach Daniel <zachary.s.daniel@gmail.com>
2024-01-27 09:53:03 -05:00
Barnabas Jovanovics
fb3e7050a1
fix: only count resources the actor is allowed to see (#853)
* fix: only count resources the actor is allowed to see

* remove specc added by vscode
2024-01-26 13:33:03 -05:00
Zach Daniel
50b186bef9 chore: fix typespec 2024-01-25 14:22:41 -05:00
Zach Daniel
2888fea33b chore: format 2024-01-25 13:55:09 -05:00
Zach Daniel
b494c76a92 fix: deselect known forbidden fields *after* query authorization is complete 2024-01-25 11:19:52 -05:00
Zach Daniel
a68a628839 improvement: always define merge_load/4 2024-01-25 10:45:08 -05:00
Dmitry Maganov
c8b1eaa8f0
fix: soft? in destroy action options is a boolean, not an atom (#851) 2024-01-24 14:52:31 -05:00
Barnabas Jovanovics
cfec396f99
fix: load fails because of empty list instead of query (#847) 2024-01-24 11:18:51 -05:00
Zach Daniel
66295c4efb improvement: derive source_attribute_on_join_resource for many to many 2024-01-23 23:43:02 -05:00
Zach Daniel
13bff0a9cd fix: don't attempt to derive destination_attribute_on_join_resource 2024-01-23 23:38:52 -05:00
Zach Daniel
1f96993e1b chore: fix typo accessing action 2024-01-23 23:22:39 -05:00
Zach Daniel
fe3215cc07 improvement: atomic implementation for relate_actor
improvement: include a message along with the non-atomic signifier
2024-01-23 22:41:15 -05:00
Zach Daniel
3e87e6220f improvement: support transactions on bulk destroys 2024-01-23 22:10:14 -05:00
Zach Daniel
bf81f8c8a5 chore: format 2024-01-23 21:48:38 -05:00
Zach Daniel
1807523ba2 improvement: support transactions in bulk updates 2024-01-23 21:36:17 -05:00
Zach Daniel
878011bd3e improvement: count_nils/1 function
improvement: `present/absent` atomic implementation
improvement: add `atomic_ref/1` template helper
2024-01-23 19:13:14 -05:00
Jinkyou Son
2368fe82b6
improvement: Change typespec of tenant from String.t() to term() (#845) 2024-01-23 13:16:04 -05:00
Dmitry Maganov
91c34c3939
fix: join_relationship in many to many can make through optional (#846) 2024-01-23 13:15:51 -05:00
Barnabas Jovanovics
c60c5111ae
fix: make sure query has action (#844) 2024-01-23 10:42:34 -05:00
Barnabas Jovanovics
f25d7edc2f
fix: pass in actor to api.can call (#843)
* fix: pass in actor to api.can call

* only call api.can if authorize? is true
2024-01-23 09:22:19 -05:00
Nduati Kuria
d229ade9fc
Add :decimal aggregate support to DataLayer.Ets [WIP] (#841)
* Add `:decimal` aggregate support to `DataLayer.Ets`

* Add regression test

* Fix dialyzer

* Handle nils in `:avg` calculation

* Refactor nested ifs

* Refactor test
2024-01-22 16:03:34 -05:00
Barnabas Jovanovics
4ffd3cfa11
fix: do not check primary key fields in filter (#839) 2024-01-22 11:31:20 -05:00
Barnabas Jovanovics
20880691fb
fix: add page opts to context again (#838) 2024-01-22 11:29:13 -05:00
Zach Daniel
7b40917516 fix: return errors with query from read action
closes #837
2024-01-21 13:55:01 -05:00
Zach Daniel
ecf4893b64 fix: properly set defaults on upsert in mnesia 2024-01-21 12:06:16 -05:00
Zach Daniel
45be2a34eb chore: format 2024-01-21 01:27:08 -05:00
Zach Daniel
ce4c3cb2c1 fix: don't load through attributes twice, but also don't miss any 2024-01-21 01:26:22 -05:00
Zach Daniel
d013818c0a improvement: handle pkey-less resources when attaching fields
improvement: set lazy defaults when applying changeset attributes
2024-01-21 00:45:35 -05:00
Zach Daniel
a08582ed0f chore: remove IO.inspect 2024-01-20 21:50:14 -05:00
Zach Daniel
5af5702efb improvement: add prepend?: true option to add_change 2024-01-20 21:48:57 -05:00
Zach Daniel
fc522ff6c5 fix: handle errors properly from invalid loads 2024-01-20 19:39:35 -05:00
Zach Daniel
892cd7c845 fix: handle data layer calculations for missing records 2024-01-20 18:52:36 -05:00
Zach Daniel
7aaea7bd55 fix: only load through calculations in the correct order 2024-01-20 13:53:35 -05:00
Zach Daniel
aa227b8a6a chore: format 2024-01-19 21:17:22 -05:00
Zach Daniel
e646be5393 fix: properly detect cyclic dependencies in calculation runner
fix: properly annotate in-query calculations as complete for dependency calculation
2024-01-19 21:10:48 -05:00
Zach Daniel
e49f42a195 fix: fix present? and load_through bugs 2024-01-19 17:26:13 -05:00
Zach Daniel
21de0fe882 chore: fix typo 2024-01-19 16:27:36 -05:00
Zach Daniel
b654c0cd5c chore: remove IO.inspect 2024-01-19 16:26:51 -05:00
Zach Daniel
70918d42c5 chore: remove unused variables/aliases 2024-01-19 15:51:18 -05:00
Zach Daniel
1140771f74 fix: don't require pagination in incorrect cases 2024-01-19 15:50:35 -05:00
Zach Daniel
e5d78ae074 fix: get tests passing for bulk creates again 2024-01-19 10:49:26 -05:00
Zach Daniel
3db822d775 improvement: optimize embedded resource creation 2024-01-19 09:58:54 -05:00
Zach Daniel
c48cb08026
improvement: rewrite read actions to not use Ash.Engine (#836) 2024-01-19 00:05:42 -05:00
Zach Daniel
fc583b1d1e docs: remove old docs 2024-01-18 09:20:16 -05:00
Zach Daniel
4c96fdd40f fix: don't ignore stream batch size 2024-01-13 21:48:11 -05:00
Zach Daniel
6f56f3c4db chore: use ash_query as base count aggregate query 2024-01-12 14:18:01 -05:00
Zach Daniel
4200b5df50 chore: fix dialyzer/credo 2024-01-12 14:14:08 -05:00
Zach Daniel
072486bebd docs: revamp hexdocs
fix: use current read action for counting
2024-01-12 14:07:35 -05:00
Zach Daniel
0ca7393417 chore: undo typo 2024-01-12 08:40:34 -05:00
Zach Daniel
76cfe55a2a improvement: add all_tenants? option to identities 2024-01-12 08:36:06 -05:00
Zach Daniel
59e50f8dfa fix: set tenant attribute in bulk create
fixes: #830
2024-01-12 08:19:55 -05:00
Zach Daniel
db7e42713c docs: add a docstring for expr_sort 2024-01-12 07:49:58 -05:00
Jechol Lee
250c4ab8c8
improvement: support Ash.CiString in string_join (#832) 2024-01-12 00:21:30 -05:00
Jechol Lee
6b0e9fe1b3
improvement: Add code interface support in Info and Builder. (#828) 2024-01-12 00:19:51 -05:00
Zach Daniel
bbd866956d improvement: authorize each related join using join_filters 2024-01-12 00:17:37 -05:00
Rebecca Le
0a4a7c057d
feat: Allow :self as an option when requesting a relative page from a given page (#833) 2024-01-12 00:16:41 -05:00
Zach Daniel
3fac46e65b chore: fix shadowed variable 2024-01-11 17:08:05 -05:00