8000 feat: implement gRPC datasource by Noroth · Pull Request #1146 · wundergraph/graphql-go-tools · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

feat: implement gRPC datasource #1146

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 64 commits into from
May 19, 2025

Conversation

Noroth
Copy link
Contributor
@Noroth Noroth commented May 8, 2025

This pull request introduces several updates to dependencies and adds initial gRPC support to the codebase. The changes include upgrading various libraries, integrating gRPC client functionality into the engine configuration, and adding new methods and tests to support these updates.

Dependency Updates:

  • Updated multiple dependencies in go.mod files across the project, including github.com/stretchr/testify, github.com/cespare/xxhash/v2, and golang.org/x/net, among others. These updates improve compatibility and security. [1] [2] [3] [4] [5]
  • Added new dependencies such as google.golang.org/grpc, github.com/hashicorp/go-plugin, and github.com/bufbuild/protocompile to support gRPC functionality and other features. [1] [2]

gRPC Integration:

  • Added a grpcClient field to federationEngineConfigFactoryOptions and FederationEngineConfigFactory structs in config_factory_federation.go to enable gRPC support. [1] [2]
  • Updated the NewFederationEngineConfigFactory function to initialize the grpcClient field. [1] [2]
  • Introduced gRPC-specific logic in the graphqlDataSourceGenerator to handle gRPC-based data sources. [1] [2]

Test Enhancements:

  • Updated tests in engine_config_test.go and execution_engine_test.go to include cases for gRPC client integration. This ensures the new functionality is thoroughly validated. [1] [2] [3] [4]

New Utility Methods:

  • Added a NewSchemaFromBytes method in schema.go to create schemas from byte slices, complementing the existing NewSchemaFromString method.

These changes collectively enhance the project's capabilities, particularly by introducing gRPC support, improving dependency management, and adding utility and test coverage.

@Noroth Noroth marked this pull request as ready for review May 15, 2025 13:23
@StevenACoffman
Copy link
Contributor

So excited! (also, thanks for updating gqlparser!)

Copy link
Collaborator
@StarpTech StarpTech left a comment

Choose a reason for hiding this comment

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

LGTM

@Noroth Noroth merged commit 146a552 into master May 19, 2025
9 checks passed
@Noroth Noroth deleted the ludwig/eng-6769-rest-subgraph-plugin-proxy branch May 19, 2025 11:26
Noroth pushed a commit that referenced this pull request May 19, 2025
🤖 I have created a release *beep* *boop*
---


##
[2.0.0-rc.179](v2.0.0-rc.178...v2.0.0-rc.179)
(2025-05-19)


### Features

* implement gRPC datasource
([#1146](#1146))
([146a552](146a552))


### Bug Fixes

* print indent once per level by default
([#1147](#1147))
([0f022e5](0f022e5)),
closes
[#405](#405)

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
@StevenACoffman
Copy link
Contributor

AAAAAAHHH! It's merged! I'm going to take it for a spin! Sooooo excited!

devsergiy pushed a commit that referenced this pull request Jun 5, 2025
🤖 I have created a release *beep* *boop*
---


##
[1.3.0](execution/v1.2.0...execution/v1.3.0)
(2025-06-05)


### Features

* add apollo router compat flag for invalid variable rendering
([#1067](#1067))
([e87961f](e87961f))
* add deprecated arguments support to introspection
([#1142](#1142))
([1ac2908](1ac2908))
* apollo-router-like non-ok http status errors
([#1072](#1072))
([e685c29](e685c29))
* differentiate between complete and close event types
([#1158](#1158))
([79f3f41](79f3f41))
* **engine:** mutex free subscription handling
([#1076](#1076))
([21be4ab](21be4ab))
* implement gRPC datasource
([#1146](#1146))
([146a552](146a552))
* update engine version for execution pkg
([#1171](#1171))
([9769beb](9769beb))


### Bug Fixes

* fix printing object value with optional fields
([#1065](#1065))
([5730d72](5730d72))
* handle scalar values for lists
([#1155](#1155))
([94031e5](94031e5))
* interface objects
([#1055](#1055))
([858d929](858d929))
* print indent once per level by default
([#1147](#1147))
([0f022e5](0f022e5)),
closes
[#405](#405)

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).
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.

5 participants
0