Spec coverage checklist
Open
@milessabin is already working on this.
Since Dec 19, 2023.
conformance
- Dominant language
- Scala
- Stars
- 189
- Forks
- 32
- Avg merge
- 18h 31m
- Merged PRs (30d)
- 37
Description
Current coverage of the GraphQL Specification, June 2018.
- 2 Language
- 2.1 Source Text
- 2.1.1 Unicode
- 2.1.2 White Space
- 2.1.3 Line Terminators
- 2.1.4 Comments
- 2.1.5 Insignificant Commas
- 2.1.6 Lexical Tokens
- 2.1.7 Ignored Tokens
- 2.1.8 Punctuators
- 2.1.9 Names
- 2.2 Document
- 2.3 Operations
- 2.4 Selection Sets
- 2.5 Fields
- 2.6 Arguments
- 2.7 Field Alias
- 2.8 Fragments
- 2.8.1 Type Conditions
- 2.8.2 Inline Fragments
- 2.9 Input Values
- 2.9.1 Int Value
- 2.9.2 Float Value
- 2.9.3 Boolean Value
- 2.9.4 String Value
- 2.9.5 Null Value
- 2.9.6 Enum Value
- 2.9.7 List Value
- 2.9.8 Input Object Values
- 2.10 Variables
- 2.11 Type References
- 2.12 Directives
- 2.1 Source Text
- 3 Type System
- 3.1 Type System Extensions
- 3.2 Schema
- 3.2.1 Root Operation Types
- 3.2.2 Schema Extension
- 3.3 Descriptions
- 3.4 Types
- 3.4.1 Wrapping Types
- 3.4.2 Input and Output Types
- 3.4.3 Type Extensions
- 3.5 Scalars
- 3.5.1 Int
- 3.5.2 Float
- 3.5.3 String
- 3.5.4 Boolean
- 3.5.5 ID
- 3.5.6 Scalar Extensions
- 3.6 Objects
- 3.6.1 Field Arguments
- 3.6.2 Field Deprecation
- 3.6.3 Object Extensions
- 3.7 Interfaces
- 3.7.1 Interface Extensions
- 3.8 Unions
- 3.8.1 Union Extensions
- 3.9 Enums
- 3.9.1 Enum Extensions
- 3.10 Input Objects
- 3.10.1 Input Object Extensions
- 3.11 List
- 3.12 Non-Null
- 3.12.1 Combining List and Non-Null
- 3.13 Directives
- 3.13.1
@skip - 3.13.2
@include - 3.13.3
@deprecated
- 3.13.1
- 4 Introspection
- 4.1 Reserved Names
- 4.2 Documentation
- 4.3 Deprecation
- 4.4 Type Name Introspection
- 4.5 Schema Introspection
- 4.5.1 The __Type Type
- 4.5.2 Type Kinds
- 4.5.2.1 Scalar
- 4.5.2.2 Object
- 4.5.2.3 Union
- 4.5.2.4 Interface
- 4.5.2.5 Enum
- 4.5.2.6 Input Object
- 4.5.2.7 List
- 4.5.2.8 Non-Null
- 4.5.3 The __Field Type
- 4.5.4 The __InputValue Type
- 4.5.5 The __EnumValue Type
- 4.5.6 The __Directive Type
- 5 Validation
- 5.1 Documents
- 5.1.1 Executable Definitions
- 5.2 Operations
- 5.2.1 Named Operation Definitions
- 5.2.1.1 Operation Name Uniqueness
- 5.2.2 Anonymous Operation Definitions
- 5.2.2.1 Lone Anonymous Operation
- 5.2.3 Subscription Operation Definitions
- 5.2.3.1 Single root field
- 5.2.1 Named Operation Definitions
- 5.3 Fields
- 5.3.1 Field Selections on Objects, Interfaces, and Unions Types
- 5.3.2 Field Selection Merging
- 5.3.3 Leaf Field Selections
- 5.4 Arguments
- 5.4.1 Argument Names
- 5.4.2 Argument Uniqueness
- 5.4.2.1 Required Arguments
- 5.5 Fragments
- 5.5.1 Fragment Declarations
- 5.5.1.1 Fragment Name Uniqueness
- 5.5.1.2 Fragment Spread Type Existence
- 5.5.1.3 Fragments On Composite Types
- 5.5.1.4 Fragments Must Be Used
- 5.5.2 Fragment Spreads
- 5.5.2.1 Fragment spread target defined
- 5.5.2.2 Fragment spreads must not form cycles
- 5.5.2.3 Fragment spread is possible
- 5.5.2.3.1 Object Spreads In Object Scope
- 5.5.2.3.2 Abstract Spreads in Object Scope
- 5.5.2.3.3 Object Spreads In Abstract Scope
- 5.5.2.3.4 Abstract Spreads in Abstract Scope
- 5.5.1 Fragment Declarations
- 5.6 Values
- 5.6.1 Values of Correct Type
- 5.6.2 Input Object Field Names
- 5.6.3 Input Object Field Uniqueness
- 5.6.4 Input Object Required Fields
- 5.7 Directives
- 5.7.1 Directives Are Defined
- 5.7.2 Directives Are In Valid Locations
- 5.7.3 Directives Are Unique Per Location
- 5.8 Variables
- 5.8.1 Variable Uniqueness
- 5.8.2 Variables Are Input Types
- 5.8.3 All Variable Uses Defined
- 5.8.4 All Variables Used
- 5.8.5 All Variable Usages are Allowed
- 5.1 Documents
- 6 Execution
- 6.1 Executing Requests
- 6.1.1 Validating Requests
- 6.1.2 Coercing Variable Values
- 6.2 Executing Operations
- 6.2.1 Query
- 6.2.2 Mutation
- 6.2.3 Subscription
- 6.2.3.1 Source Stream
- 6.2.3.2 Response Stream
- 6.2.3.3 Unsubscribe
- 6.3 Executing Selection Sets
- 6.3.1 Normal and Serial Execution
- 6.3.2 Field Collection
- 6.4 Executing Fields
- 6.4.1 Coercing Field Arguments
- 6.4.2 Value Resolution
- 6.4.3 Value Completion
- 6.4.4 Errors and Non-Nullability
- 6.1 Executing Requests
- 7 Response
- 7.1 Response Format
- 7.1.1 Data
- 7.1.2 Errors
- 7.2 Serialization Format
- 7.2.1 JSON Serialization
- 7.2.2 Serialized Map Ordering
- 7.1 Response Format
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.