Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

fix: shared type excluded from non-first project caches #4107

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
smpanaro wants to merge 1 commit into graphql:main
base: main
Choose a base branch
Loading
from smpanaro:cache-project-shared-types

Conversation

@smpanaro
Copy link

@smpanaro smpanaro commented Sep 20, 2025

This propagates the project when populating the cache.

For a config like this:

projects:
 public:
 schema:
 - ./public/schema.graphql
 - ./shared.graphql
 documents: ./public/documents.graphql
 private:
 schema:
 - ./private/schema.graphql
 - ./shared.graphql
 documents: ./private/documents.graphql

If shared.graphql contains a type used in both ./public/documents.graphql and ./private/documents.graphql, the cache will only be populated for the first project (public here). This causes features like "go to definition" to only work for that project.

Propagating the project adds the shared types to the cache for both projects, and makes "go to definition" work for both.

Example Project
$ tree -a
.
├── .graphqlrc.yml
├── private
│  ├── documents.graphql
│  └── schema.graphql
├── public
│  ├── documents.graphql
│  └── schema.graphql
└── shared.graphql
3 directories, 6 files
# shared.graphql
type Book {
 title: String
}
# private/documents.graphql
query ListBooks {
 books {
 title # << go to definition on this fails on master
 }
}
# private/schema.graphql
type Query {
 books: [Book]
}
schema {
 query: Query
}
# public/documents.graphql
query ListPublicBooks {
 publicBooks {
 title
 }
}
# public/schema.graphql
type Query {
 publicBooks: [Book]
}
schema {
 query: Query
}

Copy link

changeset-bot bot commented Sep 20, 2025

⚠️ No Changeset found

Latest commit: 281a489

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

linux-foundation-easycla bot commented Sep 20, 2025
edited
Loading

CLA Signed

  • ✅login: smpanaro / name: Stephen Panaro / (281a489)

The committers listed above are authorized under a signed CLA.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

1 participant

AltStyle によって変換されたページ (->オリジナル) /