Releases: Netflix/dgs-framework
v10.0.1
What’s Changed
- Downgrading Kotlin back to 1.9 because that's what Spring Boot aligns on (#2094) @paulbakker
- Update readme (#2092) @paulbakker
v10.0.0
DGS 10.0.0 removes all the legacy code in favor of our integration with Spring for GraphQL. 🎉
In March 2024 we released deep integration with Spring for GraphQL after working closely with the Spring team.
This integration makes it possible to mix and match features from DGS and Spring for GraphQL, and leverages the web transports provided by Spring for GraphQL.
With the March released we declared the "old" DGS starter, and the implementation code legacy, with the plan to remove this code end of 2024.
The community has adopted the DGS/Spring for GraphQL integration really well, in most cases without any required code changes.
At Netflix we migrated all our services to use the new integration, again mostly without any code changes.
Performance is critical for our services, and after all the performance optimization that went into the March release and some patch releases after, we see the same performance with the Spring for GraphQL integration as what we had previously.
DGS 10.0.0 finalizes the integration work by removing all the legacy modules and code.
This greatly reduces the footprint of the codebase, which will speed up feature development into the future!
Although the list of changes is large, you probably won't notice the difference for your applications!
Just make sure to use the (new) netflix.graphql.dgs:dgs-starter
AKA netflix.graphql.dgs:graphql-dgs-spring-graphql-starter
starter!
Detailed list of changes
New modules:
netflix.graphql.dgs:dgs-starter
as a nicer/shorter name fornetflix.graphql.dgs:graphql-dgs-spring-graphql-starter
.
Deleted modules:
graphql-dgs-spring-boot-oss-autoconfigure
(replaced by Spring for GraphQL)graphql-dgs-spring-webmvc
(replaced by Spring for GraphQL)graphql-dgs-spring-webmvc-autoconfigure
(replaced by Spring for GraphQL)graphql-dgs-spring-boot-starter
(replaced bynetflix.graphql.dgs:dgs-starter
)graphql-dgs-example-java
(legacy example, no longer relevant)graphql-dgs-example-java-webflux
(legacy example, no longer relevant)graphql-dgs-mocking
(old feature that wasn't used much)graphql-dgs-subscriptions-websockets
(replaced by Spring for GraphQL)graphql-dgs-subscriptions-websockets-autoconfigure
(replaced by Spring for GraphQL)graphql-dgs-subscriptions-graphql-sse
(replaced by Spring for GraphQL)graphql-dgs-subscriptions-graphql-sse-autoconfigure
(replaced by Spring for GraphQL)graphql-dgs-subscriptions-sse
(replaced by Spring for GraphQL)graphql-dgs-subscriptions-sse-autoconfigure
(replaced by Spring for GraphQL)graphql-dgs-spring-webflux-autoconfigure
(replaced by Spring for GraphQL)graphql-dgs-webflux-starter
(replaced bynetflix.graphql.dgs:dgs-starter
)
Deleted classes:
DgsAutoConfiguration
: Autoconfiguration classes have moved. This may break tests that are using @SpringBootTest(classes = {DgsAutoConfiguration.class, ...}, and should use @EnableDgsTest instead.DefaultGraphQLClient
: This is a long deprecated class that has been replaced by [CustomGraphQLClient, CustomReactiveGraphQLClient and WebClientGraphQLClient.DefaultDgsReactiveQueryExecutor
: There should be no user impact because its interface should be used instead.DefaultDgsQueryExecutor
: There should be no user impact because its interface should be used instead.
Other changes:
- We're now using the K2 compiler and Kotlin 2.1.
- Subscriptions over SSE in Spring GraphQL are using the newer, more official GraphQL over SSE RFC spec. The old spec is no longer supported by DGS.
- If you are using SSESubscriptionGraphQLClient in tests to test your DGS server, switch to GraphqlSSESubscriptionGraphQLClient, which has the same interface, but uses the new protocol.
- SSESubscriptionGraphQLClient can still be used to call into other services using the old protocol, but this client is now deprecated for removal in the future.
- Note that Spring GraphQL serves subscriptions on the /graphql endpoint, not on the /subscriptions endpoint like DGS used to do.
v10.0.0-rc.8
Merge pull request #2090 from Netflix/feature/dgs-starter Add new `dgs-starter` module for an easier/shorter starter name
v10.0.0-rc.6
Merge pull request #2090 from Netflix/feature/dgs-starter Add new `dgs-starter` module for an easier/shorter starter name
v10.0.0-rc.4
Merge pull request #2086 from Netflix/feature/remove-mocking-module Remove mocking module
v10.0.0-rc.3
What’s Changed
- Upgrade to Kotlin 2.1.0 and kotlinter 5.0 (#2084) @paulbakker
- Bump actions/cache from 4.1.2 to 4.2.0 (#2082) @dependabot
- Fix/delete dangling files (#2083) @paulbakker
- Remove legacy modules (#1995) @paulbakker
- Upgrade to K2 compiler. (#2079) @paulbakker
- Add 10.0 release announcement to readme (#2076) @paulbakker
v10.0.0-rc.2
What’s Changed
- Bump actions/cache from 4.1.2 to 4.2.0 (#2082) @dependabot
- Fix/delete dangling files (#2083) @paulbakker
- Remove legacy modules (#1995) @paulbakker
- Upgrade to K2 compiler. (#2079) @paulbakker
- Add 10.0 release announcement to readme (#2076) @paulbakker
v10.0.0-rc.1
What’s Changed
Release candidate with legacy modules and code removed: #1995
v9.2.2
Ignore builds/.kotlin
to not fail the build because of uncommitted changes.
v9.2.1
What’s Changed
- Update Gradle Wrapper from 8.10.2 to 8.11.1 (#2068) @github-actions
- Remove "strictly" for graphql-java and upgrade to Boot 3.3.6 (#2070) @paulbakker
- Remove incorrect toString() for URL in RestClientGraphQLClient error handling (#2069) @paulbakker
- Fix GraphQLContext propagation to data loaders with spring-graphql starter (#2067) @jjacobs44