# What changed in @graphql-yoga/plugin-graphql-sse

> 15 changes in @graphql-yoga/plugin-graphql-sse 3 to 4 from its official release notes, upgrade guides and advisories: 14 breaking. Each one cited. Sources checked 2026-11-12. HTML: https://unstale.sh/npm/@graphql-yoga/plugin-graphql-sse/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## @graphql-yoga/plugin-graphql-sse 4

### Breaking changes

- Plugins added with addPlugin are inserted inplace, so their hooks execute immediately after the plugin that added them rather than last. (4.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v4)
- Install the new NPM package with npm i graphql-yoga. (4.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v4)
- Request bodies are now limited to 25,000,000 bytes by default; set maxRequestBodySize: false in createYoga to disable the limit. (4.0.0) — [release notes](https://github.com/graphql-hive/graphql-yoga/releases/tag/%40graphql-yoga/plugin-graphql-sse%404.0.0)
- GraphQL 16 is now the minimum supported version; GraphQL 14 and 15 are no longer supported. (4.0.0) — [release notes](https://github.com/graphql-hive/graphql-yoga/releases/tag/%40graphql-yoga/plugin-graphql-sse%404.0.0)
- Node 22 is now the minimum supported version; Node 18 and 20 are no longer supported. (4.0.0) — [release notes](https://github.com/graphql-hive/graphql-yoga/releases/tag/%40graphql-yoga/plugin-graphql-sse%404.0.0)
- Node.js v16 is no longer supported. (3.0.0, 4.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v4), [release notes](https://github.com/graphql-hive/graphql-yoga/blob/HEAD/packages/plugins/graphql-sse/CHANGELOG.md)
- POST body parsing is asynchronous due to the body-size limit, so yoga.fetch() can return a Promise instead of a synchronous Response; await it and response body parsing. (4.0.0) — [release notes](https://github.com/graphql-hive/graphql-yoga/releases/tag/%40graphql-yoga/plugin-graphql-sse%404.0.0)

### Behavior and default changes

- SSE operations now use the same request pipeline as HTTP, so onParams-based plugins are enforced consistently across both transports. (4.1.0) — [release notes](https://github.com/graphql-hive/graphql-yoga/releases/tag/%40graphql-yoga/plugin-graphql-sse%404.1.0)

## @graphql-yoga/plugin-graphql-sse 3

### Breaking changes

- This unused graphiql option was removed completely. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
- Subscriptions now use GraphQL over SSE “distinct connections mode” instead of Yoga’s custom SSE transport; clients are recommended to use graphql-sse. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
- This unused graphiql option was removed completely. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
- Subscriptions no longer support multipart/mixed and use text/event-stream as the transport method. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
- Parsing and validation caches are configured together under this option, including documentCache, errorCache, and validationCache. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
- The separate parser cache option is replaced by parserAndValidationCache. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
- The separate validation cache option is replaced by parserAndValidationCache. (3.0.0) — [upgrade guide](https://the-guild.dev/graphql/yoga-server/docs/migration/migration-from-yoga-v3)
