Releases: graph-gophers/graphql-go
Releases · graph-gophers/graphql-go
v1.8.0
What's Changed
- Add
DecodeSelectedFieldArgs
to decode argument values for any nested selected field path directly from a resolver context. Enables reflection-free multi-level prefetching / batching (e.g. Category → Products → Reviews) that only loads requested branches, mitigating N+1 query problem even with pagination & filters by @pavelnikolov in #684 - Updated Go version in the go.mod file to 1.24 to be one minor version less than the latest Go release.
Full Changelog: v1.7.2...v1.8.0
If this release helps you, please consider becoming a sponsor ❤️
v1.7.2
What's Changed
- [BUGFIX] Fix checksum mismatch between direct git access and golang proxy for v1.7.1. This version contains identical functionality to v1.7.1 but with proper tag creation to ensure consistent checksums across all proxy configurations by @pavelnikolov in #683
Full Changelog: v1.7.1...v1.7.2
v1.7.1
What's Changed
- [BUGFIX] Reject object, interface, and input object type definitions that declare zero fields/input values (spec compliance) by @pavelnikolov in #676
- [IMPROVEMENT] Optimize overlapping field validation to avoid quadratic memory blowups on large sibling field lists by @pavelnikolov in #678
- [IMPROVEMENT]
SelectedFieldNames
now returns dot-delimited nested field paths (e.g.products
,products.id
,products.category
,products.category.id
). Intermediate container object/list paths are included so resolvers can check for both a branch (products.category
) and its leaves (products.category.id
).HasSelectedField
andSortedSelectedFieldNames
operate on these paths. This aligns behavior with typical resolver projection needs and fixes missing nested selections by @pavelnikolov in #680
Full Changelog: v1.7.0...v1.7.1
v1.7.0
What's Changed
- chore: update golangci-lint ver by @pavelnikolov in #664
- test: fuzz test schema exec by @pavelnikolov in #666
- ci(github): use GitHub actions by @pavelnikolov in #668
- feat(log): add panic logger func by @pavelnikolov in #669
- feat: allow immediate child selected fields introspection in resolvers by @pavelnikolov in #673
Important
The default branch of the repository is now main
. The previous default branch (i.e. master
) is still present but will not be updated anymore.
Full Changelog: v1.6.0...v1.7.0
v1.6.0
What's Changed
- Rename EntryPoints to RootOperationTypes by @obeis in #542
- Fix incorrect validation of zero float value by @agnivade in #547
- Add maximum query length schema option by @pavelnikolov in #494
- Update GraphiQL to v2 in examples by @pavelnikolov in #551
- Improve examples by @pavelnikolov in #557
- Separate resolvers for each operation by @pavelnikolov in #561
- Improve comments by @pavelnikolov in #565
- Add executable examples by @pavelnikolov in #567
- Conditionally allow introspection by @pavelnikolov in #569
- Refactor useFieldResolvers by @pavelnikolov in #575
- Add ASTSchema examples by @pavelnikolov in #576
- Add string descriptions example by @pavelnikolov in #577
- Refactor field resolution closer to schema types by @dackroyd in #573
- Move GraphQL types to package ast by @pavelnikolov in #584
- Allow directives on schema by @pavelnikolov in #585
- Add an enum example by @pavelnikolov in #587
- Allow fragment on interface by @pavelnikolov in #589
- Rename a variable in a test by @pavelnikolov in #590
- Allow directives in the schema by @pavelnikolov in #591
- Allow directives in schema extensions by @pavelnikolov in #592
- Check for required fields while parsing the schema by @k4n4ry in #594
- Add graphql reflect tag by @pavelnikolov in #596
- Allow func fields by @pavelnikolov in #599
- Remove service field by @pavelnikolov in #601
- Apollo subgraph example by @pavelnikolov in #603
- Rename folder by @pavelnikolov in #604
- Federation compatibility example by @pavelnikolov in #605
- Update docs by @pavelnikolov in #607
- Fix compatibility app response value by @pavelnikolov in #608
- Supporting two new fields for __InputValue by @pugovok in #614
- Fixed goroutine leak in subscriptions by @korotin in #626
- Add NullID nullable type by @Slessi in #627
- Upgrade graphql-js Testdata Process by @dackroyd in #633
- Refactor Validation Tests JSON by @dackroyd in #636
- Correctly apply arg names validation rule by @dackroyd in #637
- Fix Missing Names Function by @dackroyd in #638
- Apply PossibleFragmentSpreadsRule by @dackroyd in #639
- Bump tar from 6.1.13 to 6.2.1 in /example/federation/integration/gateway by @dependabot in #640
- Support leading pipe in union definition by @camdencheek in #654
- update federation example by @pavelnikolov in #658
Full Changelog: v1.5.0...v1.6.0
v1.5.0
What's Changed
- Adding primitive value validation by @DallasP9124 in #515
- Improve type assertion method argument validation (require zero) by @kainosnoema in #516
- Disallow repeat of non repeatable directives by @ostrea in #525
- Return error on an undeclared directive by @ostrea in #527
- fix minor unreachable code caused by t.Fatalf by @Abirdcfly in #530
- add specifiedBy directive by @benzolium in #532
- fix: fix typo by @hezhizhen in #520
- add array input example. close #489 by @MangioneAndrea in #536
- Fix __type queries sometimes not returning data by @simhnna in #540
- Allow deprecated directive on arguments by @pavelnikolov in #541
New Contributors
- @DallasP9124 made their first contribution in #515
- @kainosnoema made their first contribution in #516
- @ostrea made their first contribution in #525
- @Abirdcfly made their first contribution in #530
- @benzolium made their first contribution in #532
- @hezhizhen made their first contribution in #520
- @MangioneAndrea made their first contribution in #536
- @simhnna made their first contribution in #540
Full Changelog: v1.4.0...v1.5.0
v1.4.0
What's Changed
- [FEATURE] Add OpenTelemetry Support by @steve-gray in #493
- [FEATURE] Basic Apollo Federation Spec: Fetch service capabilities by @aeramu in #507
- [FEATURE] add support for repeatable directives by @speezepearson in #502
- [BUGFIX] Fix parseObjectDef will terminate when object has bad syntax (#491) by @cnnrrss in #500
- [BUGFIX] Fix remove checkNilCase test helper function by @cnnrrss in #504
- [BUGFIX] Fix example/social code by @roaris in #510
- [EXAMPLE] Add graphql.Time example by @roaris in #508
- [BUGFIX] Fix lint error by @pavelnikolov in #512
- [REFACTOR] Refactor tracing packages by @pavelnikolov in #513
Full Changelog: v1.3.0...v1.4.0
Release v1.3.0
Release v1.2.0
- [FEATURE] Accept custom JSON scalar value as resolver argument (#467)
Release v1.1.0
- [FEATURE] Add types package #437
- [FEATURE] Expose
packer.Unmarshaler
asdecode.Unmarshaler
to the public #450 - [FEATURE] Add location fields to type definitions #454
- [FEATURE]
errors.Errorf
preserves original error similar tofmt.Errorf
#456 - [BUGFIX] Fix duplicated __typename in response (fixes #369) #443