Commit graph

659 commits

Author SHA1 Message Date
dependabot[bot]
2c83029478
chore(deps): bump ash from 3.0.0-rc.18 to 3.0.0-rc.27 (#133)
Bumps [ash](https://github.com/ash-project/ash) from 3.0.0-rc.18 to 3.0.0-rc.27.
- [Changelog](https://github.com/ash-project/ash/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ash-project/ash/compare/v3.0.0-rc.18...v3.0.0-rc.27)

---
updated-dependencies:
- dependency-name: ash
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-22 09:32:40 -04:00
Zach Daniel
8f47f58076 chore: add audit to ci 2024-04-22 09:32:27 -04:00
dependabot[bot]
df04981d49
chore(deps): bump ash from 3.0.0-rc.6 to 3.0.0-rc.18 (#127)
* chore(deps): bump ash from 3.0.0-rc.6 to 3.0.0-rc.18

Bumps [ash](https://github.com/ash-project/ash) from 3.0.0-rc.6 to 3.0.0-rc.18.
- [Changelog](https://github.com/ash-project/ash/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ash-project/ash/compare/v3.0.0-rc.6...v3.0.0-rc.18)

---
updated-dependencies:
- dependency-name: ash
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

* chore: Fix dialyzer error.

`action.accept` can no longer ever be `nil`.

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: James Harton <james@harton.nz>
2024-04-22 09:31:33 +12:00
Zach Daniel
bd9562a9fa fix: ensure type is set when using find_manage_relationship
closes #132
2024-04-20 16:24:05 +01:00
Zach Daniel
1c4cf1969c fix: properly honor new pagination config everywhere
fixes #130
2024-04-20 16:18:52 +01:00
Zach Daniel
0594c63c2b docs: shuffle around module concat recommendation 2024-04-12 15:17:38 -04:00
Zach Daniel
e9b4d77e91 chore: fix docs link 2024-04-12 15:15:44 -04:00
Zach Daniel
05e5ca3e1a chore: add Module.concat to the docs 2024-04-12 15:12:48 -04:00
Zach Daniel
ddae98cf40 chore: don't set domain for embedded resources 2024-04-11 23:49:22 -04:00
Zach Daniel
35f35e4468 chore: release version v1.0.0-rc.3 2024-04-11 13:13:28 -04:00
Zach Daniel
1331bdd4ce improvement: support generic actions with no return type 2024-04-11 13:11:37 -04:00
Zach Daniel
80534862a4 docs: update getting started guide 2024-04-11 11:48:09 -04:00
Zach Daniel
777544a881 chore: release version v1.0.0-rc.2 2024-04-11 10:21:12 -04:00
dependabot[bot]
b28a3c59e3
chore(deps-dev): bump excoveralls from 0.18.0 to 0.18.1 (#126)
Bumps [excoveralls](https://github.com/parroty/excoveralls) from 0.18.0 to 0.18.1.
- [Release notes](https://github.com/parroty/excoveralls/releases)
- [Changelog](https://github.com/parroty/excoveralls/blob/master/CHANGELOG.md)
- [Commits](https://github.com/parroty/excoveralls/compare/v0.18.0...v0.18.1)

---
updated-dependencies:
- dependency-name: excoveralls
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-11 11:24:45 +12:00
dependabot[bot]
6bb71367b3
chore(deps-dev): bump simple_sat from 0.1.1 to 0.1.3 (#128)
Bumps [simple_sat](https://github.com/ash-project/simple_sat) from 0.1.1 to 0.1.3.
- [Changelog](https://github.com/ash-project/simple_sat/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ash-project/simple_sat/compare/v0.1.1...v0.1.3)

---
updated-dependencies:
- dependency-name: simple_sat
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-11 11:24:22 +12:00
3e005ae2a1
chore: enable dependabot for mix dependencies. (#125) 2024-04-10 18:26:27 -04:00
Rebecca Le
261862948b
docs: Add upgrade note about changing api -> domain (#124) 2024-04-05 10:51:56 -04:00
Zach Daniel
10fa6b2ff7 chore: format 2024-04-04 21:45:33 -04:00
Zach Daniel
fdfec3b210 chore: remove backwards compatibility config for 3.0 2024-04-04 21:35:00 -04:00
Zach Daniel
2552f07689 fix: accept input object for destroy mutations 2024-04-03 10:19:13 -04:00
Zach Daniel
e364ff4115 chore: release version v1.0.0-rc.1 2024-04-02 12:31:17 -04:00
Zach Daniel
71abbd7039 improvement: update ash rc dependency 2024-04-02 12:30:11 -04:00
Zach Daniel
d692c931c2 chore: format 2024-04-01 16:16:05 -04:00
Zach Daniel
43ae1f07fc chore: update deps 2024-04-01 16:14:22 -04:00
Zach Daniel
8f6c728232 chore: release version v1.0.0-rc.0 2024-04-01 16:02:59 -04:00
Zach Daniel
180d05545c improvement!: auto? managed_relationships by default
imporovement!: remove deprecated configuration
2024-04-01 16:02:30 -04:00
Zach Daniel
91e163ddfd chore: format markdown 2024-04-01 15:29:19 -04:00
Zach Daniel
349086fbb8 improvement!: No longer automagically derive types 2024-04-01 15:27:43 -04:00
Zach Daniel
78c5b6a3bb chore: update errors and deps 2024-04-01 14:13:48 -04:00
Riccardo Binetti
513c1ac68f
improvement!: port AshGraphql to Ash 3.0 (#123)
Step 1: update Ash

Step 2: mass rename Api to Domain

Step 3: Ash.Query.expr -> Ash.Expr.expr

Also change ref interpolation

Step 4: remove all warnings

Step 5: remove registries from tests

Step 6: fix filter

Step 7: private? -> !public?

Step 8: Ash.Calculation -> Ash.Resource.Calculation

Step 9: use depend_on_resources/1 -> resources/1

Step 10: add Domain to all resources

Step 11: use Ash module for all actions

Step 12: add public? true all around

Step 13: remove verbose? from options passed during Domain calls

Step 14: add simple_sat

Step 15: Ash.ErrorKind is no more, so remove code from errors

Step 16: sprinkle default_accept :* around tests

Step 17: replace Ash.Changeset.new/2 with Ash.Changeset.for_*

Step 18: calculation fixups

- Context is now a struct and arguments go under the arguments key
- Function based calculations receive a list of records
- Add a select to query-based loads
- select -> load

Step 19: pass the correct name to pass the policy in tests

Step 20: Ash.Query.new/2 is no more

Step 21: add AshGraphql.Resource.embedded? utility function

Use that instead of Ash.Type.embedded_type?(resource_or_type) since resources
are not types anymore

Step 22: handle struct + instance_of: Resource in unions

Resources are not type anymore so they need to be passed this way in unions

Step 23: ensure we only check GraphQL actions for pagination

All reads are now paginated by default, so this triggered a compilation error

Step 24: swap arguments for sort on calculations

Step 25: remove unused debug? option
2024-04-01 14:03:06 -04:00
Zach Daniel
9f0ed5ed7e chore: release version v0.28.0 2024-03-30 17:38:35 -04:00
Riccardo Binetti
9674614b62
feat: allow resources without types (#121)
* fix: regenerate spark formatter and cheatsheet

Make CI pass again

* feat: allow resources without types

Ensure they only expose generic action queries. Add checks to ensure that either
`type :resource_type` or `generate_object? false` is passed if it's needed.

Close #119
2024-03-28 11:16:32 -04:00
Dmitry Maganov
234f2d6d61
fix: add show_fields to spark_locals_without_parens in formatter (#122) 2024-03-28 10:54:28 -04:00
Dmitry Maganov
1f2358ef68
improvement: add show_fields option as explicit fields whitelist (#120) 2024-03-27 14:54:58 -04:00
Riccardo Binetti
98baf6f0be
feat: allow providing descriptions for enum values (#117)
* chore: update ash to use Ash.Type.Enum descriptions

Contextually, remove an unreachable clause that caused dyalizer to fail,
see https://github.com/ash-project/ash/pull/873 for the commit that made
it unreachable

* feat: allow providing descriptions for enum values

If the module exports `graphql_describe_enum_value/1`, use that. Otherwise,
fallback to the Ash.Type.Enum value descriptions introduced in
https://github.com/ash-project/ash/pull/940.

Close #116
2024-03-25 23:43:59 -04:00
Riccardo Binetti
1c47c79081
chore: fix CI failures (#118)
* chore: regenerate formatter and cheatsheets for paginate_with

* chore: fix credo errors

Use pattern matching to remove an if level and invert the logic on the
if Credo was complaining about
2024-03-22 12:59:21 -04:00
Zach Daniel
51004afa8d fix: include generic actions in enum filtering 2024-03-14 23:09:44 -04:00
Zach Daniel
ae94fcde54 improvement: make pagination more explicitly configurable 2024-03-13 12:10:30 -04:00
Zach Daniel
f895d2910b chore: release version v0.27.1 2024-03-11 12:23:16 -04:00
Zach Daniel
d2343e5c54 chore: credo/remove inspects 2024-03-11 10:48:44 -04:00
Zach Daniel
90dc20822d improvement: add hide_inputs to queries and mutations 2024-03-11 10:46:42 -04:00
Zach Daniel
4c1f8a2d1a chore: release version v0.27.0 2024-02-12 19:47:06 -05:00
Zach Daniel
21aed2dde5 chore: format 2024-02-12 10:06:14 -05:00
Zach Daniel
99d2d66538 chore: change is_node_type/1 to node_type?/1 per credo 2024-02-11 14:44:31 -05:00
Junil Chon
9dd9f4c316 chore: add custom page of unions calculation test 2024-02-11 14:43:49 -05:00
Zach Daniel
971d3ff585 chore: update credo 2024-02-11 14:41:36 -05:00
Zach Daniel
22034fd47a chore: credo 2024-02-11 14:41:24 -05:00
Zach Daniel
328618fa94 fix: handle unions containing maps and vice versa 2024-02-11 14:10:20 -05:00
Riccardo Binetti
70eae5f421
fix: make results nullable again if root level errors are enabled (#114)
Building upon #110, this restores the old behaviour of the result being nullable
when root level errors are present.

While the result is guaranteed to not be nullable in standard conditions (since
either result or errors are always present), when errors are moved to the root
level it could become null, so declaring it non-nullable propagates the null up
to the data field.

This actually causes compatibility problems with some client libraries (e.g.
Relay) that expect the inner result to be null, _not_ data, if there's an error.

This also adds dedicated RootLevelErrors versions of the Api and the Schema
since the configuration is accessed at compile time now, so put_env was not
enough to test them correctly.
2024-02-09 09:36:23 -05:00
Barnabas Jovanovics
c82512d70a
* improvement: support data layer functions (ilike, like) (#113)
---------

Co-authored-by: Zach Daniel <zach@zachdaniel.dev>
2024-02-09 09:03:10 -05:00