Closed
Description
GraphQL-Mesh roadmap
💡 This page's content and the list of tasks is synced automatically from The Guild's Notion. We are open sourcing our roadmap and tasks because we wish to build tools in the public, and allow developers to take part in the process of shaping the future of this library.
🚀 Feel free to share your thoughts, feedback and ideas with us.
👍 If you wish to show interest and help us prioritize tasks, use the 👍 on the issue.
v1
- Convert Fed Supergraph to Fusion
- Type-safe resolvers as in v0
- gRPC Transport + Loader
-
additionalTypDefs
parsing errors are silently discarded #5731 - Introduce new core package for runtime #6031
Future
- Move users to Mesh v1
- Content-Length is not passed
- Compose Federation Subgraphs to our Supergraph spec
- Experiment Mesh v1 in Acorns GW
- Clean legacy code in Mesh v1
- Help Productboard with Mesh v1
- Issue with nested recursive input types due to JIT
- Memory usage + Latency in Azure
- Reorganize the directories, and move legacy Mesh to “legacy” folder
- Datadog tracing
- Reproduce HTTP/2 + Render issue
- GraphClient with Fusion
- Document modularization of Mesh Config file
- Document Omnigraph OpenAPI as a spec
- gRPC Transport + Loader
- OData Handler Refactor and v1 Transport
- Create benchmark comparing Apollo Router, Yoga + Gateway and Apollo Server + Gateway
- Create REST to GraphQL specification
- Meeting with Glassdoor to get feedback before v1
- Update charly’s examples
- Write a blog post about the optimizations done in Mesh
- Migrate old @whatwg-node/router to FETS in HTTP Handler
- Publish Custom Fetch as a separate NPM Package
- Rewrite all caching related docs on Envelop, Yoga and Mesh
- Deploy the latest GraphQL Mesh to production
- Document this
- Better document NewRelic plugin
- Migrate and use GraphQL Mesh
- A question about Mesh returning 401 in case of auth error
- Complete JSON Schema use case
- Hoist Transform issue
- Investigate Next.js Edge Runtime support
- Show metrics / show outgoing requests plugin (inspire by Insomnia?)
- Enhance Mesh error messages
- Create Mesh as an Apollo REST Data Source
- Drop Node.js 14 support in our libraries
- Enrich docs: Azure deployment
- When polling is enabled, Mesh gets the old schema on each server start #6840
- Supergraph handler fails with same field name #6671 👍 1
- Adding a computed property with a non-primitive/non-scalar return type breaks the schema when stitching graphql-tools#4956 👍 2
- fix: Allow deep merging objects in allOf operations #5643 ❤️ 1
- OpenAPI Handler overhaul #4278 👀 3
- General question about the Apollo Federation Transform #4508
- 0.46.1 results in: The directive "@key" can only be used once at this location. #3449
- Support for ES Modules #2891 👍 3
- ESM Support #4285
- Mesh SDK boilerplate generation & nx monorepo integration #2103 (comment) 👍 5 👀 2
- Skip any action on missing New Relic source segments. #5307
- Incorrect documentation, how to do it correctly? charlypoly/graphql-mesh-docs-first-gateway#31
- GraphQL - Subscription Endpoint not being Interpolated #5403
- Neo4j Source Handler: Unable to Use
source
parameter in .meshrc.yaml #5392 - Serialize Headers plugin #5333
- Algolia cleanup #5332
- propagate load options from the config to the gRPC handler #5278
- feat(json-schema/oas/raml):
timeout
option #5261 - fix(string-interpolation): operation headers not interpolated when req.headers is a HeaderMap #5227
- enhance(json-schema): handle discriminator mapping #5206
- Fix issue with naming-convention in bare mode and nested Input types #4896
- Ignore non-method fields in Path Object Item #4934
- fix(build): use correct path for relative imports of external modules + bracket notation #2974
- feat(options) postgraphile: add contextOptions to allow custom jwt claims #3915
- Bare resolvers in incontext SDK #4731
- try to fix some peer deps #5748
- Use
node-libcurl
#5680 - Add unit tests for New Relic plugin #5334
- Unable to resolve the abstract type "BrandBaseConfigVo" in GraphQL Mesh #5320
- Cannot read properties of undefined (reading 'get') #5312 👍 3
- MySQL auto increment field #5350
- Use metadata to create gRPC client #5836 👍 1
- In interpolator, applyRule function does not replace an argument if "dataToReplace" is 0 #5817
- Can not get deprecated args and inputFields from GraphQL sources #5692
- Document custom endpoints #5597
- Documentation for custom PubSub #5556 👀 1
- Doc: Securing your gateway #4534
- Improve doc of additionalResolvers sourceArgs #3115 👍 2
- DOCS: Batching programmatically #4606
- Update First Gateway Example #4707
- Better Error Handling #4286
- Docs Roadmap #4280
- Improve docs for
customFetch
usage #4110 👍 5 - Error handling guide #4802
- gRPC handler timeout #5295
- GraphQL handler: environment variables not working for endpoint for subscriptions/WebSocket calls #5296
- the imports are not properly generated for
customFetch
which fail running in docker environment #5297 -
connectionParams
for Subscriptions are not resolved #5774 👀 1 - Document
MeshCache
usage from the context #5768 - SOAP handler not working for source with authentication. #5650
- All GQL fields are nullable when source is a Protobuf schema. #5590 👍 1 👀 1
- Naming convention and rename transforms make requests fail for nested object in the input variables with gRPC sources #5469 👍 1 👀 1
- gRPC handler: load defaults option not working #5277
- Mesh and SvelteKit error #5275
- The rateLimit plugin is returning data when multiple queries or fragment are requested #5232
- All DateTime scalars are converted to UTC #5229
- Unable to authenticate to SOAP API #472 👍 1
- SDK: naming convention transform camelCase not working for inputTypes #565
- Unable to merge field selection in one resolver with selectionSet in another resolver #591
- Feature request: specify configName for input when generating TypeScript types #882
- GraphQL Mesh SDK Failed (1 errors): Unknown type \"ID\". #895
- Allow FileDescriptorSets in place of individual .proto files #1071
- additionalResolvers child field arguments aren't passed through to the backend / all fields are requested #1257
- Passing subscription queries to sources does not work #1472 👍 1
- Adding prefix transforner deactivate caching #1548
- Mesh SDK execution fails #1339
- Rename & Encapsulate Transforms On GraphQL Handler Break Query #1600
- Naming Convention Transform Breaks Union Type Query #1592
- Encapsulate on JSON Schema Handler Breaks API Functionality #1711
- GraphQLHandler.endpoint error: Only absolute URLs are supported #1725
- returnData does not resolve external values nor errors #1744 🎉 3
- Incorrect docs for string interpolation #2004 👍 2
- When generating output a schema property is being ignored/skipped #1970
- Mesh as a gateway opens a browser, although the browser false property is used (terminal) #2279
- redis cache issues #1130
- Trouble with the transformation Rename with fields start by number #2491 👀 1
- selectionSet is not passed to delegateToSchema/batchDelegateToSchema when using GraphQL Handlers #2720
- query returns null instead of value #2311
- Mesh SDK boilerplate generation & nx monorepo integration #2103 👍 5 👀 2
- Bug in mesh build when composer does not export
defaults
#2968 - Mysql Input handler -> No mark columns auto_increment, nullable and with default values as mandatory on generated input schema #2182
- Additional resolver doesn't work after mutation #3180
- Accessing a non existand data from the mockStore complains about the wrong thing #2320
- resolversComposition bug #3224 👍 2
- Filtering a source schema also filters that schema's SDK #3367
- Batching between mesh and a gql handler does not work for mutations #3454 👍 1
- Apollo Gateway/Federation does not work to graphql-mesh backend service #3471
- @graphql-mesh/transform-filter-schema prevents creation of index.d.ts #3523 👍 1
- Transform-Replace-Field: Leads to null response (clash of user expectation). #3533 👍 1
- Mesh SDK TypeScript usage requires
skipLibCheck: true
- else throws TS1254 in upstream dependency cross-undici-fetch #3711 👀 1 - Cryptic error on build when source handler fails #3951 👍 2
- "message": "Unexpected error value: { name: \"SyntaxError\", message: \"Unexpected 'I'\", at: 1, text: \"Invalid Query\" }", #3955
- Getting error while trying to extend unified schema #4049
- mySQL Handler raises error on invalid date-time-string 2016-03-16 06:38:12 #3945
- Redis critical failure when using GraphQL field aliases (bug) #2292
- Running into import issues with @graphql-mesh/apollo-link #4196
- Arguments converted to string on additionalResolvers with requiredSelectionSet #4328
- graphql-mesh doesn't work nicely with pnpm #4456
- [v1] Undesired output from PR #4419 #4460
- Mesh - FHIR Failed to generate the schema Error: Unable to load fhir.schema.json #4512
- cli fails generating artifacts #4562 👍 1
- Resolvers composition not working as described in the docs #4588
- Error in generating types from valid WSDL's using GraphQL-mesh Soap plugin #4647
- responseByStatusCode doesn't treat 404 as expected #4803
- serializing graphql input differently with
additionalResolvers
&additionalTypeDefs
#4847 - Error: Cannot return null for non-nullable field when using multiple source handlers #4862
- @graphql-mesh/cross-helpers has unmet peer dependency "react-native@*" #4881 👍 3
- codegen doesn't protect against typenames which are typescript keywords #4887
- Facing an Error using Jenkins Pipeline "/healthcheck" and "/readiness" #4950
- Encapsulated resolvers to do not mesh properly #4962
- Using Reflection for Grpc source does not work as documented #4919
- Add
.js
extension for artifacts import (ESM compatability) #5040 - Cannot use container name for redis cache #5060
- Cannot use headers in sessionId or cacheKey #5102
- Mesh prefixes variable names #5097 👍 1 👀 1
- Filtering all mutations breaks the schema #5111
- Empty response cache with Cloudflare workers and KV #5171
- HTTP client caching plugin errors #5174
- Wrong typings #5116 👍 9 👀 5
- Conflicting types when field may be non-nullable #5178
- hello-world-esm example fails to start #5193 👍 2 👀 3
- MSGraph Odata query sub objects error #4088
- How to invoke javascript code from handler/odata/schemaHeaders? #5170 👀 1
- Malformed http request URL #5195
- GraphiQL offline #5709
- Support for Any Type in GRPC #5687
- MySQL secure TLS support #5653
- import.meta.url on mesh start #5360
- Build command not generate JS file types correctly with commonjs #5343 👍 1
- XML Source Handler #5246
- Add additionalResolvers example for passing args to nested fields #779
- Feature - Mongoose handler does not respect refs, virtual and pre #1351 👍 1
- Allow rename transform to rename multiple types into a single one #1415
- Add a way to access context headers in the cache key for caching #1771
- Renaming fields arguments #1422 👍 1
- Allow configure
mode
default + support all transforms on all sources #1930 - Argument standardization #2156
- Use Mesh to enable global object identification support #2155 👍 1
- Document stateful mocking and modify the transform configuration #1999
- Reflection Header grpc-reflection-js #2105 👍 1
- Add support for Mariadb or edit MySQL handler to support Mariadb #1619
- Add a custom context #2856 👍 9
- Transform request body for json-schema #2875
- Cache transform should wait until active requests for the same cache key are completed #2994
- Discussion: replace-field transform #2975 👍 1
- having a button to export results from GraphQL to csv or json #3349
- Unable to disable Faker #3192 👍 1
- Add user-specific hash to cacheKey #3586
- strictScalars and scalars map for graphql source codegen #3508
- Can't override an existing field with an object type #3788
- Configuring introspection on/off via .meshrc.yml file #3433 👍 4
- File paths in postgraphile handler is not transformed correctly when building for production. (Breaks production build) #3886
- Support custom jwt claims in postgraphile handler. #3913
- Field Argument Type Rewriter Transform #3960 👍 1
- IDEA: Refactor Handlers by splitting artifacts generation and schema/executor generation #4057
- IDEA: Implement Fetch strategies for other possible handlers #4087
- Investigate current state of Deno support #4111
- IDEA: Add tests for Windows #4118
- Yarn 2.0 support #2923 👍 2
- Propagate graphql extensions #4207 👍 1 👀 1
- Feature request: Response pagination #4212
- Improve the execution pipeline splitting execution and schema generation #4284
- Add idFormats option to new openAPI handler #4301
- Pass WebSocket
connectionParams
to downstream also inconnectionParams
#4305 👍 2 - JSON Schema Handler - Add tests for handling paths on Windows #4345
- Create basic documentation for FHIR protocol #4363
- Headers are not stored in a Graphiql history #4386 👍 1
- Document Apollo Link and Urql Exchange packages #4410
- Service Polling / Live Schema Updates - Possible? #1142 👍 12
- Request: Validate meshrc config dynamically instead of from a static json schema #664
- Create a new Mesh plugin and document Generic Auth #4496
- IDEA: Investigate Next.js Edge Runtime compatibility #4193
- Create an example to use artifacts for GraphQL WS impl #5045
- Apollo Federation v2.3 support #5285
- Support fragments as
requiredSelectionSet
#4361 - Incompatible module imports with Yarn Berry #5447
- Refactor OData handler #2466 👀 1
- Bug - fieldnames which match typescript keywords cause error #5199
- fix: Correct path to file containing custom fetch function when building Mesh project #5841 ❤️ 1
- Path to customFetch cannot be resolved when building and running a Mesh project #5840
- Cors Origin * does not work #5585
- Explore ideas to avoid installing uWebSockets.js from github #5581
- Unable to run cli 0.83.x on a Mac - Error: Returning from a request handler without responding or attaching an abort handler is forbidden! #5562 👍 4
- Union one of issue #5415 🎉 1
- Example of filter and extend bug mesh issue #5408
- Not able to introspect graphql service of spring boot ( protected with JWT token auth ) #5401
- Rename transform toggle ignore list #5342 ❤️ 1
- Make the rename transformation enable/disable the usage of the exclusion list for scalars #5341 👍 3
- feat(json-schema/oas/raml):
timeout
option #5261 - Shared packages as peer dependency #5252
- Allow including external yaml files in .meshrc.yaml #1412 👍 1
-
tsconfig.json
with comments fails on unclear error message:Bad string
#3694 - Resolvers not getting merged #2219
- TypeResolver of GraphQL interface type is not working #3881
- Forward Client RemoteIP #3940
- {"status":"INTERNAL_SERVER_ERROR","code":9432,"message":"Your session has expired. Please login.","statusCode":500}; #3966
- IDEA: Deprecate cache and rate limit transforms in favor of response cache and rate limit plugin #4074 👍 1
- IDEA: Document subscriptions with GraphQL Mesh CLI #4089
- IDEA: Use AJV's standalone compiler to reduce the bundle size for JSON Schema loader #4099
- Clarify the difference between
schemaHeaders
andoperationHeaders
#4106 - Validate the operation documents against the schema #4126
- Resolvers Composition plugin doesn't work with GraphQL-like sources. #4202 👍 1
- Improve and refactor Build Flow #4283
- Pass context to fetch in json-schema loader (used in new-openapi handler) #4293
- Split integration and unit tests #4308
- Provide request information in resolverComposition #4319
- GraphQL handler; Clarify how
introspection
configuration parameter works #4346 - Error on simple GraphQL handler with mesh start #4603 👍 7
- Use same terms in configurations in all handlers as much as possible #4362
- OpenApi Handler - Overriding all Mutations to Queries results in invalid schema #4889
- naming-convention not correctly handling Input types in bare mode #4895
- Encapsulated transformation not applied to GraphQL source #4931
- Path object param check fails in OpenAPI spec #4933
- customServerHandler - should not removed #4939
- httpDetailsExtensions does not respect the if configuration #4945 👍 1
- Variable Not Defined #4953
- methodObj sometimes a string #4993
- plugin-mock: does not respect the if configuration at runtime #5029
- Mesh uses pre-transformed schema to process variables #5010
- New HTTP/2 Plugin #5076
Mesh v1
- Readiness and Healthcheck endpoints
OmniGraph OpenAPI
ON HOLD
- Integrate Apollo Federation spec audit
NEW
OData Handler
- [OData Handler] Invalid OData URI generation #782
- [OData Handler] Add default filter param of ID for all queries on collections when talking to Microsoft Graph #787
OData
trivago feedback
Feature Request
oData Handler
- [oData Handler] Implementation of calling an single entity is not correct #3770 👍 1
- [oData Handler] Empty response e.g. when updating an entity leads to an error #3771
- [oData Handler] Count Not Behaving as Expected #944
improvement
MySQL Handler
Feature request
GraphiQL
- Show metrics / show outgoing requests plugin (inspire by Insomnia?)
v1.x
string
Metadata
Metadata
Assignees
Labels
No labels