P1: Upgrade to graphql-yoga 5 and Node 22 LTS (#176)#194
Open
dkijania wants to merge 1 commit into
Open
Conversation
Bring the server stack onto current majors: - graphql-yoga 4 → 5, @envelop/core 4 → 5, @envelop/graphql-jit 6 → 11, @envelop/disable-introspection 5 → 9, @envelop/opentelemetry 5 → 9. - Node 20 → 22 LTS across the Dockerfile, Volta pin, and the lint / unit-test / publish / smoke-load workflows. The only code change required is a targeted cast where useOpenTelemetry now types its provider argument against a duplicate @opentelemetry/api copy; the cast targets the exact expected parameter type. Build, unit tests, lint, and prettier all pass; the node:22 image builds and runs v22.x locally. Note: the OpenTelemetry SDK is intentionally not bumped here — the modern OTel packages drop the Jaeger exporter in favour of OTLP, so clearing the remaining @opentelemetry/* audit advisories is a separate Jaeger→OTLP migration. Closes #176. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QSuak9smCHbp4N17xjjLF6
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What & why
Part of the production-readiness epic (#163). Closes #176.
Key server deps were a major behind. This brings them current:
@envelop/core4 → 5,@envelop/graphql-jit6 → 11,@envelop/disable-introspection5 → 9,@envelop/opentelemetry5 → 9Code impact
Minimal — a single targeted cast:
@envelop/opentelemetry@9types its provider argument against a duplicate@opentelemetry/apicopy, soprovideris cast to the exact parameter typeuseOpenTelemetryexpects. Everything else compiled unchanged.Verification
npm run build— cleannpm run test:unit— all passnpm run lint/npx prettier --debug-check .— cleanFollow-up (not in this PR)
The OpenTelemetry SDK is intentionally not bumped — modern OTel drops the Jaeger exporter for OTLP, so clearing the remaining
@opentelemetry/*audit highs is a separate Jaeger→OTLP migration. With Yoga on 5, the graphql-armor meta package (#164 currently uses the individual sub-plugins due to the old envelop-4 peer) could also be revisited.🤖 Generated with Claude Code