Skip to content

Releases: sangria-graphql/sangria

v3.0.0

14 Feb 16:18
Compare
Choose a tag to compare

What's Changed

Modularization

The sangria library was split into different modules:

  • sangria-ast: the GraphQL schema AST
  • sangria-parser: the GraphQL parser
  • sangria-core: the schema and the execution
  • sangria-derivation: the derivation (based on scala macros)

The sangria library still includes all those modules.

Related PRs:

Performances

The more performant OverlappingFieldsCanBeMerged is now the default strategy

  • new OverlappingFieldsCanBeMerged is default by @yanns in #756
  • remove experimental OverlappingFieldsCanBeMerged by @yanns in #764

We also put some effort to reduce the number of allocations:

  • avoid allocations by @yanns in #762
  • use 'foreach' for side-effects by @yanns in #763
  • less allocation in ExecutionPath.add by @yanns in #769
  • optimize StringUtil.escapeString by @yanns in #771
  • avoid breaking sangria slow logs by @yanns in #774
  • use 'cacheKeyReversed' to avoid creating vectors by @yanns in #775
  • introduce ExecutionPath.cacheKeyReversedIterator by @yanns in #782

Simplifications

DeliveryScheme was removed. A parser always returns a Try.

The output of the GraphQL does not contain trailing white spaces anymore:

  • Description with empty line rendering by @yanns in #852

Deprecation removal

Some deprecations were removed:

  • remove deprecated useLegacyCommentDescriptions by @yanns in #757
  • remove deprecated useLegacyCommentDescriptions by @yanns in #758
  • remove deprecated legacyImplementsInterface by @yanns in #759
  • remove deprecated legacyEmptyFields by @yanns in #760

What about Scala 3?

We are in the process of cross-compiling sangria to scala 3: https://github.com/sangria-graphql/sangria/projects/2
But we are still missing some dependencies:

If you are using sangria, we would appreciate if you could help us on this topic.

How to migrate from 2.x to 3.x

To migrate from sangria 2.x, please make sure that you are using the latest version of sangria 2.x.
Then make sure to fix all deprecations. We have tried to give useful warning messages.
After that, upgrading to the 3.x version should work.
Ask for help if you need.

Side note about GraphQL federation

We have now another library that adds Apollo's Federation Specification on top of a provided sangria graphql schema.

New Contributors

Full Changelog: v2.1.4...v3.0.0

v3.0.0-RC8

11 Feb 08:34
5e93b71
Compare
Choose a tag to compare
v3.0.0-RC8 Pre-release
Pre-release

What’s Changed

Dependency updates

Full Changelog: v3.0.0-RC7...v3.0.0-RC8

v3.0.0-RC7

19 Nov 08:00
b521942
Compare
Choose a tag to compare
v3.0.0-RC7 Pre-release
Pre-release

Fix #795

What's Changed

Dependency updates

Full Changelog: v3.0.0-RC6...v3.0.0-RC7

v3.0.0-RC6

10 Nov 16:45
5a342c2
Compare
Choose a tag to compare
v3.0.0-RC6 Pre-release
Pre-release

This release has a know issue: #795

What's Changed

Full Changelog: v3.0.0-RC5...v3.0.0-RC6

v2.1.6

10 Nov 16:44
cd118e1
Compare
Choose a tag to compare

What's Changed

Full Changelog: v2.1.5...v2.1.6

v3.0.0-RC5

03 Nov 08:43
3eb4c9c
Compare
Choose a tag to compare
v3.0.0-RC5 Pre-release
Pre-release

What's Changed

  • introduce ExecutionPath.cacheKeyReversedIterator by @yanns in #782

Full Changelog: v3.0.0-RC4...v3.0.0-RC5

v2.1.5

03 Nov 08:36
1ddfee0
Compare
Choose a tag to compare

What's Changed

  • backport ExecutionPath.cacheKeyReversed by @yanns in #781

Full Changelog: v2.1.4...v2.1.5

v3.0.0-RC4

29 Oct 08:23
d9bd889
Compare
Choose a tag to compare
v3.0.0-RC4 Pre-release
Pre-release

What's Changed

  • use 'cacheKeyReversed' to avoid creating vectors by @yanns in #775

Full Changelog: v3.0.0-RC3...v3.0.0-RC4

v3.0.0-RC3

29 Oct 08:22
3deafc1
Compare
Choose a tag to compare
v3.0.0-RC3 Pre-release
Pre-release

What's Changed

  • avoid breaking sangria slow logs by @yanns in #774

Full Changelog: v3.0.0-RC2...v3.0.0-RC3

v3.0.0-RC2

28 Oct 15:12
e751ee8
Compare
Choose a tag to compare
v3.0.0-RC2 Pre-release
Pre-release

This version breaks binary and source compatibility with the 2.x versions.

What's Changed

New Contributors

Full Changelog: v3.0.0-RC1...v3.0.0-RC2