Zach Daniel
917131c21f
improvement: handle required but not accepted values better
2022-08-17 12:58:43 -04:00
Zach Daniel
c9f20f1488
improvement: add process-based actor, tenant and query/changeset context
...
improvement: add `always_authorize?` and `require_actor?` to api config
2022-07-19 00:49:05 -04:00
Zach Daniel
ba559936d8
improvement: code_interface optional arguments
...
test: add some load tests
2022-07-11 22:59:51 -04:00
Maciej Malecki
9707b4b7fe
Use a proper operator in the attribute_does_not_equal
validation ( #348 )
...
Previously, it was using `if current != expected do raise` while it
needs to do the opposite. Also, simplify the logic by making `update`
work in the same way as `create` (compare upcoming value - not the
original one).
2022-07-07 14:12:32 -04:00
Zach Daniel
394e2d089a
improvement: add match_other_defaults?
to attribute
2022-07-05 10:18:50 -04:00
Zach Daniel
ac4590a0ca
improvement: remove relationship writability, as it all happens through arguments now
...
improvement: repurpose `writable?` on `belongs_to` to make the attribute writable
2022-07-05 08:16:38 -04:00
Zach Daniel
f718ee94e7
improvement: new timeout error message and test it
2022-06-27 15:57:30 -04:00
Zach Daniel
ef3d1ea398
improvement: Ash.Generator
2022-06-21 21:00:47 -04:00
Zach Daniel
1d50c7aa79
improvement: add Ash.Seed
module with seed helpers
2022-06-20 17:01:28 -04:00
Zach Daniel
e19ca1ec66
fix: always return all notifications if return_notifications?: true
2022-06-09 13:52:32 -04:00
Zach Daniel
93424fd16a
fix: keyset pagination counts all rows
2022-05-31 11:56:15 -04:00
Zach Daniel
6d0cbec244
fix: fetch items closest to cursor by reversing keyset sort
2022-05-31 11:17:14 -04:00
Zach Daniel
669c98b379
fix: keyset + before results must be reversed
2022-05-31 10:34:35 -04:00
Zach Daniel
7a0cfd3ab1
improvement: better error message on invalid keyset
...
closes #336
2022-05-30 16:32:17 -04:00
Zach Daniel
02b1194062
chore: fix tests/transformers
2022-05-28 11:22:43 -04:00
Darren Black
35a19f800d
fix: Make get and get! consistent with what they raise when no record found ( #325 )
2022-05-18 21:37:04 -04:00
Zach Daniel
44a72226da
fix: don't ignore lazy load option
2022-05-18 13:11:30 -04:00
Zach Daniel
74cc7c4ad5
fix: don't ignore lexical tracker on modules in DSL
...
improvement: add manual read actions
fix: don't treat single actions of a type as primary
2022-04-28 18:08:00 -04:00
Zach Daniel
d16432750f
fix: use unpaginated read when loading
2022-04-20 19:43:41 -04:00
Zach Daniel
29ffdf9c5c
chore: WIP on tests
2022-04-20 14:38:35 -04:00
Zach Daniel
be9e564d57
chore: fix identity docs/tests
2022-04-06 12:22:34 -04:00
Zach Daniel
4fc53baf5f
improvement: add eager validate identities
...
improvement: percolate `nil` values in operators in ash expresion language (like SQL)
chore: more docs work
2022-04-06 12:00:32 -04:00
Zach Daniel
7c13322aa4
improvement: add return_destroyed?
option
2022-04-05 12:42:50 -04:00
Zach Daniel
6c523b9752
continue working on docs
2022-04-04 14:55:05 -04:00
Zach Daniel
022708c6b5
improvement: add api
option to relationships
...
improvement: make default actions and primary actions far more explicit
this begins the official 2.0.0 work
2022-04-04 01:48:37 -04:00
Zach Daniel
7ba9715f27
fix: fix hanging issue when adding engine requests
2022-03-20 01:08:39 -04:00
Zach Daniel
a53b61ddf4
feat: add Ash.Flow
...
feat: support recursive DSL entities.
improvement: unimport to avoid name collisions in nested DSLs
2022-03-15 17:42:29 -04:00
Zach Daniel
ba1b39536e
feat: manual relationships
...
fix: make the formatter safer, again
2022-02-20 22:46:39 -05:00
Zach Daniel
83b2d13910
improvement: track defaults being set
2021-11-24 19:09:39 -05:00
Zach Daniel
034ed97efe
fix: simplify and improve allow_nil checking
2021-11-09 03:26:50 -05:00
Zach Daniel
f16ffb3782
improvement!: breaking!: explicitly setting a value to nil on create no longer falls back to the default value
...
This behavior is more expected than silently switching back to the default, but it does have the potential
to cause issues for those relying on the old behavior. To get the *old* behavior, you'd want to add a change
that does something like `if is_nil(Ash.Changeset.get_attribute(changeset, :attribute)) do` to check if
it should set the value, and then uses `Ash.Changeset.change_attribute/2` to make the change
2021-11-09 00:39:19 -05:00
Zach Daniel
922c87ea85
improvement: add resource registry validation
...
fix: move related field validations to resource
fix: remove join_attributes, which didn't do anything anyway
2021-10-11 15:14:33 -04:00
Zach Daniel
ff756b72a7
improvement: deprecation!
...
A deprecation warning will be shown at compile time to illustrate
a change from listing all of your resources in an api to listing
them in a registry and connecting that registry to the api
2021-10-07 02:41:02 -04:00
Michael St Clair
8af32a0053
chore: Bring over changes committed to master branch ( #271 )
...
Co-authored-by: kernel-io <git@omnium.co>
Co-authored-by: Zach Daniel <zach@zachdaniel.dev>
Co-authored-by: kernel-io <kernel-io@users.noreply.github.com>
2021-10-01 23:27:35 -04:00
Zach Daniel
650b256b2a
test: fix tests w/ new get change
2021-09-09 02:18:26 -04:00
Zach Daniel
46f17dcc51
test: test manage_relationship on update
2021-08-05 00:46:53 -04:00
Zach Daniel
1c83f96d27
fix: allow before_action
to manage belongs_to
relationships
2021-08-04 11:35:32 -04:00
Darren Black
f3b622744d
chore: Failing test for updating a relation in a change ( #258 )
2021-08-04 10:53:55 -04:00
Zach Daniel
8e11a63e83
fix: load belongs to relationships before managing them
2021-08-03 03:26:01 -04:00
Zach Daniel
9477f0e82a
improvement: add {:arg, :name}
input for set_attribute
2021-06-25 13:51:17 -04:00
Zach Daniel
d45a9dbbfa
improvement: support calculation sorts
2021-06-05 18:11:09 -04:00
Zach Daniel
d247004610
feat: expression based calculations for filterable/sortable calculations
...
fix: aggregate authorization issues
improvement: tons of improvements across the board
2021-06-04 01:40:11 -04:00
Zach Daniel
231eeafd30
feat: expression calculations for sorting/filtering
...
improvement: small improvements/fixes across the board
2021-06-04 01:37:11 -04:00
Zach Daniel
d9debc07f1
fix: properly process managed belongs to relationships
2021-05-28 03:12:14 -04:00
Zach Daniel
4662c23f68
improvement: calculation.select/2 + select
calculation option
2021-05-20 16:42:26 -04:00
Zach Daniel
dd40b24bf9
improvement: transactions for reads, notifications from read callbacks
2021-05-14 11:25:42 -04:00
Zach Daniel
69afdfce25
improvement: utility manage_relationship_source
context
2021-05-10 18:03:36 -04:00
Frank Dugan III
a796e0d308
refactor: remove references to "side loading" ( #236 )
2021-05-09 17:24:48 -04:00
Zach Daniel
097447bf38
fix: run action changes on destroy
...
test: test manual actions
fix: pattern match manage_relationship notifications fix
2021-05-09 16:56:44 -04:00
Zach Daniel
f8604717bd
fix: limit 1 on to one side load queries
2021-05-07 01:07:01 -04:00