@graphql-yoga/subscription
Changelog for @graphql-yoga/subscription: every release with its changes and the pull requests behind them.
6.0.0
Major Changes
-
#4574
79b0e8bThanks @egoodwinx! - ### Breaking Changes- Node: minimum supported version is now Node 22. Node 18 and 20 are no longer supported. Future releases will only support Node >=22.
- GraphQL: minimum supported version is now GraphQL 16. GraphQL 14 and 15 are no longer supported.
- Request body parsing: Yoga now limits request bodies to 25,000,000 bytes by default.
Enforcing this limit streams the body through a byte counter, making POST body parsing
asynchronous even for an in-memory body. As a result,
yoga.fetch()can return a Promise where it previously returned a synchronous Response, even when all resolvers and plugins are synchronous.
Migration
- If you’re on Node 18/20, upgrade to Node 22 or later before upgrading this package.
- If you’re on graphql 14/15, upgrade to graphql 16 or 17 first.
- Await
yoga.fetch()and response body parsing instead of relying on synchronous results. SetmaxRequestBodySize: falseincreateYogato disable the body-size limit and preserve synchronous parsing for in-memory bodies, but only if you enforce an appropriate request-body limit elsewhere.
Patch Changes
- Updated dependencies
[
79b0e8b]:- @graphql-yoga/typed-event-target@4.0.0
5.1.1
Patch Changes
-
#4577
7bff35cThanks @egoodwinx! - Add homepage and bugs.url to package.json files -
Updated dependencies [
7bff35c]:- @graphql-yoga/typed-event-target@3.0.3
5.1.0
Minor Changes
-
#4341
b70ad4aThanks @wotan-allfather! - feat: add configurable repeater buffer to createPubSubThis allows users to configure how values are buffered when pushed faster than consumed, preventing RepeaterOverflowError when more than 1024 pending pushes accumulate.
Available buffers from @repeaterjs/repeater:
FixedBuffer(capacity)- allows N values to be pushed without waiting, throws when fullSlidingBuffer(capacity)- discards oldest values when capacity is exceededDroppingBuffer(capacity)- discards newest values when capacity is exceeded
Example:
import { createPubSub, SlidingBuffer } from '@graphql-yoga/subscription' const pubSub = createPubSub({ repeaterBuffer: new SlidingBuffer(256) })Closes #3692
5.0.5
Patch Changes
-
#3995
000c33dThanks @enisdenjo! - Update whatwg-node packagesIn light of https://github.com/ardatan/whatwg-node/pull/2305. Please upgrade as soon as possible!
5.0.4
Patch Changes
5.0.3
Patch Changes
- #3660
d4cbae1Thanks @renovate! - dependencies updates:- Updated dependency
tslib@^2.8.1↗︎ (from^2.5.2, independencies)
- Updated dependency
- Updated dependencies
[
d4cbae1]:- @graphql-yoga/typed-event-target@3.0.2
5.0.2
Patch Changes
- Updated dependencies
[
57e7701]:- @graphql-yoga/typed-event-target@3.0.1
5.0.1
Patch Changes
- #3300
fdd902cThanks @EmrysMyrddin! - dependencies updates:- Updated dependency
@graphql-yoga/typed-event-target@workspace:^↗︎ (from^3.0.0, independencies)
- Updated dependency
5.0.0
Major Changes
- #3063
01430e03Thanks @EmrysMyrddin! - Breaking Change: Drop support of Node.js 16
Patch Changes
- Updated dependencies
[
01430e03]:- @graphql-yoga/typed-event-target@3.0.0
4.0.0
Major Changes
-
#2767
4228c1d5Thanks @renovate! - Drop support for Node.js 14. Require Node.js>=16. -
#2767
4228c1d5Thanks @renovate! - Events without an event payload will now always havenullas the event payload instead ofundefined.
Patch Changes
3.1.0
Minor Changes
-
#2291
fe4a2acaThanks @n1ru4l! - Support returning aPromisefrom thefilterutility function.const applyFilter = filter(value => Promise.resolve(value > 3))
3.0.0
Major Changes
- #1761
b2407c6aThanks @ardatan! - - DropTypedEventin favor ofCustomEvent- Use
@whatwg-node/eventsas a ponyfill instead of@whatwg-node/fetch
- Use
Patch Changes
- Updated dependencies
[
b2407c6a]:- @graphql-yoga/typed-event-target@1.0.0
3.0.0-next.0
Major Changes
- #1761
b2407c6aThanks @ardatan! - BREAKING:- Drop
TypedEventin favor ofCustomEvent - Use
@whatwg-node/eventsas a ponyfill instead of@whatwg-node/fetch
- Drop
Patch Changes
- Updated dependencies
[
b2407c6a]:- @graphql-yoga/typed-event-target@1.0.0-next.0
2.2.3
Patch Changes
- eecf24c: Fix CommonJS TypeScript resolution with
moduleResolutionnode16ornodenext - Updated dependencies [eecf24c]
- @graphql-yoga/typed-event-target@0.1.1
2.2.2
Patch Changes
- 3363de2: Use
import type { Foo } from '@pkg'instead ofimport { type Foo } from '@pkg'as many tools don’t yet support this syntax.
2.2.1
Patch Changes
- ebddc71: Correctly handle empty (‘undefined’) payloads.
2.2.0
Minor Changes
- d024757: Use
@graphql-yoga/typed-event-targetas a dependency for the EventTarget implementation.
Patch Changes
- Updated dependencies [d024757]
- @graphql-yoga/typed-event-target@0.1.0
2.1.0
Minor Changes
- 7de07cd: Support TypeScript ECMA script resolution. More information on https://devblogs.microsoft.com/typescript/announcing-typescript-4-7/#ecmascript-module-support-in-node-js
2.0.0
Major Changes
- 3e771f5: re-export
Repeaterfrom@repeaterjs/repeater - e99ec3e: initial subscription package implementation
- f856b58: export PubSub type
- 3e771f5: add pipe helper function
- f856b58: allow any AsyncIterable source for the map and filter operator
- dcaea56: add missing tslib dependency
Patch Changes
- 8d03bee: fix publishing values when using the id argument for granular resource based subscriptions
- de1693e: trigger release
- f856b58: correctly terminate AsyncIterable returned from map/filter when the source stream ends
0.0.1-beta.1
Patch Changes
- 8d03bee: fix publishing values when using the id argument for granular resource based subscriptions
0.0.1-beta.0
Patch Changes
- de1693e: trigger release
0.1.0-alpha.2
Minor Changes
- dcaea56: add missing tslib dependency
0.1.0-alpha.1
Minor Changes
- 3e771f5: re-export
Repeaterfrom@repeaterjs/repeater - f856b58: export PubSub type
- 3e771f5: add pipe helper function
- f856b58: allow any AsyncIterable source for the map and filter operator
Patch Changes
- f856b58: correctly terminate AsyncIterable returned from map/filter when the source stream ends
0.1.0-alpha.0
Minor Changes
- e99ec3e: initial subscription package implementation