Zach Daniel
baba0a368a
fix: handle error return in code_interface getter
2021-05-14 01:56:36 -04:00
Zach Daniel
574f6f59a3
improvement: various managed relationship improvements
...
fix: rename `context` -> `relationship_context` to avoid conflict
feat: `on_no_match: :match` supported for to_one rels
2021-05-14 01:07:51 -04:00
Zach Daniel
968e234a31
improvement: set __source__
context for embeds
2021-05-11 00:28:26 -04:00
Zach Daniel
69afdfce25
improvement: utility manage_relationship_source
context
2021-05-10 18:03:36 -04:00
Zach Daniel
de167cea28
chore: format code
2021-05-09 17:25:40 -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
7d37f8ae3d
improvement: add manual?
option for create/update/destroy
2021-05-09 16:25:39 -04:00
Zach Daniel
3bd2686de3
improvement: ensure data layer can perform aggregates
2021-05-08 23:31:01 -04:00
Zach Daniel
78247ffa5a
improvement: support filtering on related aggregates
...
improvement: autoload aggregates used in filters
2021-05-08 22:48:05 -04:00
Zach Daniel
990aaf8147
docs: side_loading -> loading
2021-05-08 20:34:44 -04:00
Zach Daniel
be07ffc0dd
fix: don't fail on nil root filters
2021-05-08 20:06:14 -04:00
Zach Daniel
30e443c021
fix: don't raise unnecessary side load error
2021-05-07 16:31:06 -04:00
Zach Daniel
1412052ff6
improvement: fix data-based side loads
2021-05-07 11:57:59 -04:00
Zach Daniel
cb19e66fb5
fix: IsNil function to IsNil operator
2021-05-07 01:51:54 -04:00
Zach Daniel
cd023bf0a1
fix: function clause match error in not expression
2021-05-07 01:37:44 -04:00
Zach Daniel
f8604717bd
fix: limit 1 on to one side load queries
2021-05-07 01:07:01 -04:00
Zach Daniel
46fb08f085
improvement: support sorted relationships
2021-05-07 00:28:51 -04:00
Zach Daniel
fed41b5060
fix: don't consider contextual relationships as reverse relationships
2021-05-06 13:39:04 -04:00
Zach Daniel
ae5b67fcdb
fix: support not
in query expressions
2021-05-05 16:05:32 -04:00
Zach Daniel
8d15cabd2a
fix: include aggregates in count request for aggregate filters
2021-05-04 12:27:25 -04:00
Zach Daniel
d767ba513e
fix: use base_query for aritifical limit/offset when loading
2021-05-04 09:27:33 -04:00
Zach Daniel
593b111069
improvement: add read_action
option
...
feat: rework lateral joins for many to many performance boost
2021-05-03 16:21:29 -04:00
Zach Daniel
d16d2f35ce
improvement: inner later join for many to many relationships
2021-04-29 17:04:57 -04:00
Zach Daniel
3de71bc7f1
chore: fix test + compile
2021-04-28 17:43:02 -04:00
Zach Daniel
9da95e6d75
improvement: support relationship filters
2021-04-28 17:39:30 -04:00
Zach Daniel
312d19878b
improvement: add has
filter predicate
2021-04-27 13:45:23 -04:00
Zach Daniel
e11f399fc0
improvement: add :list
aggregate kind
2021-04-26 16:01:39 -04:00
Zach Daniel
9df3803492
fix: don't include NotLoaded
in manage_relationship
2021-04-25 18:35:19 -04:00
Zach Daniel
53ceb5b753
fix: compile time fixes
...
improvement: add `require_attributes` to create/update/destroy
2021-04-23 11:41:13 -04:00
Zach Daniel
dd82fcc53b
improvement: add first class support for enum types
2021-04-21 13:32:25 -04:00
Zach Daniel
64876c6e19
fix: don't consider nils for pkey matching
2021-04-21 13:32:25 -04:00
Zach Daniel
d099bc87ee
chore: format code
2021-04-18 19:51:56 -04:00
Jason Axelson
85d9e8f86c
docs: use full module name ( #230 )
...
This will make the Query docs easier to follow
2021-04-18 19:46:21 -04:00
Jason Axelson
f6fa5a98dd
improvement: Add detailed parameter checking for Api read functions ( #229 )
2021-04-18 19:45:38 -04:00
Jason Axelson
a4262965ea
chore: Enable Credo's Readability.StrictModuleLayout ( #228 )
...
Enforce layout of module parts
2021-04-18 19:41:49 -04:00
Zach Daniel
060dadeff1
fix: clearer errors when resource fails to compile
2021-04-18 16:20:05 -04:00
Zach Daniel
a75bfd4203
improvement: add list access to context
2021-04-17 19:34:28 -04:00
Zach Daniel
33ac53faa5
fix: don't preload multiplicatively
2021-04-17 18:22:20 -04:00
Vadim Tsvetkov
0d13cd8b3d
fix: Decimal casting issues on ash_postgres ( #227 )
2021-04-17 15:00:43 -04:00
Zach Daniel
b028dad1cd
improvement: add Resource.input/1
2021-04-17 13:50:55 -04:00
Zach Daniel
bd7f4f9532
fix: use items for single constraints
2021-04-16 14:16:45 -04:00
Zach Daniel
ad2772034c
fix: don't overwrite select in side_load
2021-04-15 14:57:49 -04:00
Zach Daniel
5425660752
fix: load relationships for management properly
...
fix: `fetch_key` bug in embedded types
fix: handle_indexed_maps for embedded types
2021-04-14 23:38:51 -04:00
Zach Daniel
a6b880ce86
fix: handle no key provided to NotFound
...
chore: add tests for `get!`
2021-04-14 14:18:05 -04:00
Zach Daniel
c3c0abb239
docs: update documentation
2021-04-13 17:44:48 -04:00
Zach Daniel
2f634ae36a
improvement: special provisions for casting to embedded type (e.g uuid)
...
fix: embedded cast_stored must cast all key/values
fix: ci_string constraints when `nil`
fix: manage_relationship change turns embedded resources to maps
fix: fixes for common types parsing from embedded, e.g utc_datetime_usec
2021-04-13 17:41:16 -04:00
Zach Daniel
e20ffe9636
fix: get!
should raise on nil
not {:ok, nil}
2021-04-13 16:28:01 -04:00
Zach Daniel
0ee074c176
fix: allow_nil -> allow_nil_input
2021-04-13 16:22:13 -04:00
Zach Daniel
e353ea49c3
fix: allow api.load/2 to load calculations
...
improvement: add `allow_nil_input` to create actions for api layers
improvement: add `load/1` builtin change
feat: change `get?: true` interface functions to raise on `nil`
2021-04-13 15:49:42 -04:00
Zach Daniel
567df21422
fix: always select necessary load fields for nested loads
2021-04-12 16:51:31 -04:00
Zach Daniel
3e29b4e00d
fix: always select necessary fields for side loading
2021-04-10 16:58:37 -04:00
Zach Daniel
c21e310996
fix: logic bug in selecting specific fields
2021-04-09 00:47:22 -04:00
Zach Daniel
250186a0ea
chore: update docs
2021-04-09 00:10:01 -04:00
Zach Daniel
ec57f363ed
improvement: support the datalayer selecting fields in reads
2021-04-09 00:10:01 -04:00
Zach Daniel
f454f98f3f
docs: add docs on managing relationships
2021-04-05 13:45:39 -04:00
Zach Daniel
425a1ce59e
chore: fix description
2021-04-04 16:01:37 -04:00
Michael St Clair
6805d431ac
improvement: add sum aggregate ( #221 )
2021-04-04 16:00:53 -04:00
Michael St Clair
fec77dd92f
allow specifying that calculation can't be nil ( #220 )
2021-04-04 03:11:43 -04:00
Zach Daniel
db26a1cc61
fix: update struct_field logic for latest ecto
2021-04-03 14:35:04 -04:00
Zach Daniel
7faf73097a
fix: apply proper interface operation when opts aren't passed
2021-04-02 10:21:10 -04:00
Zach Daniel
92344029d3
improvement: before_action?
on validate
, validate inline
2021-04-01 11:53:52 -04:00
Jason Axelson
274fc9ea88
chore: Misc doc updates ( #208 )
...
Co-authored-by: Zach Daniel <zachary.s.daniel@gmail.com>
2021-03-31 17:20:59 -04:00
Zach Daniel
d6ee71ce53
feat: support Ash.Query.distinct/2
...
feat: add `build/2` query preparation
fix: manage_relationships *before* after_action callbacks
2021-03-31 17:13:20 -04:00
Jason Axelson
fc705ad0a5
Documentation improvements and labeled examples ( #216 )
...
Improve documentation for calculations
Add ability to "label" examples by passing a tuple instead of just a string.
Fix some minor typos
2021-03-31 16:24:06 -04:00
Zach Daniel
29b2c821fe
fix: don't overwrite managed belongs_to
relationships
2021-03-29 14:48:42 -04:00
Zach Daniel
1d412c97cd
fix: handle on_lookup
+ on_no_match
for belongs_to
2021-03-29 14:04:53 -04:00
Zach Daniel
11d658d077
fix: fix required relationships and add test
2021-03-28 13:44:21 -04:00
Zach Daniel
e65d47d386
fix: fix required relationships
2021-03-28 13:44:21 -04:00
Zach Daniel
523f7bbc0d
fix: various managed_relationship fixes
2021-03-28 13:44:21 -04:00
Zach Daniel
2f9fafcbc7
feat: add manage relationship types
...
improvement: don't accept relationships on actions anymore
improvement: require arguments
This probably broke a lot of people's setups, but it was a
necessary change. Better to get this stuff out while we're
still beta
2021-03-25 11:33:32 -04:00
Zach Daniel
aeb1cad518
fix: add tenant metadata before after action hooks
2021-03-24 00:54:36 -04:00
Zach Daniel
8eba8d6b22
fix: support tenant
option in read interface
2021-03-24 00:24:42 -04:00
Darren Black
571eba3558
Resolve type aliases ( #207 )
2021-03-23 22:48:36 -04:00
Zach Daniel
5eec3d93b3
chore: release version v1.36.19
2021-03-22 17:37:44 -04:00
Zach Daniel
6c1108d834
fix: always return changeset when runner failed
2021-03-22 17:37:20 -04:00
Zach Daniel
44d574862b
improvement: docs + dialyzer + error improvements
2021-03-22 02:34:52 -04:00
Zach Daniel
41a91b8aa6
fix: don't require values when managing relationships
2021-03-21 23:00:17 -04:00
Zach Daniel
801778abbd
fix: Revert "fix: force_change_attributes before passing to action"
...
This reverts commit 4a0b2035b9
.
2021-03-21 22:17:41 -04:00
Zach Daniel
4a0b2035b9
fix: force_change_attributes before passing to action
2021-03-21 22:11:04 -04:00
Zach Daniel
4e8bd5bfbc
fix: exception on invalid query arguments
2021-03-21 14:19:45 -04:00
Zach Daniel
ac72c623d9
fix: allow casting strings as uuids (for embedded types)
2021-03-21 11:31:25 -04:00
Zach Daniel
ab31320e73
improvement: retain actor context from changeset
2021-03-21 11:31:01 -04:00
Jason Axelson
6c31956b56
improvement: Add float type ( #204 )
...
Also update `Ash.Type` documentation to use the float module as an
example of a custom type.
2021-03-21 00:09:27 -04:00
Zach Daniel
b155a5fb81
improvement: raise informative errors on bad inputs to for_*
2021-03-20 17:17:23 -04:00
Zach Daniel
b98650aeb7
fix: avoid exception in Changeset.new/2
for bad attribute
2021-03-20 17:16:57 -04:00
Zach Daniel
f1a6fb7418
fix: use ecto's uuid type under the hood
2021-03-20 16:27:11 -04:00
Zach Daniel
e206167f27
improvement: make Ash.Error
a public module
2021-03-19 18:23:48 -04:00
Zach Daniel
e0a368365c
improvement: docs/default value for params
2021-03-19 17:07:22 -04:00
Zach Daniel
6cfa91cc63
chore: fix lint
2021-03-18 23:37:34 -04:00
Zach Daniel
c2d121c0fe
fix: set source_field
when replacing belongs_to
relationship
2021-03-18 23:33:56 -04:00
Zach Daniel
60da316f58
fix: don't consider false
as absent value
2021-03-18 23:33:09 -04:00
Zach Daniel
0ef51ce9e6
improvement: trim whitespace in uuid
2021-03-18 23:32:56 -04:00
Zach Daniel
ba6b4202f9
fix: set argument name in manage_relationship
2021-03-18 23:32:12 -04:00
Zach Daniel
f3c85da268
improvement: improve the behavior of defaults
...
functional defaults are added at action time, others are added directly
into the changeset
2021-03-17 22:34:49 -04:00
Zach Daniel
a1c5f1d06f
fix: validate required attributes *after* before_action hooks
2021-03-16 23:09:36 -04:00
Zach Daniel
3e7b798e34
improvement: discard certain empty values for embed input
2021-03-16 21:41:19 -04:00
Zach Daniel
1b972b9598
fix: force_change attrs *after* for_create/update
2021-03-15 15:55:26 -04:00
Zach Daniel
e60acf4167
fix: pattern match errors in manage_relationships
...
fix: clean up some error cases
fix: only default accept to `public` attributes
2021-03-15 15:47:33 -04:00
Zach Daniel
f6026c6895
fix: allow_nil?: false + default interaction
2021-03-14 23:06:18 -04:00
Zach Daniel
a33e0b97b9
docs: fix redundancy in API docs
2021-03-14 18:45:10 -04:00
Zach Daniel
7eea6576a0
docs: fix dangling docs references
2021-03-14 18:29:30 -04:00
Zach Daniel
0109696d54
fix: remove the as
option
2021-03-14 17:50:11 -04:00
Zach Daniel
4df4e9a070
docs: remove interface docs
2021-03-14 17:48:39 -04:00
Jason Axelson
be56174a3d
docs: Fix some documentation warnings ( #196 )
...
i.e. warnings that appear when you run `mix docs`
Although this PR doesn't fix the majority of them, since the majority
are errors from referring to `@moduledoc false` modules in docs and typespecs.
2021-03-14 17:27:12 -04:00
Jason Axelson
3ba6b593b1
docs: Updates to the docs with a focus on the getting started docs ( #195 )
2021-03-14 17:14:53 -04:00
zimt28
a219bc0c6c
improvement: Add timestamps() attribute ( #198 )
2021-03-14 17:09:38 -04:00
Zach Daniel
5992fc00f7
docs: remove Ash from docs
2021-03-13 16:07:40 -05:00
zimt28
8ae003e382
docs: Update dsl.ex ( #193 )
2021-03-13 09:29:21 -05:00
zimt28
87390946bf
Fix documentation TOC ( #194 )
2021-03-13 09:26:57 -05:00
Zach Daniel
db47a15cf7
fix: properly validate allow_nil?: false
on update
...
fix: properly validate `allow_nil?: false` private attributes
2021-03-13 09:25:13 -05:00
Zach Daniel
3c2ffd8662
fix: set argument default on cast
2021-03-12 22:22:27 -05:00
Zach Daniel
55a35396a4
docs: add primary action docs
2021-03-12 22:22:27 -05:00
zimt28
deba10f236
docs: Fix doc ( #192 )
2021-03-12 22:21:03 -05:00
Zach Daniel
22188d4366
improvement: derive has_one destination_field
...
improvement: finalize code API logic
2021-03-11 23:45:52 -05:00
Zach Daniel
662bbf96b9
fix: fix pub_sub on update
...
improvement: add not_found_message + violation_message for relationships
chore: fix lint
2021-03-10 00:08:26 -05:00
Zach Daniel
68f358d342
improvement: support get_by_<identity>
in interface
...
fix: fix `publish_all` pub_sub notifier
improvement: support sublists in pub_sub topics
improvement: support `:_tenant` in pub_sub topics
2021-03-09 16:16:02 -05:00
Zach Daniel
f4fcfb54a2
improvement: accept tenant
in for_read
...
fix: properly filter aggregates
2021-03-09 01:19:45 -05:00
Zach Daniel
5cfa4d5bf0
improvement: update interface to accept query/changesets
2021-03-08 17:19:13 -05:00
Zach Daniel
50f893e8db
docs: update notifier docs
2021-03-08 17:19:04 -05:00
Zach Daniel
72b5a57a25
feat: functional interface on the Api module
...
feat: resource aliases
improvement: require completely unique action names
2021-03-08 00:59:32 -05:00
Zach Daniel
6e1baad6b2
fix: don't reverse sub-entities in DSL
2021-03-07 15:19:53 -05:00
Zach Daniel
e90fdad34a
feat: support Ash.Query.select/3
and Ash.Changeset.select/3
2021-03-07 14:09:51 -05:00
Zach Daniel
c2cb843be9
improvement: ignore destination field on some relationship inputs
2021-03-05 10:39:06 -05:00
Zach Daniel
80a65db150
improvement: various validation lifecycle options
...
fix: various validation lifecycle fixes
fix: don't fetch sideloads for empty data
2021-03-04 22:48:15 -05:00
Zach Daniel
be576206bd
chore: remove IO.inspect
2021-02-26 15:13:48 -05:00
Zach Daniel
2f8074ff88
fix: fix nested boolean expression optimization
2021-02-26 15:11:14 -05:00
Zach Daniel
02f7d0101b
fix: manage_relationship fixes, input + option defaults
2021-02-24 13:49:27 -05:00
Zach Daniel
e60e5bf281
fix: treat empty string as nil
in manage_relationship
...
fix: be more conservative (and more correct) when optimizing predicates
2021-02-24 11:13:35 -05:00
zimt28
e10b273ce4
Ecto.UUID -> Ash.UUID ( #188 )
2021-02-23 12:27:49 -05:00
Zach Daniel
16d60386aa
fix: fix builtin mange_relationship
change
2021-02-22 23:50:23 -05:00
Zach Daniel
53296fab8b
fix: support belongs_to relationships properly
2021-02-22 23:16:25 -05:00
Zach Daniel
f068055f63
fix: authorize if actor key is present
2021-02-22 21:34:45 -05:00
Zach Daniel
d42c778a0d
improvement: many compile time fixes via code splitting
...
feat: refactored manage_relationship options/behavior
2021-02-22 20:44:03 -05:00
zimt28
db533450ed
improvement: Guess destination_field for has many relationships ( #187 )
2021-02-15 13:32:44 -05:00
Darren Black
983a711837
improvement: Implement string length validation ( #183 )
...
Co-authored-by: Darren Black <darren@ifixsystems.com.au>
2021-02-08 18:16:32 -05:00
Zach Daniel
3739b4c33a
chore: update doc formatting
2021-02-05 19:07:47 -05:00
Zach Daniel
03b6714e6f
improvement: set_context change/preparation
...
fix: support `manage_relationship` for `belongs_to`
2021-02-05 18:56:56 -05:00
Zach Daniel
142b3bf7f9
feat: add default_context
...
feat: add `manage_relationship/4`
feat: add relationship specific context (for postgres polymorphism)
feat: add `reject` (opposite of `accept`)
improvement: set `accept` by default
2021-02-04 17:15:15 -05:00
Zach Daniel
dd26beb79b
chore: add more authorization tests
...
chore: improve authorization test helper
improvement: support `{:filter, _}` authorization results for changesets
2021-01-28 14:49:08 -05:00
Zach Daniel
0ac0be6a1f
fix: only run authorization once per request
...
fix: don't error on replacing empty relationship with empty
improvement: support `tenant` option to `get/2`
improvement: support `message` option on identities
2021-01-26 23:48:00 -05:00
Zach Daniel
1004ceb71d
feat: add after_action
for queries
...
fix: default to calculating filters on `data_layer_query`
2021-01-25 02:14:22 -05:00
Zach Daniel
8e74ff62a6
fix: remove invalid boolean expression optimization
...
improvement: make form errors work better with phoenix
this involves temporarily making embed error messages *worse*
but we can improve them as we get more usage
2021-01-24 13:47:10 -05:00
Zach Daniel
61e6b7c80c
fix: various ci_string improvements
...
feat: add `contains/2` query function
2021-01-23 22:28:56 -05:00
zimt28
63483822d6
Update transformer.ex ( #179 )
2021-01-22 20:26:23 -05:00
Zach Daniel
bb91fd4bc7
fix: add action filters in for_read/3
...
fix: don't let local runner processes mix up messages
fix: runtime filter filters properly
2021-01-22 16:41:32 -05:00
Zach Daniel
7ea9b082f1
improvement: support all string constraints for ci_string
2021-01-21 15:25:07 -05:00
Zach Daniel
f6f5d194bf
feat: freeform expressions
...
feat: validatiosn in actions
feat: query arguments
feat: add `Ash.Query.for_read/3`
feat: return changeset with API errors
feat: add case insensitive string `CiString`/`:ci_string`
feat: support `context/1` and `arg/1` in filter templates
feat: support targeting notifications with the `for` option
feat: add `ago/2` query function
feat: add basic arithmetic operators (+, *, -, /)
feat: `sensitive?` option for attributes
feat: `sensitive?` option for arguments
feat: `private` arguments, which can’t be set using `for_<action>`
feat: add `prevent_change` which will erase changes just before the changeset is committed
feat: add `match?` validation that supports a custom error message
feat: add `interval` type to support `ago/2` function
feat: add `url_encoded_binary` type
feat: add `function` type
improvement: `changing?` is now a validation
improvement: add `Transformer.get_persisted/3`
improvement: add `api` field to `Notification`
improvement: standardize errors, add `to_error_class`
improvement: use `Comp` everywhere
Improvement: use action on changeset if set by `for_<action_type>`
improvement: `action_failed?` field on change sets
improvement: remove ability for data layers to add operators (for now at least)
Improvement: Changeset.apply_attributes/2 now returns an error tuple
Improvement: add a bunch of new/informative errors
improvement: runtime filter now uses left join logic (a naive implementation of it)
improvement: support more filter templates in resources
Improvement: basic/naive type system for operators/functions
Fix: properly expand module aliases for options w/o compile time dependency
chore(engine): track changeset changes for the request with `manage_changeset?: true`
2021-01-21 15:22:50 -05:00
zimt28
6ddae6850f
improvement: Add trim/allow_empty to string type ( #171 )
2021-01-15 20:41:21 -05:00
zimt28
2a7acffabb
Always validate constraints ( #173 )
2021-01-14 10:52:18 -05:00
Zach Daniel
13ca0b2976
chore: generalize DSL tooling
2021-01-14 01:17:26 -05:00
zimt28
31cb4f4be3
improvement: Improve attribute defaults ( #164 )
2021-01-12 15:40:55 -05:00
Zach Daniel
6a26a583de
feat: Add Embedded Resources ( #170 )
2021-01-12 15:05:56 -05:00
zimt28
db6bdfcf15
improvement: Add built in decimal type ( #162 )
2021-01-09 11:58:52 -05:00
zimt28
4404da93ce
fix: Correct error message ( #163 )
2021-01-09 11:36:01 -05:00
Zach Daniel
dbf9f82802
improvement: add Ash.Sort.parse_input/2
...
fix: fix small sort bugs
2021-01-08 14:22:31 -05:00
zimt28
72ba6c4742
improvement: Add built in usec datetime type ( #160 ) ( #161 )
...
improvement!: Use usec timestamps by default
2021-01-08 12:12:37 -05:00
Zach Daniel
7ce72a7454
fix: only cast public relationships/attributes
2021-01-08 02:58:02 -05:00
Zach Daniel
8ef272b1ca
fix: allow_nil?: false
for integer_primary_key
2021-01-07 22:30:41 -05:00
Zach Daniel
424d020a7d
improvement: add for_<action>
helpers
2021-01-07 21:35:40 -05:00
Darren Black
fb5cc74329
improvement: Add built in binary type ( #156 )
...
Co-authored-by: Darren Black <darren@ifixsystems.com.au>
2021-01-06 22:46:20 -05:00
Zach Daniel
109ed9b19c
fix: the __resource__
change broke some extensions
2021-01-06 15:15:43 -05:00
Zach Daniel
6eebe33c29
fix: add back extensions/1
helper to resources
2021-01-06 14:49:30 -05:00
Zach Daniel
86236a5962
fix: lazy loaded module issues (e.g in iex)
2021-01-06 14:39:56 -05:00
Zach Daniel
a886fecfd6
improvement: optimize not-in and fix dialyzer
2020-12-31 18:39:15 -05:00
Zach Daniel
60e0dad7b6
improvement: rework filter creation + subset checking
...
This is one of the most complicated parts of Ash. In order to pass
a filter statement to the satisfiability solver that we use, we have
to first transpile a *value* statement into a *boolean* statement.
This means that we need to embed the knowledge of mutual exclusivity
wherever possible. Authorization still works if the system doesn't know
the relationship between two value statements, as it will attach
the authorization filters if its not sure. But having this in place
should represent a fairly significant optimization in many cases.
Additionally, filter creation has a set of optimizations around the
`eq` and `in` operators to combine them whlie building a boolean
statement
2020-12-31 18:39:15 -05:00
Zach Daniel
d96f54b4c8
docs: format line breaks in bullet points
2020-12-30 17:11:23 -05:00
Zach Daniel
9ebbb6e683
improvement: support autocompletion on Api funcs
2020-12-30 16:45:44 -05:00
Zach Daniel
b16cbf7303
fix: validate read action existence
2020-12-30 15:28:00 -05:00
Zach Daniel
c1767e79b2
improvement: default actions
2020-12-30 11:55:40 -05:00
Zach Daniel
2c996c8168
fix: fix compile issues, add docs
2020-12-30 01:09:02 -05:00
Zach Daniel
251d7e03df
docs: filter parsing docs
2020-12-30 00:58:34 -05:00
Zach Daniel
dcbbd21f0c
improvement: add parse_input/3
to Ash.Filter
2020-12-30 00:49:32 -05:00
Zach Daniel
31e58bfc70
improvement: describe operator types
2020-12-29 14:23:55 -05:00
Zach Daniel
9efe0355e8
fix: only accept kw list in aggregate/5
2020-12-28 19:33:01 -05:00
Zach Daniel
42deba22f0
chore: update aggregate documentation
2020-12-28 19:25:16 -05:00
Zach Daniel
1719d97d2c
chore: update docs
2020-12-28 19:20:52 -05:00
Zach Daniel
d600c55509
feat: support :first
aggregate ( #153 )
...
feat: support more sort orders
2020-12-28 19:18:01 -05:00
Zach Daniel
ada5e0a2ae
fix: separate builders + description in sections
2020-12-27 01:06:32 -05:00
Zach Daniel
28e26660a6
fix: support examples
on dsl sections
2020-12-27 01:00:24 -05:00
Zach Daniel
fb6478c52b
docs: add section examples
2020-12-27 00:49:51 -05:00
Zach Daniel
abff2e4b39
docs: update generated documentation to be single file
2020-12-26 23:54:36 -05:00
Zach Daniel
bfa4d0f924
fix: cast string argument names
2020-12-26 21:20:12 -05:00
Zach Daniel
281fced422
fix: uuid/id pkeys should allow_nil
2020-12-26 18:30:51 -05:00
Zach Daniel
744a903f24
fix: support operators on both sides for not_eq
2020-12-23 14:49:40 -05:00
Zach Daniel
2c585d28a4
fix: fix filtering for ets + mnesia data layers
2020-12-23 14:16:23 -05:00
Zach Daniel
935cbf8b26
fix: various pagination, runtime, and auth bugs
2020-12-23 12:45:49 -05:00
Zach Daniel
b94bd0ff83
fix: default pagination limit triggers pagination
2020-12-07 19:55:54 -05:00
Zach Daniel
3bc1086a0a
chore: release version v1.25.2
2020-12-05 20:39:45 -05:00
Zach Daniel
75a50ceb82
fix: resolve warning from nimbleoptions deprecation
2020-12-05 20:39:21 -05:00
Zach Daniel
2b500071f3
improvement: support confirming arguments, test allow_nil?
2020-12-01 22:50:43 -05:00
Zach Daniel
0abf03065a
feat: support arguments for actions
2020-12-01 22:09:37 -05:00
Zach Daniel
c6ea07896b
test: various testing improvements
2020-12-01 00:51:24 -05:00
Zach Daniel
b7896dbf8f
fix: various build fixes
2020-12-01 00:45:15 -05:00
Zach Daniel
0e3333c05f
chore: update tests
2020-11-30 23:23:34 -05:00
Zach Daniel
cb7caa51a0
fix: various small utility fixes
2020-11-30 23:15:37 -05:00
Kyle Nguyen
0f47d808e3
fix: do not require private attributes in create api ( #143 )
2020-11-08 11:49:03 -05:00
Zach Daniel
c493c1616b
feat: add uuid_primary_key/2 and integer_primary_key/2
2020-11-07 00:31:13 -05:00
Zach Daniel
8fd26d66ca
fix: derived belongs_to attributes are required if their parent is
2020-11-07 00:09:04 -05:00
Zach Daniel
375123e653
fix: default create/update timestamps to private?
2020-11-05 21:27:11 -05:00
Zach Daniel
262be96ed3
fix: set proper pagination defaults
2020-11-05 21:05:32 -05:00
Zach Daniel
05a79c2dbd
chore: add built_in? ash type helper
2020-11-03 13:58:57 -05:00
Zach Daniel
bd190f91f2
docs: update docs
2020-11-03 00:43:57 -05:00
Kyle Nguyen
c732099240
feat: Add property: private? for attributes, relationships, aggregates, and calculations ( #140 )
2020-11-02 15:33:14 -05:00
Zach Daniel
46efda4db4
improvement: support specifying that some options are modules
2020-10-29 00:14:01 -04:00
Zach Daniel
2333d01ddf
feat: multitenancy! and tons of various fixes ( #139 )
2020-10-28 01:14:17 -04:00
Zach Daniel
fcf2f2c7ce
chore: fix tests/new behavior
2020-10-21 00:57:27 -04:00
Zach Daniel
ef66219780
fix: better not_found error handling
2020-10-21 00:52:47 -04:00
Zach Daniel
721555f232
fix: remove unused code
2020-10-20 18:53:12 -04:00
Zach Daniel
1bf2058233
fix: various fixes and improvements
2020-10-20 18:50:11 -04:00
A.shalaby
9020d3b36d
feat: Optimize relashionship records replacement ( #135 )
...
Co-authored-by: Zach Daniel <zachary.s.daniel@gmail.com>
2020-10-19 19:10:05 -04:00
Zach Daniel
ad24164e2e
fix: invalid function arg parsing w/ ref
2020-10-17 19:21:25 -04:00
Zach Daniel
59063ff928
chore: docs + def -> defp
2020-10-17 13:35:09 -04:00
Zach Daniel
b0bfec7e0f
feat: pubsub notifier ( #134 )
2020-10-17 13:06:27 -04:00
Zach Daniel
de474db4a6
fix: engine hanging on parallel requests
2020-10-16 01:47:34 -04:00
Zach Daniel
eb25d5b826
feat: add notifiers ( #133 )
2020-10-15 00:54:02 -04:00
Digit
78861b6a51
feat: Add :one_of
constraint to the Atom type ( #130 )
2020-10-13 10:29:57 -04:00
Maarten van Vliet
57c0c7294e
docs: Switch titles to match contents of paragraphs ( #132 )
2020-10-12 10:38:11 -04:00
Zach Daniel
7d4212b5bf
fix: bugs with keyset pagination
2020-10-12 02:35:12 -04:00
Zach Daniel
f8fadc67e6
feat: Add pagination ( #131 )
2020-10-11 23:55:47 -04:00
Zach Daniel
bd6334385f
fix: parse functions properly
2020-10-09 20:59:43 -04:00
Zach Daniel
3c6c60f594
fix: fix dialyzer
2020-10-09 20:56:15 -04:00
Zach Daniel
084857bf83
fix: fix certain versions of elixir having issues
2020-10-09 20:44:15 -04:00
Zach Daniel
cd0998bb92
chore: fix CI + update docs
2020-10-09 10:13:44 -04:00
Zach Daniel
6392361f72
chore: fix lint
2020-10-08 01:59:02 -04:00
Zach Daniel
d928ca5f6e
feat: expression based filter
2020-10-08 01:22:55 -04:00
Zach Daniel
0c216c284d
Module updates ( #129 )
2020-10-07 01:17:17 -04:00
Zach Daniel
114e64f8b4
feat: filter rewrite to op/function/ref based structure
2020-10-06 00:58:06 -04:00
WolfDan
1d6066f247
fix: add module name to errors ( #127 )
2020-10-05 10:40:22 -04:00
A.shalaby
a2f5db08f4
fix: Fix composite key in changeset functions ( #125 )
...
Co-authored-by: Zach Daniel <zachary.s.daniel@gmail.com>
2020-10-03 02:37:17 -04:00
A.shalaby
0f805803e1
test: add changeset_test ( #123 )
...
Co-authored-by: Zach Daniel <zachary.s.daniel@gmail.com>
2020-10-02 14:48:49 -04:00
Zach Daniel
bce4f910f5
docs: update dsl extension docs
2020-09-25 14:34:31 -04:00
mario
6d719516c2
feat: added description for missing resources ( #117 )
2020-09-25 08:20:58 -04:00
Zach Daniel
2fae5e1ec5
chore: remove typespec temporarily to fix dialyzer
2020-09-25 00:46:10 -04:00
Zach Daniel
9d9f5aab51
chore: fix dialyzer
2020-09-25 00:42:32 -04:00
Zach Daniel
657dd4bfc2
docs: write up some engine docs
2020-09-25 00:36:50 -04:00
Zach Daniel
d1d84422ed
fix: typespec/error message improvements
2020-09-23 21:06:12 -04:00
mario
2efcf12818
feat: descriptions for actions and relationships ( #116 )
2020-09-22 17:48:46 -04:00
Zach Daniel
ca66133777
docs: organize modules/builtins docs
2020-09-22 11:22:21 -04:00
Zach Daniel
6df3f4eb17
docs: fix ash_graphql link
2020-09-22 11:02:21 -04:00
Zach Daniel
d10ae9bad1
docs: update query/authorization docs
2020-09-22 10:51:15 -04:00
Zach Daniel
e75ae597d2
docs: add links to extensions
2020-09-21 18:33:44 -04:00
Jan Pieper
348a814fc6
fix: correct comment in UUID type ( #115 )
2020-09-21 17:51:58 -04:00
Zach Daniel
448b8f06a0
docs: add example application
2020-09-19 21:54:24 -04:00
Zach Daniel
f41cc77549
Various Improvements ( #113 )
2020-09-19 15:46:34 -04:00
Zach Daniel
5552ce1f83
fix: remove delegate data layer ( #112 )
...
The delegation data layer was the wrong tactic. We should model
shared behavior as composition, not inheritance (which is essentially
what the delegation data layer turned into)
2020-09-06 01:16:21 -04:00
Zach Daniel
c75ae780d7
fix: delete process/global storage properly
2020-09-05 23:14:01 -04:00
Zach Daniel
28d2d9b363
fix: Fix identities ( #110 )
2020-09-04 00:59:32 -04:00
Zach Daniel
243c9f05a2
feat: required belongs_to relationships ( #107 )
...
fix: various delegate data layer improvements
fix: engine halting issues
feat: support filter templates on read actions
feat: builtin concat calculation
2020-09-01 23:34:55 -04:00
Zach Daniel
9a3962d47a
feat: add changes to actions ( #106 )
2020-08-30 03:15:16 -04:00
Zach Daniel
a58367414d
feat: add accept
option to create/update actions ( #105 )
2020-08-28 02:58:03 -04:00
Zach Daniel
c5c51ebed9
chore: fix build issues
2020-08-27 21:14:19 -04:00
Zach Daniel
bc0853eb2d
fix: resolve engine deadlocks
2020-08-27 21:00:25 -04:00
Zach Daniel
157752294c
fix: support nested lists of filters
2020-08-27 20:59:36 -04:00
Zach Daniel
9f9935dead
feat: add Ash.NotLoaded
back, simpler defaults
2020-08-27 18:36:28 -04:00
Zach Daniel
5d37709cb2
feat: improve errors (add stacktraces)
2020-08-27 18:35:31 -04:00
Zach Daniel
036e0c2a88
feat: add one_of
validation
2020-08-27 00:30:09 -04:00
Zach Daniel
8ce58a6187
feat: add simple
data layer, and make it default
2020-08-27 00:29:50 -04:00
Zach Daniel
b019ba8eca
fix: allow anonymous functions in the dsl
2020-08-26 17:45:49 -04:00
Zach Daniel
acd9402829
fix: only update filter when its a filter
2020-08-26 13:55:11 -04:00
Zach Daniel
394ed448da
fix: set resource in delegation query
2020-08-26 13:53:27 -04:00
Zach Daniel
3373d72899
feat: support inner lateral joins ( #100 )
...
Specifically, this allows us to behave correctly when loading
relationships w/ a limit or offset
2020-08-26 00:16:08 -04:00
Mike Binns
846f381d08
ci: Improve CI Elixir/Erlang matrix ( #96 )
2020-08-25 15:39:40 -04:00
Zach Daniel
385ec0b423
feat: add identities, to enhance get
calls ( #99 )
2020-08-25 02:06:01 -04:00
Zach Daniel
9d4fc1e2a0
docs: finish docs on calculations
2020-08-25 01:10:17 -04:00
Zach Daniel
3b1bde6a39
fix: spec + dialyzer fixes
2020-08-25 01:05:29 -04:00
Zach Daniel
9ed9f82087
fix: spec mix task run as no_return
2020-08-25 00:52:27 -04:00
Zach Daniel
2ef877ee53
feat: initial calculation support ( #98 )
...
* feat: initial calculation support
2020-08-25 00:49:07 -04:00
Zach Daniel
a56fdbb3ff
feat: Add delegate datalayer ( #97 )
2020-08-22 18:44:05 -04:00
Mike Binns
90af0b0357
Add is_nil support to Ets/Mnesia ( #94 )
2020-08-20 21:27:32 -04:00
Zach Daniel
7b1c735ff3
feat: various custom datalayer features
2020-08-19 00:50:35 -04:00
Zach Daniel
c14e2e865d
fix(extensions): resolve duplicate nested entities
2020-08-18 01:49:35 -04:00
Zach Daniel
fdc7ba463f
feat: streamline load
by accepting ok/error
2020-08-18 01:49:22 -04:00
Zach Daniel
fa480b20df
fix: use Ecto's NotLoaded for assocs for now
2020-08-18 01:49:01 -04:00
Zach Daniel
06ad91d4c5
fix: create/update typespecs were wrong
2020-08-18 01:48:41 -04:00
Zach Daniel
0e373f69a6
fix: add lexical scope to DSL for imports
2020-08-17 02:42:59 -04:00
Zach Daniel
fdc427f20f
fix: crash on entity w/ no options specified
2020-08-17 02:42:47 -04:00
Zach Daniel
be37e13ab0
fix: convert eq: nil
into is_nil, fix credo
2020-08-17 02:42:27 -04:00
Zach Daniel
66c394e601
feat: add is_nil
predicate
2020-08-17 02:36:15 -04:00
Zach Daniel
b617f45fc8
fix: various fixes for graphql extension
2020-08-13 17:49:33 -04:00
Zach Daniel
e83785c8d8
chore: update docs
2020-08-10 13:47:49 -04:00
Zach Daniel
dd2162e4dd
fix: load
typespecs
2020-08-10 13:43:58 -04:00
Zach Daniel
b7073e3098
chore: update docs on aggregates
2020-08-10 03:51:28 -04:00
Zach Daniel
dcf6680573
fix: various fixes from json:api integration
2020-08-10 03:36:52 -04:00
Zach Daniel
be74d1e7eb
feat: add named aggregates
2020-08-08 16:17:52 -04:00
Zach Daniel
a45efc79dd
fix: scope data layer feature to aggregate kind
2020-07-24 19:26:51 -04:00
Zach Daniel
bd4ce75a23
chore: add notice to docs
2020-07-24 17:55:19 -04:00
Zach Daniel
53fb534865
feat: group metadata by path and async?: false
2020-07-24 17:13:45 -04:00
Zach Daniel
f7c9814ef9
feat: run aggregates async if not in query
2020-07-24 02:20:44 -04:00
Zach Daniel
156b89b0fb
fix: incorrect callback
2020-07-23 01:36:54 -04:00
Zach Daniel
5065306b3c
fix: comment out aggregate splitting code for now
2020-07-23 01:18:37 -04:00
Zach Daniel
28c236452d
feat: aggregations!
2020-07-23 01:09:59 -04:00
Zach Daniel
fbd19a32df
fix: simplify dsl building using on_load
2020-07-20 19:16:24 -04:00
Zach Daniel
9d51ec6300
feat: allow editing join association attributes
2020-07-16 19:17:01 -04:00
Zach Daniel
b549337dc2
fix: use proper errors everywhere
2020-07-15 17:06:27 -04:00
Zach Daniel
28982f03fd
feat: various small refactors + validations
2020-07-15 01:38:42 -04:00
Zach Daniel
129ab24a1f
fix: changeset + set_state issues
2020-07-13 00:37:02 -04:00
Zach Daniel
2cf41b966e
feat: refactor changes into changesets
2020-07-12 02:25:53 -04:00
Zach Daniel
d00ba360f2
chore: fix lint
2020-07-09 03:25:40 -04:00
Zach Daniel
5502aea126
fix: small fixes
2020-07-09 03:23:21 -04:00
Zach Daniel
253b1c2e7a
feat: lots of docs, simplify query generation
2020-07-09 02:55:09 -04:00
Zach Daniel
41b8c94964
feat: validate relationship keys
2020-07-09 00:20:32 -04:00
Zach Daniel
482433a28c
docs: update latest docs
2020-07-07 20:30:49 -04:00
Zach Daniel
ea42601a4e
chore: add getting started guide
2020-07-07 19:28:31 -04:00
Zach Daniel
053b3e4a1c
fix!: remove initial subscriptions pass
2020-07-07 10:38:28 -04:00
Zach Daniel
3b1e263fe3
feat: general improvements
2020-07-07 10:19:03 -04:00
Zach Daniel
ac1628b81d
fix: in predicate + engine errors
2020-07-04 01:45:28 -04:00
Zach Daniel
2c6ed51661
docs: add short type references
2020-07-01 09:37:42 -04:00
Zach Daniel
e90d509ccb
fix!: remove atom type, add docs
2020-07-01 00:45:15 -04:00
Zach Daniel
b5120a42b5
feat: list types
2020-06-30 23:57:24 -04:00
Zach Daniel
05848d5f4a
feat: refactor ash types to modules, add constraints
2020-06-30 17:29:43 -04:00
Zach Daniel
2228617e8f
fix: remove benchee, ensure mnesia always uses transactions
2020-06-30 12:21:08 -04:00
Zach Daniel
e565d753ce
fix: stop gitignoring the mnesia data layer
2020-06-30 09:58:04 -04:00
Zach Daniel
e1f6d7bca0
fix: try to fix ash.formatter task
2020-06-30 09:53:37 -04:00
Zach Daniel
24d66b3f39
fix: test/improve parallelizable requests
2020-06-30 01:19:20 -04:00
Zach Daniel
8438795f96
fix: require that resources have primary keys
2020-06-30 00:31:07 -04:00
Zach Daniel
807b16e268
fix: move to simpler transaction logic
2020-06-29 17:42:01 -04:00
Zach Daniel
05f2d9ad64
WIP
2020-06-29 17:20:29 -04:00
Zach Daniel
c39709761d
fix: fix tests/credo
2020-06-28 23:43:35 -04:00
Zach Daniel
b5c3f7acc4
fix: fix tests, add tests for gt/lt filters
2020-06-28 23:36:38 -04:00
Zach Daniel
473c49577c
feat: add less_than and greater_than filter support
2020-06-28 23:22:41 -04:00
Zach Daniel
22eeb29d8f
feat: validate all related resources in API
2020-06-28 23:00:56 -04:00
Zach Daniel
1cd586a59c
feat: cross data layer filters
2020-06-28 21:31:54 -04:00
Zach Daniel
30319f31f1
feat: cross data layer filtering
2020-06-28 02:20:33 -04:00
Zach Daniel
564d095f2a
feat: section option configuration
2020-06-27 14:24:54 -04:00
Zach Daniel
8c1886df10
fix: set persistent_term properly
2020-06-26 18:24:18 -04:00
Zach Daniel
a6916e4c44
chore: switch from on_load to application start
2020-06-26 18:20:02 -04:00
Zach Daniel
ec69ac7117
fix: use authorization filters in side loads
2020-06-22 02:11:59 -04:00
Zach Daniel
c89acce635
fix: remove reverse relationships
2020-06-22 00:34:44 -04:00
Zach Daniel
e6e9f88710
fix: many filter/side load fixes/improvements
2020-06-21 23:26:47 -04:00
Zach Daniel
cf199b70e6
fix: allow side_load option on create/update
2020-06-20 19:41:57 -04:00
Zach Daniel
d95e984193
fix: raised error message contents
2020-06-18 23:53:46 -04:00
Zach Daniel
846f842d98
fix: parent error messages
2020-06-18 23:43:06 -04:00
Zach Daniel
2742a8f1f1
fix: relationship path clause
2020-06-18 23:08:55 -04:00
Zach Daniel
1033677259
feat: boolean filter refactor ( #78 )
...
feat: predicate behaviour
2020-06-18 22:59:30 -04:00
Zach Daniel
2a4fc7ebb1
fix: consider nested entities in ash.formatter
2020-06-15 03:28:47 -04:00
Zach Daniel
a97927fa2e
fix: compile application in ash.formatter task
2020-06-15 03:02:33 -04:00
Zach Daniel
b6101a4dff
feat: extension section module imports, generated .formatter.exs ( #71 )
2020-06-15 02:40:33 -04:00
Zach Daniel
c776da9237
chore: release version v0.4.0
2020-06-14 02:42:44 -04:00
Zach Daniel
6dc699d8a6
feat: rebuild DSL inner workings for extensibility ( #70 )
2020-06-14 02:39:11 -04:00
Zach Daniel
5f2019027d
improvement: add date
support ( #68 )
2020-06-12 22:39:20 -04:00
Zach Daniel
0092af6a94
fix: dialyzer warnings
2020-06-09 01:13:20 -04:00
Zach Daniel
2daa72e165
feat: add after_compile
and validate primary key
2020-06-07 03:30:38 -04:00
Zach Daniel
f7912b54fb
docs: abstract shared relationship DSL options
2020-06-07 03:18:49 -04:00
Zach Daniel
ff2e342741
fix: honor the authorize?
flag
2020-06-05 14:35:02 -04:00
Zach Daniel
1cc143e7fa
test: adjust tests for removal of name/type (and defaults)
2020-06-04 23:34:44 -04:00
Zach Daniel
d5fc20f07c
fix: account for action/actor args to interface
2020-06-04 23:22:00 -04:00
Zach Daniel
1b94ca891c
fix: remove the rest of the deps on name/type
2020-06-04 23:19:23 -04:00
Zach Daniel
651872a67f
fix: add resource_module?/1
back to Ash
2020-06-04 22:43:51 -04:00
Zach Daniel
ecbdaa1abb
feat: remove name/type from ash core
2020-06-04 22:43:30 -04:00
Zach Daniel
71c49cb215
feat: use option schemas in the interface ( #30 )
2020-06-04 21:54:55 -04:00
Zach Daniel
68d0ba44e7
fix: references to error handling code
2020-06-04 02:21:20 -04:00
Zach Daniel
797792f947
docs: update documentation
2020-06-04 02:16:59 -04:00
Zach Daniel
6b73e855a1
docs: make most moduledocs private
2020-06-02 23:51:39 -04:00
Zach Daniel
84422d1f98
fix: fix empty filter checks
2020-06-02 18:24:19 -04:00
Zach Daniel
f42462408a
docs: fix unclosed backquotes
2020-06-02 02:05:06 -04:00
Zach Daniel
7c987b32bb
chore: wrap up remaining lint errors
2020-06-02 01:47:25 -04:00
Zach Daniel
451d4d62f0
fix: typo in function name
2020-06-02 00:44:57 -04:00
Zach Daniel
9ac266e6c0
chore: move #TODO comments into readme for now
2020-06-02 00:41:07 -04:00
Zach Daniel
ebf6c8ffe3
chore: address refactor opportunity lint errors
2020-06-02 00:24:08 -04:00
Zach Daniel
21fae1aed1
chore: address sobelow warnings
2020-06-01 23:37:50 -04:00
Zach Daniel
9a0be3a072
chore: fix dialyzer build errors
2020-06-01 23:23:50 -04:00
Zach Daniel
b5c2fe6cf6
chore: remove ashton in favor of nimble_options
2020-06-01 01:14:23 -04:00
Zach Daniel
525e3ae268
fix: combine filters properly
2020-06-01 01:02:33 -04:00
Zach Daniel
6fbfb8b2bc
fix: dependencies
2020-06-01 00:51:02 -04:00
Zach Daniel
908bbbcdb8
fix: honor returned check filters
2020-05-31 03:14:30 -04:00
Zach Daniel
377319e881
feat: add data layer custom filters
2020-05-31 01:52:00 -04:00
Zach Daniel
7820adeebe
WIP
2020-05-30 23:55:45 -04:00
Zach Daniel
9dca201f79
WIP
2020-05-30 23:55:01 -04:00
Zach Daniel
fdb6f055fa
WIP
2020-05-30 03:29:27 -04:00
Zach Daniel
5912595208
fix: side_load queries
2020-05-27 22:31:40 -04:00
Zach Daniel
e05b6b55d6
fix: many to many relationship side loads
2020-05-27 09:42:05 -04:00
Zach Daniel
65aa5215fe
finalize engine refactor
2020-05-27 00:29:54 -04:00
Zach Daniel
9d76bb1d9b
WIP
2020-05-27 00:29:54 -04:00
Zach Daniel
227532db29
WIP
2020-05-27 00:29:54 -04:00
Zach Daniel
1ed9d3c5fa
WIP
2020-05-27 00:29:54 -04:00
Zach Daniel
b876f87e23
WIP
2020-05-27 00:29:53 -04:00
Zach Daniel
b174bc6433
WIP: start work on engine-2
2020-05-27 00:29:53 -04:00
Zach Daniel
2f37228ab4
fix: protect against double data resolution
2020-05-15 02:54:46 -04:00
Zach Daniel
ad8f2c0826
WIP
2020-05-15 02:29:12 -04:00
Zach Daniel
08d373c207
WIP
2020-05-15 02:27:13 -04:00
Zach Daniel
8a2319cb41
WIP
2020-05-15 02:04:14 -04:00
Zach Daniel
a594747515
WIP
2020-05-15 02:02:46 -04:00
Zach Daniel
2e283aa493
WIP
2020-05-15 01:58:07 -04:00
Zach Daniel
eb655c6d4f
WIP
2020-05-15 01:56:03 -04:00
Zach Daniel
3b10b1ced4
WIP
2020-05-15 01:51:29 -04:00
Zach Daniel
f33841be7f
WIP
2020-05-15 01:49:10 -04:00
Zach Daniel
0b5c362ed1
WIP
2020-05-15 01:44:13 -04:00
Zach Daniel
482dadf1eb
WIP
2020-05-15 01:42:24 -04:00
Zach Daniel
0af7c5fdb9
WIP
2020-05-15 01:36:46 -04:00
Zach Daniel
d44d372902
WIP
2020-05-15 01:31:58 -04:00
Zach Daniel
a1f33d7249
WIP
2020-05-15 01:08:36 -04:00
Zach Daniel
5cc928f192
WIP
2020-05-15 01:06:51 -04:00
Zach Daniel
ccf30bafac
WIP
2020-05-15 01:03:43 -04:00
Zach Daniel
26cd1c4af9
WIP
2020-05-15 00:59:30 -04:00
Zach Daniel
548bc41145
WIP
2020-05-15 00:44:37 -04:00
Zach Daniel
bb8202d66a
WIP
2020-05-15 00:42:43 -04:00
Zach Daniel
099330559d
fix: various small improvements
2020-05-15 00:29:47 -04:00
Zach Daniel
04a53e585b
feat: various fixes, upsert, relationship changes
2020-05-14 18:01:34 -04:00
Zach Daniel
fd4dce3b93
fix: various bugs
2020-05-13 13:52:08 -04:00