graphql-yoga

5.7.0

Minor Changes

  • #3331 5dae4ab Thanks @EmrysMyrddin! - Expose server context in onResultProcessHook. In particular, this gives access to the waitUntil method to cleanly handle hanging promises.

  • #3331 5dae4ab Thanks @EmrysMyrddin! - New hook: onExecutionResult which is triggered when an execution is done on the pipeline. If it is a batched operation, this is called per each operation in the batch

  • #3331 5dae4ab Thanks @EmrysMyrddin! - Expose the already existing waitUntil method from the server context.

Patch Changes

5.6.3

Patch Changes

5.6.2

Patch Changes

5.6.1

Patch Changes

5.6.0

Minor Changes

  • #3333 9f3f945 Thanks @ardatan! - By default, Yoga does not allow extra parameters in the request body other than query, operationName, extensions, and variables, then throws 400 HTTP Error. This change adds a new option called extraParamNames to allow extra parameters in the request body.

    import { createYoga } from 'graphql-yoga'
     
    const yoga = createYoga({
      /* other options */
      extraParamNames: ['extraParam1', 'extraParam2']
    })
     
    const res = await yoga.fetch('/graphql', {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json'
      },
      body: JSON.stringify({
        query: 'query { __typename }',
        extraParam1: 'value1',
        extraParam2: 'value2'
      })
    })
     
    console.assert(res.status === 200)

5.5.0

Minor Changes

  • #3332 0208024 Thanks @ardatan! - Customize the landing page by passing a custom renderer that returns Response to the landingPage option

    import { createYoga } from 'graphql-yoga'
     
    const yoga = createYoga({
      landingPage: ({ url, fetchAPI }) => {
        return new fetchAPI.Response(
          /* HTML */ `
            <!doctype html>
            <html>
              <head>
                <title>404 Not Found</title>
              </head>
              <body>
                <h1>404 Not Found</h1>
                <p>Sorry, the page (${url.pathname}) you are looking for could not be found.</p>
              </body>
            </html>
          `,
          {
            status: 404,
            headers: {
              'Content-Type': 'text/html'
            }
          }
        )
      }
    })

5.4.0

Minor Changes

  • #3314 d5dfe99 Thanks @EmrysMyrddin! - Allow for full customization of the GraphiQL page.

    Props from the YogaGraphiQL are now forwarded to the underlying GraphiQL components.

    The graphiql option field type of the Yoga server as also been updated to document which options are configurable from the server side. Only serializable options are available.

  • #3255 7335a82 Thanks @nissy-dev! - support shouldPersistHeaders option in GraphiQL plugin

Patch Changes

5.3.1

Patch Changes

  • #3237 3324bbab Thanks @ardatan! - dependencies updates:

  • #3237 3324bbab Thanks @ardatan! - In such environments like CloudFlare Workers, the request object in the context always has the initial request object, so it was impossible to access the actual Request object from the execution context. Now Yoga ensures that the request in the context is the same with the actual Request.

5.3.0

Minor Changes

  • #3197 f775b341 Thanks @n1ru4l! - Experimental support for aborting GraphQL execution when the HTTP request is canceled.

    The execution of subsequent GraphQL resolvers is now aborted if the incoming HTTP request is canceled from the client side. This reduces the load of your API in case incoming requests with deep GraphQL operation selection sets are canceled.

    import { createYoga, useExecutionCancellation } from 'graphql-yoga'
     
    const yoga = createYoga({
      plugins: [useExecutionCancellation()]
    })

    Learn more in our docs

    Action Required In order to benefit from this new feature, you need to update your integration setup for Fastify, Koa and Hapi.

    - const response = await yoga.handleNodeRequest(req, { ... })
    + const response = await yoga.handleNodeRequestAndResponse(req, res, { ... })

    Please refer to the corresponding integration guides for examples.

Patch Changes

5.2.0

Minor Changes

  • #3196 71db7548 Thanks @n1ru4l! - Allow setting async iterable within onParams hook setResult function

Patch Changes

5.1.1

Patch Changes

5.1.0

Minor Changes

5.0.2

Patch Changes

  • #3133 77d107fe Thanks @ardatan! - Update HTTP Executor and add method and useGETForQueries to GraphiQL options

5.0.1

Patch Changes

5.0.0

Major Changes

Patch Changes

  • #3051 350bb851 Thanks @ardatan! - Use the same context object in the entire pipeline

  • Updated dependencies [01430e03]:

    • @graphql-yoga/subscription@5.0.0
    • @graphql-yoga/logger@2.0.0

4.0.5

Patch Changes

4.0.4

Patch Changes

4.0.3

Patch Changes

4.0.2

Patch Changes

  • #2872 ce6d2465 Thanks @nescalante! - Avoid overriding http status on extensions when using a plugin that modifies error prop

4.0.1

Patch Changes

4.0.0

Major Changes

  • #2767 4228c1d5 Thanks @renovate! - Drop support for Node.js 14. Require Node.js >=16.

  • #2776 34ecb4bb Thanks @enisdenjo! - Drop unused graphiql options defaultVariableEditorOpen and headerEditorEnabled

  • #2810 ec318fe6 Thanks @n1ru4l! - Remove support for executing Subscription operations over the incremental delivery response protocol (multipart/mixed)

  • #2775 dd699c4b Thanks @enisdenjo! - Subscriptions use GraphQL over SSE “distinct connections mode”

  • #2767 4228c1d5 Thanks @renovate! - Events without an event payload will now always have null as the event payload instead of undefined.

  • #2777 0522c740 Thanks @enisdenjo! - Parse and validation cache are now under a single option parserAndValidationCache

Patch Changes

  • #2720 cc370691 Thanks @n1ru4l! - Skip validation caching when there is no schema specified. This previously caused a cryptic error message when reaching execution/validation without a schema. Now the missing schema error will actually originate from within the validate function instead.

  • #2726 b309ca0d Thanks @ardatan! - Respect toJSON in the thrown errors.

  • Updated dependencies [4228c1d5, 4228c1d5]:

    • @graphql-yoga/subscription@4.0.0
    • @graphql-yoga/logger@1.0.0

3.9.1

Patch Changes

3.9.0

Minor Changes

  • #2675 aff69200 Thanks @enisdenjo! - Only well-formatted GraphQL-over-HTTP requests use 200 when accepting application/json

3.8.1

Patch Changes

3.8.0

Minor Changes

  • #2445 09d23a4b Thanks @ardatan! - GraphQL SSE Distinct Connections mode support with legacySse = false flag

Patch Changes

3.7.3

Patch Changes

3.7.2

Patch Changes

3.7.1

Patch Changes

3.7.0

Minor Changes

Patch Changes

3.6.1

Patch Changes

  • 3c8c8434 Thanks @ardatan! - Replace LRU caching with lazy URL construction, avoid unnecessary parse and validate invocation and CORS

3.6.0

Minor Changes

  • #2393 790330be Thanks @ardatan! - Decrease request latency by improving the validation and parser cache algorithm.

Patch Changes

3.5.1

Patch Changes

3.5.0

Minor Changes

  • #2364 03597a5a Thanks @n1ru4l! - export the yoga default format error function.

    import { createYoga, maskError } from 'graphql-yoga'
     
    const yoga = createYoga({
      maskedErrors: {
        maskError(error, message, isDev) {
          if (error?.extensions?.code === 'DOWNSTREAM_SERVICE_ERROR') {
            return error
          }
     
          return maskError(error, message, isDev)
        }
      }
    })

3.4.1

Patch Changes

3.4.0

Patch Changes

3.3.1

Patch Changes

3.3.0

Minor Changes

Patch Changes

3.2.1

Patch Changes

3.2.0

Minor Changes

Patch Changes

3.1.2

Patch Changes

3.1.1

Patch Changes

3.1.0

Minor Changes

Patch Changes

3.0.3

Patch Changes

3.0.2

Patch Changes

  • #2154 0007c58d Thanks @ardatan! - Only Yoga’s errors are now 200 when content-type is application/json

  • #2147 39a8fe89 Thanks @ardatan! - Bump @whatwg-node/server to fix the conflict issue between webworker & dom TS typing libs

3.0.1

Patch Changes

3.0.0

Major Changes

  • 2e0c4824 Thanks @b4s36t4! - Drop Node 12 Support

    GraphQL Yoga no longer supports Node 12 which is no longer an LTS version. GraphQL Yoga now needs Node 14 at least.

  • #2012 720898db Thanks @saihaj! - Remove .inject method to mock testing. Users should replace to use fetch method for testing.

    Checkout our docs on testing https://www.the-guild.dev/graphql/yoga-server/v3/features/testing.

    import { createYoga } from 'graphql-yoga'
    import { schema } from './schema'
     
    const yoga = createYoga({ schema })
     
    - const { response, executionResult } = await yoga.inject({
    -   document: "query { ping }",
    - })
     
    + const response = await yoga.fetch('http://yoga/graphql', {
    +   method: 'POST',
    +   headers: {
    +     'Content-Type': 'application/json',
    +   },
    +   body: JSON.stringify({
    +     query: 'query { ping }',
    +   }),
    + })
    + const executionResult = await response.json()
     
    console.assert(response.status === 200, 'Response status should be 200')
    console.assert(executionResult.data.ping === 'pong',`Expected 'pong'`)
  • #1753 eeaced00 Thanks @ardatan! - schema no longer accepts an object of typeDefs and resolvers but instead you can use createSchema to create a GraphQL schema.

  • #1516 209b1620 Thanks @ardatan! - Now it is possible to decide the returned Content-Type by specifying the Accept header. So if Accept header has text/event-stream without application/json, Yoga respects that returns text/event-stream instead of application/json.

  • #1808 02d2aecd Thanks @enisdenjo! - Drop readinessCheckEndpoint in favor of the useReadinessCheck plugin

    See docs for more information

  • #1473 c4b3a9c8 Thanks @ardatan! - Replace GraphQLYogaError in favor of GraphQLError.

    Check the documentation to see how to use GraphQLError

  • #1660 71554172 Thanks @saihaj! - Update to the latest version of the envelop useMaskedError plugin.

    • Removed handleValidationErrors and handleParseErrors
    • Renamed formatError to maskError

    Checkout Envelop docs for more details

  • #2091 1d508495 Thanks @ardatan! - Export only specific utilities from @envelop/core.

Minor Changes

  • #1966 6e250209 Thanks @saihaj! - Use @graphql-tools/executor as a default GraphQL Executor in favor of graphql-js.

  • #1497 1d7f810a Thanks @ardatan! - Support a schema factory function that runs per request or a promise to be resolved before the first request.

    createYoga({
      schema(request: Request) {
        return getSchemaForToken(request.headers.get('x-my-token'))
      }
    })
    async function buildSchemaAsync() {
      const typeDefs = await fs.promises.readFile('./schema.graphql', 'utf8')
      const resolvers = await import('./resolvers.js')
      return makeExecutableSchema({ typeDefs, resolvers })
    }
     
    createYoga({
      schema: buildSchemaAsync()
    })
  • #1662 098e139f Thanks @ardatan! - - Batching RFC support with batchingLimit option to enable batching with an exact limit of requests per batch.

    • New onParams hook that takes a single GraphQLParams object
    • Changes in onRequestParse and onRequestParseDone hook
    • Now onRequestParseDone receives the exact object that is passed by the request parser so it can be GraphQLParams or an array of GraphQLParams so use onParams if you need to manipulate batched execution params individually.

Patch Changes

  • #1997 8773a27f Thanks @saihaj! - Defer and Stream Support

    See the docs for more information

  • #2024 9f991a27 Thanks @enisdenjo! - Ensure all parsing failures in GraphQLScalarType are caught and handled with 400 status code.

  • #1920 cebca219 Thanks @enisdenjo! - Handle edge case where Content-Type header provides a list like;

    Content-Type: application/json, text/plain, */*
  • #1609 74e1f830 Thanks @enisdenjo! - usePreventMutationViaGET doesn’t do assertion if it is not YogaContext, so it is possible to use Yoga’s Envelop instance with other server implementations like graphql-ws.

  • #1567 e7a47b56 Thanks @n1ru4l! - Handle invalid POST body gracefully. Reject null, non-object bodies or invalid JSON bodies.

  • #1911 5f5b1160 Thanks @enisdenjo! - Handle cases where user supplies a malformed/unexpected context. Preventing GraphQL Yoga to crash and existing prematurely.

  • 73e56068 Thanks @ardatan! - Fix cancellation logic for defer/stream queries.

  • #1609 74e1f830 Thanks @enisdenjo! - Expose readonly graphqlEndpoint in YogaServerInstance

    const yoga = createYoga({
      /*...*/
    })
    console.log(yoga.graphqlEndpoint) // /graphql by default
  • #1844 b079c93b Thanks @ardatan! - All unexpected errors even if they are masked/wrapped The HTTP status code will be determined by the specific protocol the client is sending.

    “Unexpected error.” means an Error that is not an instance of GraphQLError or an instance of GraphQLError with an originalError that is not an instance of GraphQLError recursively.

  • #1988 b19a9104 Thanks @ardatan! - Respect the order of mime types given in the accept header by the client.

  • #1616 1d5cde96 Thanks @ardatan! - Allow the content type application/graphql-response+json as the Accept header value.

  • #1775 44878a5b Thanks @enisdenjo! - Improve the context type for server and request context.

  • Updated dependencies [b2407c6a]:

    • @graphql-yoga/subscription@3.0.0

3.0.0-next.12

Patch Changes

3.0.0-next.11

Major Changes

  • #2012 720898db Thanks @saihaj! - Remove .inject method to mock testing. Users should replace to use fetch method for testing. Checkout our docs on testing https://www.the-guild.dev/graphql/yoga-server/v3/features/testing.

    import { createYoga } from 'graphql-yoga'
    import { schema } from './schema'
     
    const yoga = createYoga({ schema })
     
    - const { response, executionResult } = await yoga.inject({
    -   document: "query { ping }",
    - })
     
    + const response = await yoga.fetch('http://localhost:4000/graphql', {
    +   method: 'POST',
    +   headers: {
    +     'Content-Type': 'application/json',
    +   },
    +   body: JSON.stringify({
    +     query: 'query { ping }',
    +   }),
    + })
    + const executionResult = await response.json()
     
    console.assert(response.status === 200, 'Response status should be 200')
    console.assert(executionResult.data.ping === 'pong',`Expected 'pong'`)

Patch Changes

3.0.0-next.10

Patch Changes

3.0.0-next.9

Minor Changes

Patch Changes

  • #1988 b19a9104 Thanks @ardatan! - Respect the order of mime types given in the accept header by the client

3.0.0-next.8

Minor Changes

3.0.0-next.7

Patch Changes

3.0.0-next.6

Patch Changes

3.0.0-next.5

Major Changes

3.0.0-next.4

Major Changes

Patch Changes

  • #1844 b079c93b Thanks @ardatan! - - All unexpected errors even if they are masked/wrapped, HTTP status code will be set to 500.

    “Unexpected error” means an Error that is not an instance of GraphQLError or an instance of GraphQLError with an originalError that is not an instance of GraphQLError recursively.

3.0.0-next.3

Patch Changes

3.0.0-next.2

Patch Changes

3.0.0-next.1

Patch Changes

3.0.0-next.0

Major Changes

Minor Changes

  • #1610 f4b23387 Thanks @ardatan! - Pass the parsed request as-is and validate the final GraphQLParams in useCheckGraphQLParams

  • #1497 1d7f810a Thanks @ardatan! - Support a schema factory function that runs per request or a promise to be resolved before the first request.

    createYoga({
      schema(request: Request) {
        return getSchemaForToken(request.headers.get('x-my-token'))
      }
    })
    async function buildSchemaAsync() {
      const typeDefs = await fs.promises.readFile('./schema.graphql', 'utf8')
      const resolvers = await import('./resolvers.js')
      return makeExecutableSchema({ typeDefs, resolvers })
    }
     
    createYoga({
      schema: buildSchemaAsync()
    })
  • #1662 098e139f Thanks @ardatan! - - Batching RFC support with batchingLimit option to enable batching with an exact limit of requests per batch.

    • New onParams hook that takes a single GraphQLParams object
    • Changes in onRequestParse and onRequestParseDone hook
      • Now onRequestParseDone receives the exact object that is passed by the request parser so it can be GraphQLParams or an array of GraphQLParams so use onParams if you need to manipulate batched execution params individually.

Patch Changes

  • #1609 74e1f830 Thanks @enisdenjo! - usePreventMutationViaGET doesn’t do assertion if it is not YogaContext, so it is possible to use Yoga’s Envelop instance with other server implementations like graphql-ws.

  • #1567 e7a47b56 Thanks @n1ru4l! - Handle invalid POST body gracefully; - Reject null - Reject non-object body - Reject invalid JSON body

  • #1609 74e1f830 Thanks @enisdenjo! - Expose readonly graphqlEndpoint in YogaServerInstance

    const yoga = createYoga({
      /*...*/
    })
    console.log(yoga.graphqlEndpoint) // /graphql by default
  • #1616 1d5cde96 Thanks @ardatan! - Support application/graphql-response+json as Accepted content type for the response

  • Updated dependencies [b2407c6a]:

    • @graphql-yoga/subscription@3.0.0-next.0

2.13.11

Patch Changes

  • Updated dependencies []:
    • @graphql-yoga/node@2.13.11

2.13.10

Patch Changes

  • Updated dependencies [779b55ee]:
    • @graphql-yoga/node@2.13.10

2.13.9

Patch Changes

  • Updated dependencies []:
    • @graphql-yoga/node@2.13.9

2.13.8

Patch Changes

  • Updated dependencies []:
    • @graphql-yoga/node@2.13.8

2.13.7

Patch Changes

2.13.6

Patch Changes

  • eecf24c: Fix CommonJS TypeScript resolution with moduleResolution node16 or nodenext
  • Updated dependencies [eecf24c]
    • @graphql-yoga/node@2.13.6

2.13.5

Patch Changes

  • Updated dependencies [c00dad3]
    • @graphql-yoga/node@2.13.5

2.13.4

Patch Changes

  • @graphql-yoga/node@2.13.4

2.13.3

Patch Changes

  • Updated dependencies [639607d]
    • @graphql-yoga/node@2.13.3

2.13.2

Patch Changes

  • @graphql-yoga/node@2.13.2

2.13.1

Patch Changes

  • @graphql-yoga/node@2.13.1

2.13.0

Patch Changes

  • @graphql-yoga/node@2.13.0

2.12.0

Patch Changes

  • @graphql-yoga/node@2.12.0

2.11.2

Patch Changes

  • Updated dependencies [ca5f940]
    • @graphql-yoga/node@2.11.2

2.11.1

Patch Changes

  • Updated dependencies [9248df8]
    • @graphql-yoga/node@2.11.1

2.11.0

Patch Changes

  • Updated dependencies [8947657]
    • @graphql-yoga/node@2.11.0

2.10.0

Minor Changes

Patch Changes

  • Updated dependencies [7de07cd]
  • Updated dependencies [8922c3b]
    • @graphql-yoga/node@2.10.0

2.9.2

Patch Changes

  • @graphql-yoga/node@2.9.2

2.9.1

Patch Changes

  • @graphql-yoga/node@2.9.1

2.9.0

Patch Changes

  • Updated dependencies [06652c7]
  • Updated dependencies [2d3c54c]
    • @graphql-yoga/node@2.9.0

2.8.0

Patch Changes

  • @graphql-yoga/node@2.8.0

2.7.0

Patch Changes

  • @graphql-yoga/node@2.7.0

2.6.1

Patch Changes

  • Updated dependencies [0224bf9]
    • @graphql-yoga/node@2.6.1

2.6.0

Patch Changes

  • @graphql-yoga/node@2.6.0

2.5.0

Patch Changes

  • Updated dependencies [8b6d896]
    • @graphql-yoga/node@2.5.0

2.4.1

Patch Changes

  • @graphql-yoga/node@2.4.1

2.4.0

Patch Changes

  • Updated dependencies [28e24c3]
  • Updated dependencies [13f96db]
    • @graphql-yoga/node@2.4.0

2.3.0

Patch Changes

  • @graphql-yoga/node@2.3.0

2.2.1

Patch Changes

  • Updated dependencies [32e2e40]
    • @graphql-yoga/node@2.2.1

2.2.0

Patch Changes

  • Updated dependencies [1d4fe42]
    • @graphql-yoga/node@2.2.0

2.1.0

Patch Changes

  • Updated dependencies [4077773]
  • Updated dependencies [2739db2]
  • Updated dependencies [cd9394e]
    • @graphql-yoga/node@2.1.0

2.0.0

Major Changes

  • b6dd3f1: The goal is to provide a fully-featured, simple to set up, performant and extendable server. Some key features:

    • GraphQL-over-HTTP spec compliant
    • Extend the GraphQL request flow using envelop
    • File uploads (via GraphQL multipart request specification)
    • GraphQL Subscriptions (using SSE)
    • Logging using Pino
    • Improved TypeScript Support
    • Try out experimental GraphQL features such as @defer and @stream
  • de1693e: trigger release

Minor Changes

  • 6750eff: rename GraphQLServerError to GraphQLYogaError.

  • 0edf1f8: feat: options for GraphiQL

  • d414f95: BREAKING Set maskedErrors value to true by default for safer defaults.

    BREAKING Remove disableIntrospection. Please use useDisableIntrospection from @envelop/disable-introspection instead.

  • 36af58e: export renderGraphiQL function

  • bea2dcc: align envelop types

  • fc1f2c7: make options optional

  • fb894da: Rename createGraphQLServer to createServer

  • 1a20e1e: Export everything from @envelop/core and export GraphQLFile scalar

  • d078e84: Drop fastify and use node-http package

  • 6d60ebf: add tabs to GraphiQL

  • 9554f81: Add PubSub utility.

  • 95e0ac0: feat: remove unnecessary Upload scalar types

  • dcaea56: add missing tslib dependency

Patch Changes

  • 6effd5d: fix(node): handle response cancellation correctly

  • 3d54829: enhance: move W3C changes

  • 0edf1f8: feat(cli): binds GraphQL Config to GraphQL Yoga

  • a10a16c: Node Server implementation has been moved to @graphql-yoga/node package.

    CLI implementation has been moved to graphql-yoga package.

  • 5b6f025: feat(yoga-cli): fallback to default schema and add mock parameter

  • Updated dependencies [d414f95]

  • Updated dependencies [133f8e9]

  • Updated dependencies [14c93a7]

  • Updated dependencies [ec777b1]

  • Updated dependencies [dcaea56]

  • Updated dependencies [b0b244b]

  • Updated dependencies [cfec14b]

  • Updated dependencies [433558f]

  • Updated dependencies [3c82b57]

  • Updated dependencies [f5f06f4]

  • Updated dependencies [dcaea56]

  • Updated dependencies [8ab60cf]

  • Updated dependencies [433558f]

  • Updated dependencies [5fba736]

  • Updated dependencies [62e8c07]

  • Updated dependencies [ce60a48]

  • Updated dependencies [a8b619b]

  • Updated dependencies [6d60ebf]

  • Updated dependencies [44ad1b3]

  • Updated dependencies [0424fe3]

  • Updated dependencies [de1693e]

  • Updated dependencies [d60f79f]

  • Updated dependencies [dcaea56]

  • Updated dependencies [daeea82]

  • Updated dependencies [a10a16c]

    • @graphql-yoga/node@0.1.0

2.0.0-beta.8

Minor Changes

  • 6d60ebf: add tabs to GraphiQL

Patch Changes

  • 5b6f025: feat(yoga-cli): fallback to default schema and add mock parameter
  • Updated dependencies [3c82b57]
  • Updated dependencies [6d60ebf]
  • Updated dependencies [0424fe3]
  • Updated dependencies [d60f79f]
    • @graphql-yoga/node@0.1.0-beta.8

2.0.0-beta.7

Patch Changes

  • Updated dependencies [14c93a7]
  • Updated dependencies [ec777b1]
  • Updated dependencies [8ab60cf]
    • @graphql-yoga/node@0.1.0-beta.7

2.0.0-beta.6

Patch Changes

  • @graphql-yoga/node@0.1.0-beta.6

2.0.0-beta.5

Patch Changes

  • Updated dependencies [cfec14b]
  • Updated dependencies [5fba736]
  • Updated dependencies [44ad1b3]
    • @graphql-yoga/node@0.1.0-beta.5

2.0.0-beta.4

Patch Changes

  • Updated dependencies [433558f]
  • Updated dependencies [433558f]
    • @graphql-yoga/node@0.1.0-beta.4

2.0.0-beta.3

Patch Changes

  • Updated dependencies [62e8c07]
    • @graphql-yoga/node@0.1.0-beta.3

2.0.0-beta.2

Patch Changes

  • Updated dependencies [daeea82]
    • @graphql-yoga/node@0.0.1-beta.2

2.0.0-beta.1

Patch Changes

  • @graphql-yoga/node@0.0.1-beta.1

2.0.0-beta.0

Major Changes

  • de1693e: trigger release

Patch Changes

  • Updated dependencies [de1693e]
    • @graphql-yoga/node@0.0.1-beta.0

2.0.0-alpha.12

Minor Changes

  • dcaea56: add missing tslib dependency

Patch Changes

  • Updated dependencies [133f8e9]
  • Updated dependencies [dcaea56]
  • Updated dependencies [f5f06f4]
  • Updated dependencies [dcaea56]
  • Updated dependencies [ce60a48]
  • Updated dependencies [dcaea56]
    • @graphql-yoga/node@0.1.0-alpha.4

2.0.0-alpha.11

Patch Changes

  • @graphql-yoga/node@0.1.0-alpha.3

2.0.0-alpha.10

Patch Changes

  • Updated dependencies [b0b244b]
    • @graphql-yoga/node@0.1.0-alpha.2

2.0.0-alpha.9

Patch Changes

  • @graphql-yoga/node@0.1.0-alpha.1

2.0.0-alpha.8

Minor Changes

Patch Changes

  • 6effd5d: fix(node): handle response cancellation correctly

  • a10a16c: Node Server implementation has been moved to @graphql-yoga/node package.

    CLI implementation has been moved to graphql-yoga package.

  • Updated dependencies [d414f95]

  • Updated dependencies [a10a16c]

    • @graphql-yoga/node@0.1.0-alpha.0

2.0.0-alpha.7

Patch Changes

  • 3d54829: enhance: move W3C changes
  • Updated dependencies [3d54829]
    • @graphql-yoga/common@0.2.0-alpha.6
    • @graphql-yoga/handler@0.2.0-alpha.3

2.0.0-alpha.6

Minor Changes

  • 36af58e: export renderGraphiQL function

Patch Changes

  • Updated dependencies [36af58e]
    • @graphql-yoga/common@0.2.0-alpha.5
    • @graphql-yoga/handler@0.2.0-alpha.2

2.0.0-alpha.5

Patch Changes

  • Updated dependencies [d2c2d18]
    • @graphql-yoga/common@0.2.0-alpha.4

2.0.0-alpha.4

Minor Changes

  • fb894da: Rename createGraphQLServer to createServer

Patch Changes

  • Updated dependencies [e99ec3e]
  • Updated dependencies [fb894da]
    • @graphql-yoga/subscription@0.1.0-alpha.0
    • @graphql-yoga/common@0.2.0-alpha.3

2.0.0-alpha.3

Minor Changes

  • 0edf1f8: feat: options for GraphiQL
  • 1a20e1e: Export everything from @envelop/core and export GraphQLFile scalar
  • 9554f81: Add PubSub utility.
  • 95e0ac0: feat: remove unnecessary Upload scalar types

Patch Changes

  • Updated dependencies [0edf1f8]
  • Updated dependencies [95e0ac0]
    • @graphql-yoga/common@0.2.0-alpha.2
    • @graphql-yoga/handler@0.2.0-alpha.1

2.0.0-alpha.2

Patch Changes

  • Updated dependencies [5de1acf]
    • @graphql-yoga/common@0.2.0-alpha.1

2.0.0-alpha.1

Minor Changes

  • d078e84: Drop fastify and use node-http package

Patch Changes

  • Updated dependencies [d078e84]
  • Updated dependencies [d8f8a81]
    • @graphql-yoga/common@0.2.0-alpha.0
    • @graphql-yoga/handler@0.2.0-alpha.0

2.0.0-alpha.0

Major Changes

  • b6dd3f1: The goal is to provide a fully-featured, simple to set up, performant and extendable server. Some key features:

    • GraphQL-over-HTTP spec compliant
    • Extend the GraphQL request flow using envelop
    • File uploads (via GraphQL multipart request specification)
    • GraphQL Subscriptions (using SSE)
    • Logging using Pino
    • Improved TypeScript Support
    • Try out experimental GraphQL features such as @defer and @stream