Skip to content

Support directives on directive definitions - #4432

Open
andimarek wants to merge 1 commit into
masterfrom
directives-on-directive-definitions
Open

Support directives on directive definitions#4432
andimarek wants to merge 1 commit into
masterfrom
directives-on-directive-definitions

Conversation

@andimarek

Copy link
Copy Markdown
Member

Summary

  • support applied directives and directive extensions across SDL parsing, AST handling, registries, schema generation, and printing
  • expose directive deprecation and DIRECTIVE_DEFINITION through runtime schema APIs and introspection
  • validate missing bases, non-repeatable applications, illegal locations, and direct/indirect reference cycles

Implements the merged specification change from graphql/graphql-spec#1206.

Testing

  • JAVA_HOME=/home/andreas_marek/.jdks/jdk-25.0.2 ./gradlew test jacocoTestReport (5,735 tests)
  • JAVA_HOME=/home/andreas_marek/.jdks/jdk-25.0.2 ./gradlew testng (190 tests)
  • JAVA_HOME=/home/andreas_marek/.jdks/jdk-25.0.2 ./gradlew check -x test -x testng
  • local PR coverage-gate comparison: no per-class regressions

@github-actions

github-actions Bot commented Aug 3, 2026

Copy link
Copy Markdown
Contributor

Test Report

Test Results

Java Version Total Passed Failed Errors Skipped
Java 11 5925 (+22 🟢) 5869 (+22 🟢) 0 (±0) 0 (±0) 56 (±0)
Java 17 5925 (+22 🟢) 5868 (+22 🟢) 0 (±0) 0 (±0) 57 (±0)
Java 21 5925 (+22 🟢) 5868 (+22 🟢) 0 (±0) 0 (±0) 57 (±0)
Java 25 5925 (+22 🟢) 5868 (+22 🟢) 0 (±0) 0 (±0) 57 (±0)
jcstress 32 (±0) 32 (±0) 0 (±0) 0 (±0) 0 (±0)
Total 23732 (+88 🟢) 23505 (+88 🟢) 0 (±0) 0 (±0) 227 (±0)

Code Coverage (Java 25)

Metric Covered Missed Coverage vs Master
Lines 30021 3125 90.6% +0.1% 🟢
Branches 8765 1527 85.2% +0.1% 🟢
Methods 8042 1209 86.9% +0.1% 🟢

Changed Class Coverage (21 classes)

Class Line Branch Method
g.i.Introspection +0.1% 🟢 +0.3% 🟢 +0.1% 🟢
g.i.IntrospectionQueryBuilder ±0.0% +0.6% 🟢 ±0.0%
g.l.AstPrinter +0.1% 🟢 +0.1% 🟢 +0.1% 🟢
g.l.AstSorter
$1
±0.0% +100.0% 🟢 ±0.0%
g.l.Directive +3.2% 🟢 ±0.0% +5.9% 🟢
g.l.DirectiveDefinition +19.2% 🟢 ±0.0% +5.0% 🟢
g.l.DirectiveDefinition
$Builder
+1.1% 🟢 ±0.0% +1.6% 🟢
g.l.DirectiveExtensionDefinition +82.4% 🟢 ±0.0% +85.7% 🟢
g.l.DirectiveExtensionDefinition
$Builder
+74.2% 🟢 ±0.0% +63.6% 🟢
g.l.DirectiveLocation +4.3% 🟢 ±0.0% +8.3% 🟢
g.l.PrettyAstPrinter +0.2% 🟢 +2.0% 🟢 +0.1% 🟢
g.p.GraphqlAntlrToLanguage ±0.0% +0.1% 🟢 ±0.0%
g.s.GraphQLDirective +3.1% 🟢 ±0.0% +6.7% 🟢
g.s.GraphQLDirective
$Builder
+2.4% 🟢 ±0.0% +2.8% 🟢
g.s.GraphqlDirectivesContainerTypeBuilder +14.7% 🟢 +50.0% 🟢 +18.2% 🟢
g.s.i.e.DirectiveExtensionDirectiveRedefinitionError +100.0% 🟢 ±0.0% +100.0% 🟢
g.s.i.e.DirectiveExtensionMissingBaseError +100.0% 🟢 ±0.0% +100.0% 🟢
g.s.i.SchemaGeneratorAppliedDirectiveHelper +0.2% 🟢 +0.6% 🟢 +0.5% 🟢
g.s.i.SchemaPrinter ±0.0% +0.1% 🟢 ±0.0%
g.s.i.SchemaTypeExtensionsChecker +0.3% 🟢 ±0.0% +0.9% 🟢
g.s.i.TypeDefinitionRegistry +0.5% 🟢 +0.8% 🟢 +0.4% 🟢

Full HTML report: build artifact jacoco-html-report

Updated: 2026-08-03 01:33:58 UTC

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant