Releases: productdevbook/nitro-graphql
Releases · productdevbook/nitro-graphql
v2.0.0-beta.73
What's Changed
Bug Fixes
- define: Preserve
__schemaproperty on directive objects (was alwaysundefined) - codegen: Correct
defumerge order so user config takes priority over defaults - routes/yoga: Read endpoint from moduleConfig instead of hardcoded
/api/graphql - routes/apollo: Cache h3Handler to avoid recreation per request
- routes/health: Use direct GraphQL execution instead of self-fetch (fixes serverless)
- routes/debug: Add runtime production guard
- rollup: Remove dead return that disabled chunking; add Rolldown
codeSplittingcompat - extend: Warn and skip instead of crashing when package config not found
- dev: Fix rescan race condition with extend packages
Refactoring
- Immutable scan state: Replace 6 mutable arrays with frozen
GraphQLScanStatesnapshots — atomic updates, no race conditions - Type unification:
GenImport→ScannedResolveras single source of truth; core types now extend actual@graphql-codegenplugin types - Codegen cleanup: Remove custom plugin wrappers (
pluginContent,typedDocumentStringPlugin), use string prepend instead. RemovedocumentMode: 'string'default andTypedDocumentStringworkaround - Setup orchestration: Monolithic
setupNitroGraphQL→ resolver chain pattern (each step is an independent function) - Module splitting: Split 4 large files (codegen 311 LOC, virtual 291 LOC, types 536 LOC, client 665 LOC) into focused modules
- Security: Unified
resolveSecurityDefaults()shared by Yoga and Apollo factories - Virtual modules: Eager snapshots instead of lazy closures (eliminates race condition root cause)
- Path resolution: 7 separate regexes → single
/{(\w+)}/gpattern with lookup table - Dead code removal: 30+ unused constants, duplicate types, dead barrels, deprecated functions deleted (252 → 248 files, 423 → 404 kB)
- File renames:
config.ts→create-config.ts,plugin.ts→file-header.ts,common.ts→file-scanner.ts, etc. - DirectiveParser: Class → pure functions with typed
OxcNodeinterfaces (eliminates 15+anytypes)
Playgrounds
- Remove
apolloplayground (federation already tests both frameworks) - Remove
webhookplayground (empty) - Simplify
viteplayground (deduplicate User CRUD)
Infrastructure
- Upgrade Vite to 8.0.0 stable
- Fix CI lint errors
- Update coverage badge to 71%
Full Changelog: v2.0.0-beta.72...v2.0.0-beta.73
v2.0.0-beta.72
🐞 Bug Fixes
- Disable strict-store-pkg-content-check for pkg.pr.new tarball compatibility - by @productdevbook and Claude Opus 4.6 (1M context) (1c1e2)
- Add vue-router override for nuxt nightly compatibility - by @productdevbook and Claude Opus 4.6 (1M context) (dc59f)
- Sort yaml keys in pnpm-workspace.yaml overrides - by @productdevbook and Claude Opus 4.6 (1M context) (fc7d4)
View changes on GitHub
v2.0.0-beta.70
🐞 Bug Fixes
- Ensure nitro property is required in graphqlModule function signature - by @productdevbook (64129)
View changes on GitHub
v2.0.0-beta.69
🐞 Bug Fixes
- Update native module build command to use ESM flag - by @productdevbook (c57c7)
View changes on GitHub
v2.0.0-beta.68
🚀 Features
- Register additional GraphQL route handlers using module specifiers - by @productdevbook (3b068)
🐞 Bug Fixes
- Add crossws as a peer dependency and update graphql-yoga version - by @productdevbook (88c17)
- Use import.meta.resolve() to convert module specifiers to absolute paths - by @productdevbook and Claude Opus 4.5 (14c31)
- ci: Remove pnpm cache from dependent jobs to avoid post-action errors - by @productdevbook (a379f)
View changes on GitHub
v2.0.0-beta.67
v2.0.0-beta.66
🚀 Features
- Add cross-runtime utilities for file system and process management - by @productdevbook (9ddc5)
- Enhance CI workflow with separate unit and E2E test stages, add fixture isolation utilities, and update test configurations - by @productdevbook (0f17a)
- Add validation tests for external services configuration - by @productdevbook (53dd5)
View changes on GitHub
v2.0.0-beta.65
🚀 Features
- Add support for clientDir in package extends and enhance E2E tests for file watching - by @productdevbook (1f8f6)
View changes on GitHub
v2.0.0-beta.64
No significant changes
View changes on GitHub
v2.0.0-beta.63
No significant changes