chore: update dependencies - #417
Merged
Merged
Conversation
Update the dev toolchain and the plugin's bundled dependencies: - vitest 0.34 -> 4 (the removed `--single-thread` flag is replaced by `--no-file-parallelism`), with vite 8 pinned as a devDependency so vitest's peer range resolves correctly - prettier 2 -> 3 (`prettier.format` is async now, so the d.ts renderChunk hook in the rollup config awaits it) - husky 8 -> 9 (`husky install` and the hook file header are deprecated) - rollup plugins (babel 7, commonjs 29, node-resolve 16, terser 1, typescript 12), lint-staged 17, dotenv 17, @actions/core 3, @actions/github 9, @changesets/get-github-info 0.8, @types/node 22 - typescript 5.3 -> 5.9, rollup 4.62, and other in-range updates - bundled deps: graphql-language-service 5.5, lru-cache 11, and @sindresorhus/fnv1a 3 (returns a BigInt now, so the diagnostics cache key type changes) TypeScript 5.9's tsserver no longer emits the `setTypings` event, so the e2e suites that waited for it now wait for `projectLoadingFinish` instead, and the graphqlsp suite polls completions until the schema has loaded asynchronously. Completion snapshots gain the metadata fields added by graphql-language-service 5.5. graphql intentionally stays on 16.x and TypeScript on 5.x; graphql 17 and TypeScript 6 are fresh majors that affect the plugin's peer surface and deserve their own PR. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: 8963277 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
The combinations e2e suite asserted on the first automatically emitted semanticDiag event and sent quick-info/completion requests right after, without waiting for the plugin's asynchronous schema load. This raced schema loading against tsserver's diagnostics emission — the suite was already intermittently flaky, and TypeScript 6's tsserver emits the first (still empty) diagnostics fast enough that the race is lost consistently. Poll with geterr until GraphQL diagnostics arrive, like the misconfiguration suite already does. Also ignore the regenerated introspection.d.ts fixture in prettier: lint-staged reformatted the committed copy, so every test run left the tree dirty by regenerating it in the generator's own style. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
kitten
approved these changes
Jul 5, 2026
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.
Summary
Updates the dev toolchain and the plugin's bundled dependencies, keeping everything green (
52/52e2e + unit tests pass, verified from a clean--frozen-lockfileinstall).Tooling majors
--single-threadflag is replaced by--no-file-parallelism; vite 8 is pinned as a root devDependency so vitest'svite@^6||^7||^8peer resolves (the lockfile otherwise kept a stale vite 5)prettier.formatis async now, so the d.tsrenderChunkhook in the rollup config awaits itpreparescript is nowhusky, hook file header removed (was deprecated), stale husky 4 config block dropped from package.json@actions/core3,@actions/github9,@changesets/get-github-info0.8,@types/node22 (matches CI's Node 22)Bundled (published) deps
label,detail,type,documentation, and deprecation metadata (snapshots updated accordingly)BigInt, so the diagnostics cache key type changed@gql.tada/internal1.2.1, changesets 2.31, gql.tada 1.11.2A changeset (patch) is included for the bundled dependency changes.
Test fixes required by the updates
setTypingsevent; thegraphqlspandmisconfiguratione2e suites waited for it inbeforeAlland timed out. They now wait forprojectLoadingFinish, and thegraphqlspsuite additionally pollscompletionInfountil the async schema load completes (mirroring the existingwaitForDiagnosticspattern).test/e2e/fixture-project-tada/introspection.d.tswas regenerated by the plugin during the test run with@gql.tada/internal1.2.1.Deliberately held back
^16@babel/core8@types/react) stay pinned to avoid meaningless snapshot churnThese are better done as separate, focused PRs.
Verification
🤖 Generated with Claude Code