Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Mar 5, 2025

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
@whatwg-node/promise-helpers (source) 1.2.2 -> 1.2.4 age adoption passing confidence
@whatwg-node/server (source) ^0.9.68 -> ^0.10.0 age adoption passing confidence

Release Notes

ardatan/whatwg-node (@​whatwg-node/promise-helpers)

v1.2.4

Compare Source

Patch Changes

v1.2.3

Compare Source

Patch Changes
  • #​2068
    516bf60
    Thanks @​EmrysMyrddin! - Fix return type of the callback of
    iterateAsync. The callback can actually return null or undefined, the implementation is
    already handling this case.
ardatan/whatwg-node (@​whatwg-node/server)

v0.10.0

Compare Source

Minor Changes
  • #​2068
    516bf60
    Thanks @​EmrysMyrddin! - Add new Instruments API

    Introduction of a new API allowing to instrument the graphql pipeline.

    This new API differs from already existing Hooks by not having access to input/output of phases.
    The goal of Instruments is to run allow running code before, after or around the whole process
    of a phase
    , including plugins hooks executions.

    The main use case of this new API is observability (monitoring, tracing, etc...).

Basic usage
import Sentry from '@​sentry/node'
import { createServerAdapter } from '@​whatwg-node/server'

const server = createServerAdapter(
  (req, res) => {
    //...
  },
  {
    plugins: [
      {
        instruments: {
          request: ({ request }, wrapped) =>
            Sentry.startSpan({ name: 'Graphql Operation' }, async () => {
              try {
                await wrapped()
              } catch (err) {
                Sentry.captureException(err)
              }
            })
        }
      }
    ]
  }
)
Multiple instruments plugins

It is possible to have multiple instruments plugins (Prometheus and Sentry for example), they will
be automatically composed by envelop in the same order than the plugin array (first is outermost,
last is inner most).

import { createServerAdapter } from '@​whatwg-node/server'

const server = createServerAdapter(
  (req, res) => {
    //...
  },
  { plugins: [useSentry(), useOpentelemetry()] }
)
sequenceDiagram
  Sentry->>Opentelemetry: ;
  Opentelemetry->>Server Adapter: ;
  Server Adapter->>Opentelemetry: ;
  Opentelemetry->>Sentry: ;
Loading
Custom instruments ordering

If the default composition ordering doesn't suite your need, you can manually compose instruments.
This allows to have a different execution order of hooks and instruments.

import { composeInstruments, createServerAdapter } from '@​whatwg-node/server'

const { instruments: sentryInstruments, ...sentryPlugin } = useSentry()
const { instruments: otelInstruments, ...otelPlugin } = useOpentelemetry()
const instruments = composeInstruments([otelInstruments, sentryInstruments])

const server = createServerAdapter(
  (req, res) => {
    //...
  },
  { plugins: [{ instruments }, sentryPlugin, otelPlugin] }
)
sequenceDiagram
  Opentelemetry->>Sentry: ;
  Sentry->>Server Adapter: ;
  Server Adapter->>Sentry: ;
  Sentry->>Opentelemetry: ;
Loading
Patch Changes

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies label Mar 5, 2025
@renovate renovate bot force-pushed the renovate/whatwg-node branch from 21475cc to 41110d5 Compare March 5, 2025 13:09
@renovate renovate bot force-pushed the renovate/whatwg-node branch from 3e8b07a to add66a6 Compare March 5, 2025 13:15
@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (alpha)

The latest changes of this PR are available as alpha on npm (based on the declared changesets):

Package Version Info
@graphql-tools/batch-delegate 9.0.32-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/batch-execute 9.0.13-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/delegate 10.2.14-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/executor-graphql-ws 2.0.4-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/executor-http 1.2.9-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/federation 3.1.5-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/fusion-runtime 0.11.3-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-hive/gateway 1.11.0-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-hive/logger-winston 1.0.2-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-hive/plugin-aws-sigv4 1.0.0-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/hmac-upstream-signature 1.2.22-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/plugin-opentelemetry 1.3.45-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/plugin-prometheus 1.3.33-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-hive/gateway-runtime 1.5.0-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/stitch 9.4.19-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/stitching-directives 3.1.29-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/transport-http 0.6.35-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/transport-http-callback 0.5.22-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-mesh/transport-ws 1.0.5-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎
@graphql-tools/wrap 10.0.32-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24 npm ↗︎ unpkg ↗︎

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Binary for Linux-X64)

The latest changes of this PR are available for download (based on the declared changesets).

Download

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Binary for macOS-ARM64)

The latest changes of this PR are available for download (based on the declared changesets).

Download

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Node Docker Image)

The latest changes of this PR are available as image on GitHub Container Registry (based on the declared changesets):

ghcr.io/graphql-hive/gateway:1.11.0-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Bun Docker Image)

The latest changes of this PR are available as image on GitHub Container Registry (based on the declared changesets):

ghcr.io/graphql-hive/gateway:1.11.0-alpha-91a62ab3a1da609e2f26b0b3fe1b84a6d34cef24-bun

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Binary for Linux-ARM64)

The latest changes of this PR are available for download (based on the declared changesets).

Download

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Binary for macOS-X64)

The latest changes of this PR are available for download (based on the declared changesets).

Download

@theguild-bot
Copy link
Collaborator

🚀 Snapshot Release (Binary for Windows-X64)

The latest changes of this PR are available for download (based on the declared changesets).

Download

@ardatan ardatan merged commit f974f5b into main Mar 5, 2025
63 checks passed
@ardatan ardatan deleted the renovate/whatwg-node branch March 5, 2025 14:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants