Commit graph

354 commits

Author SHA1 Message Date
Zach Daniel
efcc1a651b improvement: move many internals out to AshSql package 2024-03-31 22:38:12 -04:00
Zach Daniel
3647fc42ee improvement: add default implementation for pg_version, and rename to min_pg_version 2024-03-27 19:20:49 -04:00
Zach Daniel
8a505607ab ci: set PG_VERSION better for CI 2024-03-27 17:46:51 -04:00
Zach Daniel
7bd63ffcaf test: update tests with migration changes 2024-03-27 17:28:28 -04:00
Zach Daniel
3ad3f5f5d6 chore: update ash, resources and an error message 2024-03-27 17:03:16 -04:00
Zach Daniel
37cc01957d
improvement!: 3.0 (#227)
* WIP

* chore: fix mix.lock merge issues

* improvement: upgrade to 3.0

* chore: remove `repo.to_tenant`

* chore: continue removal of unnecessary helper

* chore: use `Ash.ToTenant`
2024-03-27 16:52:28 -04:00
Zach Daniel
5a513a82c2 fix: handle fully fleshed out aggregate fields 2024-03-22 02:13:07 -04:00
Zach Daniel
a0e2693998 fix: don't fail on aggregate query generation
fixes #225
2024-03-20 18:37:38 -04:00
Jinkyou Son
b60f680ab3
Fix: undo default of nulls_distinct option to true (#223) 2024-03-20 12:01:53 -04:00
Jinkyou Son
e27ce5e074
improvement: Add nulls_distinct option to CustomIndex (#221) 2024-03-12 20:22:34 -04:00
Zach Daniel
40481a17a0 fix: prevent ecto/pg from getting confused about the type of maps 2024-03-06 08:23:56 -05:00
Zach Daniel
43deb00e36 fix: properly handle multiple sorts in aggregate 2024-02-29 13:42:42 -05:00
Zach Daniel
f716e3bb69 fix: simplify(and fix) exists subquery generation 2024-02-28 22:55:53 -05:00
Zach Daniel
23dd650100 test: test improvements, regression test 2024-02-28 21:24:31 -05:00
Zach Daniel
b6b2dd1dc6 fix: handle more subquery filter cases for aggregates 2024-02-24 20:20:52 -05:00
Zach Daniel
f6d029d85b improvement: add test for aggregates 2024-02-24 18:08:00 -05:00
Zach Daniel
37cb3825f1 fix: properly handle complex types in lists 2024-02-23 20:53:19 -05:00
Zach Daniel
c185ba80e8 fix: ensure select is properly set on delete_all 2024-02-21 16:37:28 -05:00
Zach Daniel
d0041ce88d improvement: optimize aggregate query filtering 2024-02-21 14:03:28 -05:00
Zach Daniel
2b91ebe488 fix: ensure proper return value for single aggregate runs 2024-02-21 09:56:33 -05:00
Zach Daniel
b5b1077032 chore: fix recursion error in to_many_path? 2024-02-20 22:13:23 -05:00
Zach Daniel
38d1beb0d8 fix: properly handle to_many joins in aggregates
fix: honor aggregate query filters
2024-02-20 18:38:35 -05:00
Zach Daniel
557bc6019c fix: handle non-inner joins in delete_all
fix: handle non-inner joins in update
2024-02-19 13:29:41 -05:00
Zach Daniel
7cbe482fc9 fix: don't update_all or delete_all with order_by 2024-02-19 12:40:26 -05:00
Zach Daniel
0979756b0b fix: handle updating from queries w/ non-inner initial joins 2024-02-19 11:56:48 -05:00
Minsub Kim
96c367689d
test: filter by has_one from_many? (#209) 2024-02-19 09:04:14 -05:00
Zach Daniel
3fd5a7a907 test: add some tests for atomics 2024-02-15 10:54:20 -05:00
Zach Daniel
2d18c9cbeb fix: properly alter renaming attributes in migration generator
fixes #207
2024-02-15 09:23:48 -05:00
Zach Daniel
256b4d0b9a test: add test for filter policy on bulk actions 2024-02-14 17:54:28 -05:00
Zach Daniel
7a4fe87561 chore: update ash, add tests 2024-02-14 13:56:58 -05:00
Zach Daniel
3146d5f97d chore: update ash, add tests for field policies 2024-02-14 11:04:06 -05:00
Barnabas Jovanovics
be15759de0
test: add test to show problem with field policies in filters (#206) 2024-02-14 10:25:25 -05:00
Zach Daniel
6d0a29f45c chore: credo 2024-02-12 10:24:59 -05:00
Zach Daniel
03b630396c test: update tests to demonstrate streaming update 2024-02-10 18:31:34 -05:00
Barnabas Jovanovics
3f7bdb8fc1
test: add test for parent in relationship filter (#203) 2024-02-06 10:04:35 -05:00
Zach Daniel
b018262637 test: add new test verifying batch destroy behavior
chore: add sobelow warning skip
2024-02-01 13:09:06 -05:00
Zach Daniel
d71cb81792 improvement: handle if select is present on query 2024-01-31 16:30:23 -05:00
Zach Daniel
6ceac063f8 chore: credo 2024-01-30 20:55:13 -05:00
Alan Heywood
745a3b8264
test: add failing test to demo bug with changeset loading related data (#200) 2024-01-30 20:04:42 -05:00
Zach Daniel
5006a195bd test: add test reproducing ash core fix for expression calculations 2024-01-30 16:39:17 -05:00
Zach Daniel
82dd14b953 chore: credo 2024-01-30 15:32:50 -05:00
Zach Daniel
8c43deea9b fix: properly build subqueries when required for relationship queries 2024-01-30 15:21:59 -05:00
Barnabas Jovanovics
fbd41407c3
test: add test that shows subquery error (#199) 2024-01-30 13:17:40 -05:00
Zach Daniel
ffafa6c9f5 improvement: support Ash.Changeset.OriginalDataNotAvailable 2024-01-30 12:49:52 -05:00
Alan Heywood
aad5f9a182
test: add failing test to demonstrate bug with manual updates (#198) 2024-01-30 09:26:39 -05:00
Zach Daniel
4930a69b95 improvement: support count_nils expression 2024-01-29 17:17:32 -05:00
Ryan
64e117603a
fix: Correct the matching used in building a distinct expression (#196) 2024-01-26 15:04:54 -05:00
Dmitry Maganov
8f3100a381
fix: keep fields of custom_index in format that they were provided (#195) 2024-01-22 11:32:34 -05:00
Zach Daniel
f20a07f54b improvement: support latest ash changes 2024-01-19 00:12:50 -05:00
Zach Daniel
97847da734 fix: include explicit schema in snapshot folder name
closes #193
2024-01-16 23:44:49 -05:00
Zach Daniel
b93b1d722b improvement: support all_tenants? option for identities
improvement: support `all_tenants?` option for custom indexes
2024-01-12 10:11:16 -05:00
Zach Daniel
f3ccb78f86 improvement: support join_filters on aggregates
fix: subquery relationships that have filters
2024-01-11 22:30:35 -05:00
Zach Daniel
9b5acd98f7 chore: credo, dialyzer, format 2024-01-10 08:34:23 -05:00
Eduardo B. Alexandre
d5d312de56 feat: Add unit test to check lateral joins
with custom schemas and tables
2024-01-10 08:19:10 -05:00
Zach Daniel
76e23b186f test: add some tests for aggregate refs in calcs 2024-01-10 07:22:25 -05:00
Zach Daniel
c0c9621534 improvement: support new bulk operations
fix: support encoding errors with expressions in them
2023-12-31 08:40:30 -05:00
Zach Daniel
2a2fd30e33 improvement: support new return_query/2 callback
improvement: support new `:no_rollback` error signal
2023-12-29 21:49:34 -05:00
Zach Daniel
89a4363c1f improvement: support directly referencing aggregates from aggregates 2023-12-23 10:39:54 -05:00
Zach Daniel
68e2f74fe0 improvement: support aggregates using other aggregates
fix: various fixes for unnecessary aggregate additions
test: added a test to confirm context based multitenancy behavior
2023-12-22 21:14:40 -05:00
Zach Daniel
9bc5b2af9f improvement: support string_length and string_trim 2023-12-21 19:52:29 -05:00
Zach Daniel
9ca9272426 improvement: only start savepoints when necessary 2023-12-21 16:56:57 -05:00
Zach Daniel
61d229c685 fix: use lateral joins when joining to subquery w/ parent reference 2023-12-19 18:15:00 -05:00
Barnabas Jovanovics
c916034931
fix: replace upsert field with source in EXCLUDED fragment (#187) 2023-12-19 15:05:05 +01:00
Zach Daniel
ac980a2163 chore: fix error expression 2023-12-15 08:48:20 -05:00
Zach Daniel
407a7163ed improvement: support for error/2 expression 2023-12-14 17:10:11 -05:00
Zach Daniel
07499b6ec0 fix: use maps for composite_type instead of tuples 2023-11-29 10:27:10 -05:00
Zach Daniel
74ef0aa6c3 improvement: support composite_type/2 expression 2023-11-29 09:57:10 -05:00
Zach Daniel
592e79a2f9 improvement: support composite types 2023-11-27 17:47:54 -05:00
Zach Daniel
c53f1733be chore: format 2023-11-22 14:29:47 -05:00
Barnabas Jovanovics
179cee4b24
chore: add test (#184) 2023-11-22 13:37:54 -05:00
Zach Daniel
b133d63edd chore: remove unused aliases 2023-11-21 09:33:29 -05:00
Zach Daniel
3fc3740dde chore: comment out test for now 2023-11-21 09:26:02 -05:00
Daniel Newman
6cc36c9684 Remove test duplicate from merge conflict 2023-11-21 09:25:24 -05:00
Daniel Newman
ff6c038757 Error using calc to agg to calc to agg 2023-11-21 09:25:24 -05:00
Daniel Newman
8caad3bf7d Adjust tests for updates from upstream 2023-11-21 09:25:24 -05:00
Riccardo Binetti
021b7e4233
improvement: allow specifying multi-column foreign keys (#180)
* improvement: add match_with option on references
* improvement: add match_type option on references
2023-11-20 16:52:50 -05:00
Zach Daniel
fcda627050 fix: hydrate aggregate refs when adding for calculations 2023-11-20 07:05:47 -05:00
Daniel Newman
4278f31736 Implement test and resources to show reference bug 2023-11-20 06:40:22 -05:00
Zach Daniel
b52fc0b429 chore: improve matrix behavior and update exists tests 2023-11-17 07:10:37 -05:00
Zach Daniel
c6e6633a9a fix: properly expand calculation values across aggregate invocations 2023-11-17 04:01:35 -05:00
Daniel Newman
06510b2770 Error using calc to agg to calc to agg 2023-11-16 20:47:25 -05:00
Zach Daniel
ef96cd541e fix: use synonymous_relationship_path when looking up ref bindings 2023-11-16 11:02:24 -05:00
Alan Heywood
af8d8dbcac test: add failing test to demo an issue with has_one calculations 2023-11-16 11:02:02 -05:00
Zach Daniel
db8255e5b1 improvement: support a 2 argument function for the repo option 2023-11-14 10:56:22 -05:00
Zach Daniel
cae89d856e fix: get resource from proper bindings on exists query 2023-11-13 17:42:37 -05:00
Zach Daniel
342920a3c4 improvement: support parent in sort expressions 2023-10-26 09:47:56 -04:00
Zach Daniel
52302046e1 fix: properly join to related references in relationship filters 2023-10-24 12:25:23 -04:00
Zach Daniel
1a6e469e57 improvement: support atomics on upserts 2023-10-11 15:17:50 -04:00
Zach Daniel
f67db5ee6d chore: handle ci_string type as storage type 2023-10-10 14:16:25 -04:00
Zach Daniel
772c12b5a3 fix: don't run main query if only exists aggs are specified
fixes: #170
2023-10-10 09:43:09 -04:00
Zach Daniel
270d8685e7 improvement: support to-one references in calculations 2023-10-09 18:57:06 -04:00
Alessio Montagnani
0adec1d163
* improvement: in multitenant resources migration's generation, check if the relationship points at the primary key of the target then not adding the multitenancy attribute (#144 and #157) 2023-09-25 15:33:28 -04:00
Zach Daniel
b35f8c715b improvement: add AshPostgres.Tsquery 2023-09-20 16:41:32 -04:00
James Harton
6cc88c82b4
improvement: Allow resources to opt out of the primary key requirement. (#166) 2023-09-06 01:18:57 -04:00
Zach Daniel
33eb4f9fb7 improvement: better error message for missing table config 2023-09-04 11:25:03 -04:00
Zach Daniel
9f77304b22 fix: don't clobber loaded data on update 2023-08-31 13:04:08 -04:00
Zach Daniel
eabb745fc3 chore: update tests for latest ash atomics support 2023-08-31 11:47:15 -04:00
Zach Daniel
5a4a52854b
improvement: support atomics (#165) 2023-08-28 16:18:56 -04:00
Zach Daniel
cbde3958f3 fix: properly handle ensure nsted calls to get_path are jsonb 2023-08-23 12:54:25 -04:00
Zach Daniel
99b2a5631c improvement: support in-line aggregates
fix: support non-atom named aggregates
2023-08-22 14:51:31 -04:00