Backwards compatibility issues with DIRECTIVE_DEFINITION location on older versions of graphql
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
Rechercherichtung
Start by reproducing the schema-printing and introspection behavior with the stated latest graphql-java version and graphql-java 25.0 consumer. Read the schema printing and introspection entry points, then define how a predicate or switch should produce a schema compatible with older versions and verify that DIRECTIVE_DEFINITION no longer breaks those consumers.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Describe the problem
The latest versions of graphql-java has implemented https://github.com/graphql/graphql-spec/pull/1206
This allows a new location for directives
directive @onDirective on DIRECTIVE_DEFINITION
the standard @deprecated directives now allows itself to be on DIRECTIVE_DEFINITION
However if this modern schema is then represented to some other consumer who is on a graphql version that is older and this is very common right now) then they consumer will choke on the schema
To Reproduce
Print a schema on latest graphql-java (say 0.0.0-2026-03-18T00-52-57-e53ab1a. Consume that schema on a client running an older version of graphql-java (say 25.0)
** Design concerns **
Normally the version of graphql-java is localised to the running instance and hence this additive change would be ok but schema printing and introspection are ways in which schema can leave the runtime version of the server and need to be run on older versions.
I think there should be a "predicate" / "switch" mechanism that allows older versions (1 back say) of schema to be printed / produced.
- Vorherrschende Sprache
- Java
- Sterne
- 6.2k
- Forks
- 1.1k
- Ø Merge
- 2 T. 4 Std.
- Gemergte PRs (30 T.)
- 27
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus graphql-java/graphql-java
-
Guava CVE-2026-118042Offen
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 75/100
graphql-java/graphql-java#4530 · 2 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 3/5 Ein halber Tag Anfängerfreundlichkeit 42/100
graphql-java/graphql-java#4536 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 12/100
graphql-java/graphql-java#4497 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
Subscription event DataFetcherResult.extensions are missing from emitted ExecutionResultEvtl. vergeben @kalayciburak hat das vor 45 Tagen übernommen. Offen
Schwierigkeit 3/5 1-2 Tage Anfängerfreundlichkeit 68/100
graphql-java/graphql-java#4475 ·
Maintainer antworten meist innerhalb von 1 Tag
-
keep-open
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 48/100
graphql-java/graphql-java#4355 · 5 Kommentare ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in graphql-java/graphql-java
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
Dans-Plugins/Medieval-Roleplay-Engine#396 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 82/100
Maintainer antworten meist innerhalb von 1 Tag
-
LtByXsl throws NoSuchElementException when defect element has no text contentEvtl. vergeben Ein verknüpfter Pull Request ist offen oder bereits gemergt. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
objectionary/lints#1640 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 75/100
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
virtualcell/vcell#2193 ·
Maintainer antworten meist innerhalb von 1 Tag