console/packages/libraries/envelop/CHANGELOG.md
TheGuildBot 4a805afd94
Upcoming Release Changes (#7345)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-12-01 14:24:32 +01:00

15 KiB

@graphql-hive/envelop

0.40.0

Minor Changes

  • #7346 f266368 Thanks @n1ru4l! - Add support for providing a logger object via HivePluginOptions.

    It is possible to provide the following options:

    • 'trace'
    • 'debug'
    • 'info' default
    • 'warn'
    • 'error'
    import { createHive } from '@graphql-hive/core'
    
    const client = createHive({
      logger: 'info'
    })
    

    In addition to that, it is also possible to provide a Hive Logger instance, that allows more control over how you want to log and forward logs.

    import { createHive } from '@graphql-hive/core'
    import { Logger } from '@graphql-hive/logger'
    
    const client = createHive({
      logger: new Logger()
    })
    

    Head to our Hive Logger documentation to learn more.


    The HivePluginOptions.debug option is now deprecated. Instead, please use the logger option to control logging levels.

     import { createHive } from '@graphql-hive/core'
    
     const client = createHive({
    -  debug: process.env.DEBUG === "1",
    +  logger: process.env.DEBUG === "1" ? "debug" : "info",
     })
    

    Note: If the logger property is provided, the debug option is ignored.


    The HivePluginOptions.agent.logger option is now deprecated. Instead, please provide HivePluginOptions.logger.

     import { createHive } from '@graphql-hive/core'
    
     const logger = new Logger()
    
     const client = createHive({
       agent: {
    -    logger,
       },
    +  logger,
     })
    

    Note: If both options are provided, the agent option is ignored.

Patch Changes

0.38.1

Patch Changes

  • Updated dependencies [64c8368]:
    • @graphql-hive/core@0.15.1

0.38.0

Minor Changes

  • #7280 2cc443c Thanks @n1ru4l! - Support circuit breaking for usage reporting.

    Circuit breaking is a fault-tolerance pattern that prevents a system from repeatedly calling a failing service. When errors or timeouts exceed a set threshold, the circuit “opens,” blocking further requests until the service recovers.

    This ensures that during a network issue or outage, the service using the Hive SDK remains healthy and is not overwhelmed by failed usage reports or repeated retries.

    import { createClient } from '@graphql-hive/core'
    
    const client = createClient({
      agent: {
        circuitBreaker: {
          /**
           * Count of requests before starting evaluating.
           * Default: 5
           */
          volumeThreshold: 5,
          /**
           * Percentage of requests failing before the circuit breaker kicks in.
           * Default: 50
           */
          errorThresholdPercentage: 1,
          /**
           * After what time the circuit breaker is attempting to retry sending requests in milliseconds
           * Default: 30_000
           */
          resetTimeout: 10_000
        }
      }
    })
    

Patch Changes

  • Updated dependencies [2cc443c]:
    • @graphql-hive/core@0.15.0

0.37.0

Minor Changes

  • #7264 582bc0e Thanks @n1ru4l! - Introduce debug log level. HTTP retry log pollute the error log. The retries are now logged to the debug level. In order to see debug logs set the debug option to true.

    const hive = createHive({
      debug: true
    })
    

    If you are using a custom logger, make sure to provide a debug logging method implementation.

    const hive = createHive({
      debug: true,
      agent: {
        logger: {
          info() {},
          error() {},
          debug() {}
        }
      }
    })
    

Patch Changes

  • Updated dependencies [582bc0e]:
    • @graphql-hive/core@0.14.0

0.36.4

Patch Changes

  • #7253 43920cd Thanks @ardatan! - Send correct version of the client packages, previously they were sending the version of @graphql-hive/core package.

  • Updated dependencies [43920cd, 43920cd]:

    • @graphql-hive/core@0.13.2

0.36.3

Patch Changes

  • #7248 d8f6e25 Thanks @n1ru4l! - Support project and personal access tokens (hvp1/ and hvu1/).

  • Updated dependencies [d8f6e25]:

    • @graphql-hive/core@0.13.1

0.36.2

Patch Changes

  • Updated dependencies [8d56b98]:
    • @graphql-hive/core@0.13.0

0.36.1

Patch Changes

  • Updated dependencies [bbd5643]:
    • @graphql-hive/core@0.12.0

0.36.0

Minor Changes

  • #6637 5130fc1 Thanks @n1ru4l! - Add error logging for invalid combinations of the target and token configuration.

    • Please make sure to provide the target option for usage reporting when using a token that starts with hvo1/.
    • Please make sure to not provide a target option for usage reporting when a token does not start with hvo1/

Patch Changes

  • Updated dependencies [5130fc1]:
    • @graphql-hive/core@0.11.0

0.35.1

Patch Changes

0.35.0

Minor Changes

  • #6574 494697e Thanks @n1ru4l! - Add support for providing a target for usage reporting with organization access tokens. This can either be a slug following the format $organizationSlug/$projectSlug/$targetSlug (e.g the-guild/graphql-hive/staging) or an UUID (e.g. a0f4c605-6541-4350-8cfe-b31f21a4bf80)

    import { useHive } from '@graphql-hive/envelop'
    
    const hivePlugin = useHive({
      enabled: true,
      token: 'ORGANIZATION_ACCESS_TOKEN',
      usage: {
        target: 'my-org/my-project/my-target'
      }
    })
    

Patch Changes

  • Updated dependencies [494697e]:
    • @graphql-hive/core@0.10.0

0.34.1

Patch Changes

  • Updated dependencies [ae2d16d]:
    • @graphql-hive/core@0.9.1

0.34.0

Minor Changes

  • #6488 f7d65fe Thanks @n1ru4l! - Include and log a x-request-id header for all requests sent to the Hive API. This helps users to share more context with Hive staff when encountering errors.

Patch Changes

  • Updated dependencies [f7d65fe]:
    • @graphql-hive/core@0.9.0

0.33.13

Patch Changes

0.33.12

Patch Changes

  • Updated dependencies [039c66b]:
    • @graphql-hive/core@0.8.3

0.33.11

Patch Changes

0.33.10

Patch Changes

0.33.9

Patch Changes

0.33.8

Patch Changes

  • Updated dependencies [3ffdb6e]:
    • @graphql-hive/core@0.8.0

0.33.7

Patch Changes

  • Updated dependencies [a896642]:
    • @graphql-hive/core@0.7.1

0.33.6

Patch Changes

  • #5361 3f03e7b Thanks @kamilkisiela! - Fixed issue where usage reports were sent only on app disposal or max batch size, now also sent at set intervals.
  • Updated dependencies [3f03e7b, 0a3b24d]:
    • @graphql-hive/core@0.7.0

0.33.5

Patch Changes

  • Updated dependencies [f2fef08]:
    • @graphql-hive/core@0.6.1

0.33.4

Patch Changes

  • Updated dependencies [e6dc5c9]:
    • @graphql-hive/core@0.6.0

0.33.3

Patch Changes

  • Updated dependencies [f1e43c6]:
    • @graphql-hive/core@0.5.0

0.33.2

Patch Changes

  • Updated dependencies [b8998e7]:
    • @graphql-hive/core@0.4.0

0.33.1

Patch Changes

  • #4932 cbc8364 Thanks @n1ru4l! - Prevent failing usage reporting when returning an object with additional properties aside from name and version from the client info object/factory function.
  • Updated dependencies [cbc8364]:
    • @graphql-hive/core@0.3.1

0.33.0

Minor Changes

  • #4573 06d465e Thanks @kamilkisiela! - Break @graphql-hive/client into library-specific packages:

    • @graphql-hive/core - Core functionality
    • @graphql-hive/apollo - Apollo Client integration
    • @graphql-hive/yoga - Yoga Server integration
    • @graphql-hive/envelop - Envelop integration

    Migration steps are available in the README of each package.

  • #4494 c5eeac5 Thanks @kamilkisiela! - 🚨 BREAKING CHANGE 🚨 Requires now Node v16+

  • #4573 06d465e Thanks @kamilkisiela! - Migration

    Migration steps are available in the README.

    - import { useHive } from '@graphql-hive/client';
    + import { useHive } from '@graphql-hive/envelop';
    

Patch Changes