Skip to content

Groundwork to align type systems. - #8247

Merged
michaelstaib merged 17 commits into
mainfrom
mst/ts-alignment
Apr 28, 2025
Merged

Groundwork to align type systems.#8247
michaelstaib merged 17 commits into
mainfrom
mst/ts-alignment

Conversation

@michaelstaib

@michaelstaib michaelstaib commented Apr 15, 2025

Copy link
Copy Markdown
Member

This PR does some ground work in shifting the Hot Chocolate core over to the new type system abstractions we are using in Mutable and Fusion.

@michaelstaib
michaelstaib requested a review from Copilot April 28, 2025 15:59

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR aligns the type system by replacing legacy definition types with new configuration types across HotChocolate’s core, caching, and Apollo Federation projects. Key changes include the removal of the deprecated IOutputType interface, updated method signatures to use TypeSystemConfiguration over DefinitionBase, and systematic renaming of properties and methods from “Definition” to “Configuration” for consistency.

Reviewed Changes

Copilot reviewed 607 out of 608 changed files in this pull request and generated no comments.

Show a summary per file
File Description
src/HotChocolate/Core/src/Abstractions/Types/IOutputType.cs Removed the legacy IOutputType interface.
src/HotChocolate/Core/src/Abstractions/IHasReadOnlyContextData.cs Updated XML comments for clarity.
src/HotChocolate/Core/src/Abstractions/Execution/ListPostProcessor.cs Adjusted condition syntax with the new pattern matching style.
src/HotChocolate/Caching/... Updated method signatures and type references from Definition to Configuration.
src/HotChocolate/ApolloFederation/... Changed type references and method calls to use the new Configuration types across tests, directives, and resolvers.
src/HotChocolate/ApolloFederation/Resolvers/ArgumentParser.cs Modified NonNullType handling to use the updated NullableType property.
src/HotChocolate/ApolloFederation/FederationTypeInterceptor.cs Updated several method parameters and context data handling to reflect the new type system.
Files not reviewed (1)
  • src/HotChocolate/Core/src/Abstractions/HotChocolate.Abstractions.csproj: Language not supported
Comments suppressed due to low confidence (1)

src/HotChocolate/ApolloFederation/src/ApolloFederation/Resolvers/ArgumentParser.cs:33

  • Changing from 'nonNullType.Type' to 'nonNullType.NullableType' may affect how non-null types are handled; please verify that this change aligns with the updated type system semantics.
        type = type is NonNullType nonNullType ? nonNullType.NullableType : type;

@michaelstaib michaelstaib changed the title Type System Alignment Groundwork to align type systems. Apr 28, 2025
@michaelstaib
michaelstaib merged commit 10072ed into main Apr 28, 2025
@michaelstaib
michaelstaib deleted the mst/ts-alignment branch April 28, 2025 16:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants