From 69b2c11746c14f8a5802bb53e9914cbd085e8076 Mon Sep 17 00:00:00 2001 From: dondonz <13839920+dondonz@users.noreply.github.com> Date: Sun, 17 Aug 2025 10:20:07 +1000 Subject: [PATCH 1/3] Add nullunmarked to builders --- .../graphql/analysis/QueryComplexityInfo.java | 2 ++ .../java/graphql/analysis/QueryDepthInfo.java | 2 ++ .../java/graphql/analysis/QueryTransformer.java | 2 ++ .../java/graphql/analysis/QueryTraverser.java | 2 ++ .../graphql/extensions/ExtensionsBuilder.java | 2 ++ .../IntrospectionQueryBuilder.java | 2 ++ .../schema/GraphQLEnumValueDefinition.java | 2 ++ .../graphql/schema/GraphQLFieldDefinition.java | 2 ++ .../graphql/schema/GraphQLInputObjectField.java | 2 ++ .../graphql/schema/GraphQLInputObjectType.java | 2 ++ .../graphql/schema/GraphQLInterfaceType.java | 2 ++ .../java/graphql/schema/GraphQLObjectType.java | 2 ++ .../java/graphql/schema/GraphQLScalarType.java | 2 ++ .../java/graphql/schema/GraphQLUnionType.java | 2 ++ .../java/graphql/schema/idl/RuntimeWiring.java | 2 ++ .../querygenerator/QueryGeneratorOptions.java | 2 ++ .../archunit/JSpecifyAnnotationsCheck.groovy | 17 ----------------- 17 files changed, 32 insertions(+), 17 deletions(-) diff --git a/src/main/java/graphql/analysis/QueryComplexityInfo.java b/src/main/java/graphql/analysis/QueryComplexityInfo.java index f4e86d0be1..29914e960a 100644 --- a/src/main/java/graphql/analysis/QueryComplexityInfo.java +++ b/src/main/java/graphql/analysis/QueryComplexityInfo.java @@ -3,6 +3,7 @@ import graphql.PublicApi; import graphql.execution.instrumentation.parameters.InstrumentationExecuteOperationParameters; import graphql.execution.instrumentation.parameters.InstrumentationValidationParameters; +import org.jspecify.annotations.NullUnmarked; /** * The query complexity info. @@ -62,6 +63,7 @@ public static Builder newQueryComplexityInfo() { } @PublicApi + @NullUnmarked public static class Builder { private int complexity; diff --git a/src/main/java/graphql/analysis/QueryDepthInfo.java b/src/main/java/graphql/analysis/QueryDepthInfo.java index 38550b4e01..a8d4a0ac03 100644 --- a/src/main/java/graphql/analysis/QueryDepthInfo.java +++ b/src/main/java/graphql/analysis/QueryDepthInfo.java @@ -1,6 +1,7 @@ package graphql.analysis; import graphql.PublicApi; +import org.jspecify.annotations.NullUnmarked; /** * The query depth info. @@ -38,6 +39,7 @@ public static Builder newQueryDepthInfo() { } @PublicApi + @NullUnmarked public static class Builder { private int depth; diff --git a/src/main/java/graphql/analysis/QueryTransformer.java b/src/main/java/graphql/analysis/QueryTransformer.java index eed41818e9..f1a22df186 100644 --- a/src/main/java/graphql/analysis/QueryTransformer.java +++ b/src/main/java/graphql/analysis/QueryTransformer.java @@ -13,6 +13,7 @@ import java.util.LinkedHashMap; import java.util.Map; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; import static graphql.language.AstNodeAdapter.AST_NODE_ADAPTER; @@ -98,6 +99,7 @@ public static Builder newQueryTransformer() { } @PublicApi + @NullUnmarked public static class Builder { private GraphQLSchema schema; private Map variables; diff --git a/src/main/java/graphql/analysis/QueryTraverser.java b/src/main/java/graphql/analysis/QueryTraverser.java index 2f543e5b43..c0ace1082f 100644 --- a/src/main/java/graphql/analysis/QueryTraverser.java +++ b/src/main/java/graphql/analysis/QueryTraverser.java @@ -23,6 +23,7 @@ import java.util.List; import java.util.Locale; import java.util.Map; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; import static graphql.Assert.assertShouldNeverHappen; @@ -215,6 +216,7 @@ public static Builder newQueryTraverser() { } @PublicApi + @NullUnmarked public static class Builder { private GraphQLSchema schema; private Document document; diff --git a/src/main/java/graphql/extensions/ExtensionsBuilder.java b/src/main/java/graphql/extensions/ExtensionsBuilder.java index 69bd85c473..730dec1b5e 100644 --- a/src/main/java/graphql/extensions/ExtensionsBuilder.java +++ b/src/main/java/graphql/extensions/ExtensionsBuilder.java @@ -11,6 +11,7 @@ import java.util.List; import java.util.Map; import java.util.concurrent.CopyOnWriteArrayList; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; @@ -26,6 +27,7 @@ * is placed in the {@link ExecutionResult} */ @PublicApi +@NullUnmarked public class ExtensionsBuilder { // thread safe since there can be many changes say in DFs across threads diff --git a/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java b/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java index d4d37005b0..45e559527a 100644 --- a/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java +++ b/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java @@ -11,6 +11,7 @@ import java.util.List; import java.util.Objects; +import org.jspecify.annotations.NullUnmarked; import static graphql.language.Argument.newArgument; import static graphql.language.Document.newDocument; @@ -26,6 +27,7 @@ * by the options you specify */ @PublicApi +@NullUnmarked public class IntrospectionQueryBuilder { public static class Options { diff --git a/src/main/java/graphql/schema/GraphQLEnumValueDefinition.java b/src/main/java/graphql/schema/GraphQLEnumValueDefinition.java index 4aba114c7b..ec9529e34b 100644 --- a/src/main/java/graphql/schema/GraphQLEnumValueDefinition.java +++ b/src/main/java/graphql/schema/GraphQLEnumValueDefinition.java @@ -12,6 +12,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; import static graphql.Assert.assertValidName; @@ -193,6 +194,7 @@ public static Builder newEnumValueDefinition(GraphQLEnumValueDefinition existing } @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private Object value; private String deprecationReason; diff --git a/src/main/java/graphql/schema/GraphQLFieldDefinition.java b/src/main/java/graphql/schema/GraphQLFieldDefinition.java index 991da1793d..0d2452b119 100644 --- a/src/main/java/graphql/schema/GraphQLFieldDefinition.java +++ b/src/main/java/graphql/schema/GraphQLFieldDefinition.java @@ -15,6 +15,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import java.util.function.UnaryOperator; import static graphql.Assert.assertNotNull; @@ -256,6 +257,7 @@ public static Builder newFieldDefinition() { } @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private GraphQLOutputType type; diff --git a/src/main/java/graphql/schema/GraphQLInputObjectField.java b/src/main/java/graphql/schema/GraphQLInputObjectField.java index 14ce1cf591..13488d9b95 100644 --- a/src/main/java/graphql/schema/GraphQLInputObjectField.java +++ b/src/main/java/graphql/schema/GraphQLInputObjectField.java @@ -15,6 +15,7 @@ import java.util.Locale; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; import static graphql.Assert.assertValidName; @@ -266,6 +267,7 @@ public static Builder newInputObjectField() { } @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private InputValueWithState defaultValue = InputValueWithState.NOT_SET; private GraphQLInputType type; diff --git a/src/main/java/graphql/schema/GraphQLInputObjectType.java b/src/main/java/graphql/schema/GraphQLInputObjectType.java index e10eddadb7..f5d15999e2 100644 --- a/src/main/java/graphql/schema/GraphQLInputObjectType.java +++ b/src/main/java/graphql/schema/GraphQLInputObjectType.java @@ -19,6 +19,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import java.util.function.UnaryOperator; import static graphql.Assert.assertNotNull; @@ -253,6 +254,7 @@ public static Builder newInputObject() { } @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private InputObjectTypeDefinition definition; private List extensionDefinitions = emptyList(); diff --git a/src/main/java/graphql/schema/GraphQLInterfaceType.java b/src/main/java/graphql/schema/GraphQLInterfaceType.java index 5dff23c40a..dac766288e 100644 --- a/src/main/java/graphql/schema/GraphQLInterfaceType.java +++ b/src/main/java/graphql/schema/GraphQLInterfaceType.java @@ -17,6 +17,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import java.util.function.UnaryOperator; import static graphql.Assert.assertNotNull; @@ -258,6 +259,7 @@ public static Builder newInterface(GraphQLInterfaceType existing) { @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private TypeResolver typeResolver; private InterfaceTypeDefinition definition; diff --git a/src/main/java/graphql/schema/GraphQLObjectType.java b/src/main/java/graphql/schema/GraphQLObjectType.java index f6104266a4..dfba44b805 100644 --- a/src/main/java/graphql/schema/GraphQLObjectType.java +++ b/src/main/java/graphql/schema/GraphQLObjectType.java @@ -17,6 +17,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import java.util.function.UnaryOperator; import static graphql.Assert.assertNotNull; @@ -247,6 +248,7 @@ public static Builder newObject(GraphQLObjectType existing) { } @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private ObjectTypeDefinition definition; private List extensionDefinitions = emptyList(); diff --git a/src/main/java/graphql/schema/GraphQLScalarType.java b/src/main/java/graphql/schema/GraphQLScalarType.java index fccfb0013b..bf5442cda9 100644 --- a/src/main/java/graphql/schema/GraphQLScalarType.java +++ b/src/main/java/graphql/schema/GraphQLScalarType.java @@ -14,6 +14,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; import static graphql.Assert.assertValidName; @@ -214,6 +215,7 @@ public static Builder newScalar(GraphQLScalarType existing) { @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private Coercing coercing; private ScalarTypeDefinition definition; diff --git a/src/main/java/graphql/schema/GraphQLUnionType.java b/src/main/java/graphql/schema/GraphQLUnionType.java index 6910084afd..23a7e9f195 100644 --- a/src/main/java/graphql/schema/GraphQLUnionType.java +++ b/src/main/java/graphql/schema/GraphQLUnionType.java @@ -16,6 +16,7 @@ import java.util.List; import java.util.Map; import java.util.function.Consumer; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotEmpty; import static graphql.Assert.assertNotNull; @@ -249,6 +250,7 @@ public static Builder newUnionType(GraphQLUnionType existing) { } @PublicApi + @NullUnmarked public static class Builder extends GraphqlDirectivesContainerTypeBuilder { private TypeResolver typeResolver; private UnionTypeDefinition definition; diff --git a/src/main/java/graphql/schema/idl/RuntimeWiring.java b/src/main/java/graphql/schema/idl/RuntimeWiring.java index 42c4894e2a..88bdfc4cd1 100644 --- a/src/main/java/graphql/schema/idl/RuntimeWiring.java +++ b/src/main/java/graphql/schema/idl/RuntimeWiring.java @@ -16,6 +16,7 @@ import java.util.Map; import java.util.function.Consumer; import java.util.function.UnaryOperator; +import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; import static graphql.schema.visibility.DefaultGraphqlFieldVisibility.DEFAULT_FIELD_VISIBILITY; @@ -175,6 +176,7 @@ public GraphqlTypeComparatorRegistry getComparatorRegistry() { } @PublicApi + @NullUnmarked public static class Builder { private final Map> dataFetchers = new LinkedHashMap<>(); private final Map defaultDataFetchers = new LinkedHashMap<>(); diff --git a/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java b/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java index bc3fdeae65..6015068579 100644 --- a/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java +++ b/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java @@ -5,6 +5,7 @@ import graphql.schema.GraphQLFieldsContainer; import java.util.function.Predicate; +import org.jspecify.annotations.NullUnmarked; /** * Options for the {@link QueryGenerator} class. @@ -62,6 +63,7 @@ public Predicate getFilterFieldDefinitionPredicate() { * Builder for {@link QueryGeneratorOptions}. */ @ExperimentalApi + @NullUnmarked public static class QueryGeneratorOptionsBuilder { private int maxFieldCount = MAX_FIELD_COUNT_LIMIT; diff --git a/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy b/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy index c32efb2826..3e0cb850d1 100644 --- a/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy +++ b/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy @@ -35,15 +35,11 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.analysis.MaxQueryDepthInstrumentation", "graphql.analysis.QueryComplexityCalculator", "graphql.analysis.QueryComplexityInfo", - "graphql.analysis.QueryComplexityInfo\$Builder", "graphql.analysis.QueryDepthInfo", - "graphql.analysis.QueryDepthInfo\$Builder", "graphql.analysis.QueryReducer", "graphql.analysis.QueryTransformer", - "graphql.analysis.QueryTransformer\$Builder", "graphql.analysis.QueryTraversalOptions", "graphql.analysis.QueryTraverser", - "graphql.analysis.QueryTraverser\$Builder", "graphql.analysis.QueryVisitor", "graphql.analysis.QueryVisitorFieldArgumentEnvironment", "graphql.analysis.QueryVisitorFieldArgumentInputValue", @@ -114,7 +110,6 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.execution.preparsed.persisted.PersistedQueryNotFound", "graphql.execution.reactive.DelegatingSubscription", "graphql.execution.reactive.SubscriptionPublisher", - "graphql.extensions.ExtensionsBuilder", "graphql.incremental.DeferPayload", "graphql.incremental.DelayedIncrementalPartialResult", "graphql.incremental.DelayedIncrementalPartialResultImpl", @@ -125,7 +120,6 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.introspection.GoodFaithIntrospection", "graphql.introspection.Introspection", "graphql.introspection.IntrospectionQuery", - "graphql.introspection.IntrospectionQueryBuilder", "graphql.introspection.IntrospectionResultToSchema", "graphql.introspection.IntrospectionWithDirectivesSupport", "graphql.introspection.IntrospectionWithDirectivesSupport\$DirectivePredicateEnvironment", @@ -165,7 +159,6 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.language.NamedNode", "graphql.language.Node", "graphql.language.NodeChildrenContainer", - "graphql.language.NodeDirectivesBuilder", "graphql.language.NodeParentTree", "graphql.language.NodeTraverser", "graphql.language.NodeVisitor", @@ -240,21 +233,16 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.schema.GraphQLDirectiveContainer", "graphql.schema.GraphQLEnumType", "graphql.schema.GraphQLEnumValueDefinition", - "graphql.schema.GraphQLEnumValueDefinition\$Builder", "graphql.schema.GraphQLFieldDefinition", - "graphql.schema.GraphQLFieldDefinition\$Builder", "graphql.schema.GraphQLFieldsContainer", "graphql.schema.GraphQLImplementingType", "graphql.schema.GraphQLInputFieldsContainer", "graphql.schema.GraphQLInputObjectField", - "graphql.schema.GraphQLInputObjectField\$Builder", "graphql.schema.GraphQLInputObjectType", - "graphql.schema.GraphQLInputObjectType\$Builder", "graphql.schema.GraphQLInputSchemaElement", "graphql.schema.GraphQLInputType", "graphql.schema.GraphQLInputValueDefinition", "graphql.schema.GraphQLInterfaceType", - "graphql.schema.GraphQLInterfaceType\$Builder", "graphql.schema.GraphQLList", "graphql.schema.GraphQLModifiedType", "graphql.schema.GraphQLNamedInputType", @@ -264,10 +252,8 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.schema.GraphQLNonNull", "graphql.schema.GraphQLNullableType", "graphql.schema.GraphQLObjectType", - "graphql.schema.GraphQLObjectType\$Builder", "graphql.schema.GraphQLOutputType", "graphql.schema.GraphQLScalarType", - "graphql.schema.GraphQLScalarType\$Builder", "graphql.schema.GraphQLSchema", "graphql.schema.GraphQLSchemaElement", "graphql.schema.GraphQLType", @@ -276,7 +262,6 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.schema.GraphQLTypeVisitor", "graphql.schema.GraphQLTypeVisitorStub", "graphql.schema.GraphQLUnionType", - "graphql.schema.GraphQLUnionType\$Builder", "graphql.schema.GraphQLUnmodifiedType", "graphql.schema.GraphqlElementParentTree", "graphql.schema.GraphqlTypeComparatorEnvironment", @@ -302,7 +287,6 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.schema.idl.MapEnumValuesProvider", "graphql.schema.idl.NaturalEnumValuesProvider", "graphql.schema.idl.RuntimeWiring", - "graphql.schema.idl.RuntimeWiring\$Builder", "graphql.schema.idl.SchemaDirectiveWiring", "graphql.schema.idl.SchemaDirectiveWiringEnvironment", "graphql.schema.idl.SchemaGenerator", @@ -330,7 +314,6 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.util.NodeZipper", "graphql.util.querygenerator.QueryGenerator", "graphql.util.querygenerator.QueryGeneratorOptions", - "graphql.util.querygenerator.QueryGeneratorOptions\$QueryGeneratorOptionsBuilder", "graphql.util.querygenerator.QueryGeneratorResult", "graphql.util.TraversalControl", "graphql.util.TraverserContext", From 838a716cde079242a68c5ccf042afe36320dfdd0 Mon Sep 17 00:00:00 2001 From: dondonz <13839920+dondonz@users.noreply.github.com> Date: Sun, 17 Aug 2025 10:26:42 +1000 Subject: [PATCH 2/3] Remove unusual builders with getters --- src/main/java/graphql/extensions/ExtensionsBuilder.java | 1 - .../java/graphql/introspection/IntrospectionQueryBuilder.java | 1 - src/main/java/graphql/language/NodeDirectivesBuilder.java | 2 -- .../graphql/util/querygenerator/QueryGeneratorOptions.java | 1 - .../groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy | 4 ++++ 5 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/graphql/extensions/ExtensionsBuilder.java b/src/main/java/graphql/extensions/ExtensionsBuilder.java index 730dec1b5e..7272f9f544 100644 --- a/src/main/java/graphql/extensions/ExtensionsBuilder.java +++ b/src/main/java/graphql/extensions/ExtensionsBuilder.java @@ -27,7 +27,6 @@ * is placed in the {@link ExecutionResult} */ @PublicApi -@NullUnmarked public class ExtensionsBuilder { // thread safe since there can be many changes say in DFs across threads diff --git a/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java b/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java index 45e559527a..3077ef0ffd 100644 --- a/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java +++ b/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java @@ -27,7 +27,6 @@ * by the options you specify */ @PublicApi -@NullUnmarked public class IntrospectionQueryBuilder { public static class Options { diff --git a/src/main/java/graphql/language/NodeDirectivesBuilder.java b/src/main/java/graphql/language/NodeDirectivesBuilder.java index d7a7ee7214..3694165fab 100644 --- a/src/main/java/graphql/language/NodeDirectivesBuilder.java +++ b/src/main/java/graphql/language/NodeDirectivesBuilder.java @@ -10,6 +10,4 @@ public interface NodeDirectivesBuilder extends NodeBuilder { NodeDirectivesBuilder directives(List directives); NodeDirectivesBuilder directive(Directive directive); - - } diff --git a/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java b/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java index 6015068579..79f486d4b0 100644 --- a/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java +++ b/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java @@ -63,7 +63,6 @@ public Predicate getFilterFieldDefinitionPredicate() { * Builder for {@link QueryGeneratorOptions}. */ @ExperimentalApi - @NullUnmarked public static class QueryGeneratorOptionsBuilder { private int maxFieldCount = MAX_FIELD_COUNT_LIMIT; diff --git a/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy b/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy index 3e0cb850d1..95dc0cc435 100644 --- a/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy +++ b/src/test/groovy/graphql/archunit/JSpecifyAnnotationsCheck.groovy @@ -110,6 +110,7 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.execution.preparsed.persisted.PersistedQueryNotFound", "graphql.execution.reactive.DelegatingSubscription", "graphql.execution.reactive.SubscriptionPublisher", + "graphql.extensions.ExtensionsBuilder", "graphql.incremental.DeferPayload", "graphql.incremental.DelayedIncrementalPartialResult", "graphql.incremental.DelayedIncrementalPartialResultImpl", @@ -120,6 +121,7 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.introspection.GoodFaithIntrospection", "graphql.introspection.Introspection", "graphql.introspection.IntrospectionQuery", + "graphql.introspection.IntrospectionQueryBuilder", "graphql.introspection.IntrospectionResultToSchema", "graphql.introspection.IntrospectionWithDirectivesSupport", "graphql.introspection.IntrospectionWithDirectivesSupport\$DirectivePredicateEnvironment", @@ -159,6 +161,7 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.language.NamedNode", "graphql.language.Node", "graphql.language.NodeChildrenContainer", + "graphql.language.NodeDirectivesBuilder", "graphql.language.NodeParentTree", "graphql.language.NodeTraverser", "graphql.language.NodeVisitor", @@ -314,6 +317,7 @@ class JSpecifyAnnotationsCheck extends Specification { "graphql.util.NodeZipper", "graphql.util.querygenerator.QueryGenerator", "graphql.util.querygenerator.QueryGeneratorOptions", + "graphql.util.querygenerator.QueryGeneratorOptions\$QueryGeneratorOptionsBuilder", "graphql.util.querygenerator.QueryGeneratorResult", "graphql.util.TraversalControl", "graphql.util.TraverserContext", From 0b63c84cd0c4b5866c41686958f6dd1b876ca480 Mon Sep 17 00:00:00 2001 From: dondonz <13839920+dondonz@users.noreply.github.com> Date: Sun, 17 Aug 2025 10:30:35 +1000 Subject: [PATCH 3/3] Tidy up --- src/main/java/graphql/extensions/ExtensionsBuilder.java | 1 - .../java/graphql/introspection/IntrospectionQueryBuilder.java | 1 - .../java/graphql/util/querygenerator/QueryGeneratorOptions.java | 1 - 3 files changed, 3 deletions(-) diff --git a/src/main/java/graphql/extensions/ExtensionsBuilder.java b/src/main/java/graphql/extensions/ExtensionsBuilder.java index 7272f9f544..69bd85c473 100644 --- a/src/main/java/graphql/extensions/ExtensionsBuilder.java +++ b/src/main/java/graphql/extensions/ExtensionsBuilder.java @@ -11,7 +11,6 @@ import java.util.List; import java.util.Map; import java.util.concurrent.CopyOnWriteArrayList; -import org.jspecify.annotations.NullUnmarked; import static graphql.Assert.assertNotNull; diff --git a/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java b/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java index 3077ef0ffd..d4d37005b0 100644 --- a/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java +++ b/src/main/java/graphql/introspection/IntrospectionQueryBuilder.java @@ -11,7 +11,6 @@ import java.util.List; import java.util.Objects; -import org.jspecify.annotations.NullUnmarked; import static graphql.language.Argument.newArgument; import static graphql.language.Document.newDocument; diff --git a/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java b/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java index 79f486d4b0..bc3fdeae65 100644 --- a/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java +++ b/src/main/java/graphql/util/querygenerator/QueryGeneratorOptions.java @@ -5,7 +5,6 @@ import graphql.schema.GraphQLFieldsContainer; import java.util.function.Predicate; -import org.jspecify.annotations.NullUnmarked; /** * Options for the {@link QueryGenerator} class.