Last 12 weeks · 255 commits
5 of 6 standards met
Problem When uses the local file mode, the compiler refuses to start if the configured file does not exist: But this file is a compiler output — the docs describe the feature as "you can generate a local JSON file which contains a map of ". Because it's a build artifact it is typically gitignored, so the compiler only starts on machines where a previous run happens to have left the file behind. On a fresh checkout — i.e. every CI run — it errors out until you either commit a stub map or wrap every compiler invocation in a script that pre-creates the file. (It's the single-file analogue of committing a to satisfy the check.) The check also lives inside , so it performs filesystem I/O during config parsing and resolves the path against the process cwd rather than the config file's location. Changes 1. deserialization no longer requires the local file to exist (and no longer touches the filesystem). 2. treats a missing file as an empty query map (the first-run state). Other read errors still panic, but the message now includes the underlying io error instead of claiming the file must exist. 3. creates missing parent directories before writing, matching what the artifact writer does for artifacts. 4. Doc comment on updated accordingly and regenerated. Behaviour notes Existing setups are unaffected: when the file exists, its entries are still loaded and merged exactly as before. This is pinned by the fixture, whose snapshot is byte-identical with and without the code change. A typo'd path now results in the map being written at the typo'd path instead of a startup error — i.e. ordinary build-output () semantics. Unchanged, but worth stating: operations whose generated artifacts are already up to date are not re-persisted (their ids are extracted from the artifacts), so deleting only the map file while keeping artifacts yields a map without those entries. already exists to force a full re-persist. That outcome is identical to today's stub-file workaround; this PR just removes the need for the workaround. Tests Three new integration fixtures: — the main repro. Before the fix this snapshotted the startup error; now the compiler runs and the snapshot shows being created alongside the artifact. — pins the pre-existing merge behaviour (snapshot unchanged by the fix). — with no directory in the fixture. for the workspace passes locally apart from , which on my machine fails under the parallel lib test run and passes in isolation, both with and without this change (pre-existing, unrelated). Also verified end-to-end against our application's single-project with the persist file absent: previously failed at startup, now compiles and writes the populated map.
Summary Fixed to return all enum values for plural enum fields instead of just the first value Added test to validate default enum array generation behavior with Before: Plural enum fields like would return (mock array, not matching the enum type) After: Plural enum fields return all enum values: Test plan [x] Added new test that validates plural enum fields return all enum values by default [x] Other tests still pass
The GraphQL spec (https://spec.graphql.org/September2025/#sec-Errors) states that errors may include an extensions entry whose value must be a map with no additional restrictions on its contents. PayloadError was missing this field. This also propagates extensions through to so the field is preserved during normalization and available to consumers. As a side effect, stale inline type annotations in that manually duplicated the error shape have been replaced with directly, and a mutation of a ReadonlyArray path via unshift has been replaced with an immutable spread.
Repository: facebook/relay. Description: Relay is a JavaScript framework for building data-driven React applications. Stars: 18955, Forks: 1894. Primary language: Rust. Languages: Rust (52.9%), JavaScript (31.2%), MDX (14.5%), HTML (0.8%), CSS (0.3%). License: MIT. Homepage: https://relay.dev Latest release: v21.0.1 (2mo ago). Open PRs: 100, open issues: 762. Last activity: 8h ago. Community health: 75%. Top contributors: kassens, alunyov, captbaritone, tyao1, josephsavona, rbalicki2, yungsters, SamChou19815, wincent, leebyron and others.