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
- Adding a computed property with a non-primitive/non-scalar return type breaks the schema when stitching graphql-tools#4956 👍 2
- When polling is enabled, Mesh gets the old schema on each server start #6840
- Supergraph handler fails with same field name #6671 👍 1
- fix: Allow deep merging objects in allOf operations #5643 ❤️ 1
- General question about the Apollo Federation Transform #4508
- OpenAPI Handler overhaul #4278 👀 2
- 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
- Add unit tests for New Relic plugin #5334
- try to fix some peer deps #5748
- Use
node-libcurl
#5680 - 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
- In interpolator, applyRule function does not replace an argument if "dataToReplace" is 0 #5817
- Use metadata to create gRPC client #5836 👍 1
- Can not get deprecated args and inputFields from GraphQL sources #5692
- Documentation for custom PubSub #5556 👀 1
- Document custom endpoints #5597
- DOCS: Batching programmatically #4606
- Improve doc of additionalResolvers sourceArgs #3115 👍 2
- Doc: Securing your gateway #4534
- Update First Gateway Example #4707
- Better Error Handling #4286
- Improve docs for
customFetch
usage #4110 👍 5 - Error handling guide #4802
- gRPC handler timeout #5295
- Docs Roadmap #4280
- 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 - All GQL fields are nullable when source is a Protobuf schema. #5590 👍 1 👀 1
- SOAP handler not working for source with authentication. #5650
- Document
MeshCache
usage from the context #5768 - 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
- All DateTime scalars are converted to UTC #5229
- Unable to authenticate to SOAP API #472 👍 1
- The rateLimit plugin is returning data when multiple queries or fragment are requested #5232
- SDK: naming convention transform camelCase not working for inputTypes #565
- Feature request: specify configName for input when generating TypeScript types #882
- GraphQL Mesh SDK Failed (1 errors): Unknown type \"ID\". #895
- Unable to merge field selection in one resolver with selectionSet in another resolver #591
- 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
- Rename & Encapsulate Transforms On GraphQL Handler Break Query #1600
- Mesh SDK execution fails #1339
- 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
- redis cache issues #1130
- Mesh as a gateway opens a browser, although the browser false property is used (terminal) #2279
- selectionSet is not passed to delegateToSchema/batchDelegateToSchema when using GraphQL Handlers #2720
- Trouble with the transformation Rename with fields start by number #2491 👀 1
- 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
- Accessing a non existand data from the mockStore complains about the wrong thing #2320
- Additional resolver doesn't work after mutation #3180
- 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
- resolversComposition bug #3224 👍 2
- Mesh SDK TypeScript usage requires
skipLibCheck: true
- else throws TS1254 in upstream dependency cross-undici-fetch #3711 👀 1 - Transform-Replace-Field: Leads to null response (clash of user expectation). #3533 👍 1
- "message": "Unexpected error value: { name: \"SyntaxError\", message: \"Unexpected 'I'\", at: 1, text: \"Invalid Query\" }", #3955
- mySQL Handler raises error on invalid date-time-string 2016-03-16 06:38:12 #3945
- Cryptic error on build when source handler fails #3951 👍 2
- Redis critical failure when using GraphQL field aliases (bug) #2292
- Getting error while trying to extend unified schema #4049
- Running into import issues with @graphql-mesh/apollo-link #4196
- graphql-mesh doesn't work nicely with pnpm #4456
- [v1] Undesired output from PR #4419 #4460
- Arguments converted to string on additionalResolvers with requiredSelectionSet #4328
- 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
- Error: Cannot return null for non-nullable field when using multiple source handlers #4862
- responseByStatusCode doesn't treat 404 as expected #4803
- serializing graphql input differently with
additionalResolvers
&additionalTypeDefs
#4847 - @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
- Empty response cache with Cloudflare workers and KV #5171
- HTTP client caching plugin errors #5174
- Mesh prefixes variable names #5097 👍 1 👀 1
- Wrong typings #5116 👍 9 👀 5
- Filtering all mutations breaks the schema #5111
- Conflicting types when field may be non-nullable #5178
- hello-world-esm example fails to start #5193 👍 2 👀 3
- How to invoke javascript code from handler/odata/schemaHeaders? #5170 👀 1
- Malformed http request URL #5195
- MSGraph Odata query sub objects error #4088
- GraphiQL offline #5709
- MySQL secure TLS support #5653
- import.meta.url on mesh start #5360
- XML Source Handler #5246
- Build command not generate JS file types correctly with commonjs #5343
- Support for Any Type in GRPC #5687
- Add additionalResolvers example for passing args to nested fields #779
- Allow rename transform to rename multiple types into a single one #1415
- Feature - Mongoose handler does not respect refs, virtual and pre #1351 👍 1
- Renaming fields arguments #1422 👍 1
- Allow configure
mode
default + support all transforms on all sources #1930 - Argument standardization #2156
- Add a way to access context headers in the cache key for caching #1771
- Document stateful mocking and modify the transform configuration #1999
- Use Mesh to enable global object identification support #2155 👍 1
- Add support for Mariadb or edit MySQL handler to support Mariadb #1619
- Reflection Header grpc-reflection-js #2105 👍 1
- Add a custom context #2856 👍 9
- Transform request body for json-schema #2875
- having a button to export results from GraphQL to csv or json #3349
- Cache transform should wait until active requests for the same cache key are completed #2994
- Unable to disable Faker #3192 👍 1
- Discussion: replace-field transform #2975 👍 1
- Add user-specific hash to cacheKey #3586
- strictScalars and scalars map for graphql source codegen #3508
- Configuring introspection on/off via .meshrc.yml file #3433 👍 4
- Can't override an existing field with an object type #3788
- File paths in postgraphile handler is not transformed correctly when building for production. (Breaks production build) #3886
- Field Argument Type Rewriter Transform #3960 👍 1
- IDEA: Implement Fetch strategies for other possible handlers #4087
- IDEA: Refactor Handlers by splitting artifacts generation and schema/executor generation #4057
- Support custom jwt claims in postgraphile handler. #3913
- Investigate current state of Deno support #4111
- IDEA: Add tests for Windows #4118
- Propagate graphql extensions #4207 👍 1 👀 1
- Yarn 2.0 support #2923 👍 2
- 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
- Headers are not stored in a Graphiql history #4386 👍 1
- Create basic documentation for FHIR protocol #4363
- 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
- Create an example to use artifacts for GraphQL WS impl #5045
- Support fragments as
requiredSelectionSet
#4361 - Incompatible module imports with Yarn Berry #5447
- Apollo Federation v2.3 support #5285
- Refactor OData handler #2466 👀 1
- Bug - fieldnames which match typescript keywords cause error #5199
- IDEA: Investigate Next.js Edge Runtime compatibility #4193
- 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
- feat(json-schema/oas/raml):
timeout
option #5261 - 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
- 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: Document subscriptions with GraphQL Mesh CLI #4089
- IDEA: Deprecate cache and rate limit transforms in favor of response cache and rate limit plugin #4074 👍 1
- Clarify the difference between
schemaHeaders
andoperationHeaders
#4106 - IDEA: Use AJV's standalone compiler to reduce the bundle size for JSON Schema loader #4099
- Resolvers Composition plugin doesn't work with GraphQL-like sources. #4202 👍 1
- Validate the operation documents against the schema #4126
- Pass context to fetch in json-schema loader (used in new-openapi handler) #4293
- Improve and refactor Build Flow #4283
- Provide request information in resolverComposition #4319
- Split integration and unit tests #4308
- 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
- Path object param check fails in OpenAPI spec #4933
- customServerHandler - should not removed #4939
- Encapsulated transformation not applied to GraphQL source #4931
- httpDetailsExtensions does not respect the if configuration #4945 👍 1
- Variable Not Defined #4953
- plugin-mock: does not respect the if configuration at runtime #5029
- methodObj sometimes a string #4993
- 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] Count Not Behaving as Expected #944
- [oData Handler] Empty response e.g. when updating an entity leads to an error #3771
improvement
MySQL Handler
Feature request
GraphiQL
- Show metrics / show outgoing requests plugin (inspire by Insomnia?)
v1.x
string
Metadata
Metadata
Assignees
Labels
No labels