All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- [Breaking] Upgrade to Spring Boot v3.2.1 and SPQR v0.12.4 (graphql-java v21.3) #140
- Websocket handshake case-insensitive headers #136
- [Breaking] Upgrade to Spring Boot v3.1.1 and SPQR v0.12.3 (graphql-java v20.4) #133
- Upgrade to Spring Boot v2.7.14 and SPQR v0.12.3 (graphql-java v20.4)
- Better WebSocket configurability #79
- [Breaking] Upgrade to Spring Boot v2.7.6 and SPQR v0.12.1 (graphql-java v20.0) #124
- Support subscriptions over SSE #97
- [Breaking] Renamed all
Servlet*
classes toMvc*
(e.g.ServletContextFactory
➝MvcContextFactory
) - [Breaking] Make async execution the default #99
- Rewrite the WebSocket-based subscriptions implementation #98
- Bean registration fails when it encounters a JDK Proxy #100
- Support for Spring Data paging 🥳, with ot without Relay compatibility (thanks @vjroby) #2
- Spring Security support in WebFlux (preserve Spring's subscriber context) 🥳 #69
- Ability to choose a scheduler for
Mono
s
- [Breaking] Upgraded to graphql-spqr 0.11.1 (with graphql-java v16.2)
- [Breaking] Upgraded to Spring Boot 2.4.2
- WebSockets (for subscriptions) now work correctly in Firefox #54) #9
- Empty variables map handled correctly #39
- WebFlux support (not yet for subscriptions) (thanks @vjroby) #9
- Easier customization of GraphQL execution / error handling via
GraphQLExecutor
#22
DataLoader
and global context now properly work in subscriptions #19
- Full support for Apollo's graphql-ws protocol #13
- Easy way to inject custom global context #11
- Support for Reactor types (
Flux
andMono
) #16
- [Breaking] Normalized all application properties. See SpqrProperties for details.
- [Breaking] Default GUI endpoint changed from
/graphiql
to/gui
- Upgraded to graphql-spqr 0.9.9
- GraphiQL replaced with GraphQL Playground (might be revised later)
- [Breaking] Removed
DefaultGlobalContext#getDataLoaders
asDataLoader
s are now accessible directly
- Proxied beans no longer cause an exception (enabling the usage of Spring Security,
@Transactional
etc) #12