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
- Skip any action on missing New Relic source segments. #5307
- Mesh SDK boilerplate generation & nx monorepo integration #2103 (comment) 👍 5 👀 2
- Incorrect documentation, how to do it correctly? charlypoly/graphql-mesh-docs-first-gateway#31
- Neo4j Source Handler: Unable to Use
source
parameter in .meshrc.yaml #5392 - GraphQL - Subscription Endpoint not being Interpolated #5403
- Serialize Headers plugin #5333
- Algolia cleanup #5332
- feat(json-schema/oas/raml):
timeout
option #5261 - enhance(json-schema): handle discriminator mapping #5206
- Fix issue with naming-convention in bare mode and nested Input types #4896
- fix(string-interpolation): operation headers not interpolated when req.headers is a HeaderMap #5227
- propagate load options from the config to the gRPC handler #5278
- Ignore non-method fields in Path Object Item #4934
- Bare resolvers in incontext SDK #4731
- 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
- try to fix some peer deps #5748
- Use
node-libcurl
#5680 - Add unit tests for New Relic plugin #5334
- Use metadata to create gRPC client #5836 👍 1
- MySQL auto increment field #5350
- Cannot read properties of undefined (reading 'get') #5312 👍 3
- Unable to resolve the abstract type "BrandBaseConfigVo" in GraphQL Mesh #5320
- In interpolator, applyRule function does not replace an argument if "dataToReplace" is 0 #5817
- Documentation for custom PubSub #5556 👀 1
- Document custom endpoints #5597
- Can not get deprecated args and inputFields from GraphQL sources #5692
- Doc: Securing your gateway #4534
- Improve doc of additionalResolvers sourceArgs #3115 👍 2
- Update First Gateway Example #4707
- DOCS: Batching programmatically #4606
- Docs Roadmap #4280
- Better Error Handling #4286
- Improve docs for
customFetch
usage #4110 👍 5 - GraphQL handler: environment variables not working for endpoint for subscriptions/WebSocket calls #5296
- Error handling guide #4802
- gRPC handler timeout #5295
- Document
MeshCache
usage from the context #5768 -
connectionParams
for Subscriptions are not resolved #5774 👀 1 - the imports are not properly generated for
customFetch
which fail running in docker environment #5297 - All GQL fields are nullable when source is a Protobuf schema. #5590 👍 1 👀 1
- SOAP handler not working for source with authentication. #5650
- Naming convention and rename transforms make requests fail for nested object in the input variables with gRPC sources #5469 👍 1 👀 1
- Mesh and SvelteKit error #5275
- gRPC handler: load defaults option not working #5277
- 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
- Unable to merge field selection in one resolver with selectionSet in another resolver #591
- 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
- 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
- Naming Convention Transform Breaks Union Type Query #1592
- Encapsulate on JSON Schema Handler Breaks API Functionality #1711
- Mesh SDK execution fails #1339
- GraphQLHandler.endpoint error: Only absolute URLs are supported #1725
- Incorrect docs for string interpolation #2004 👍 2
- returnData does not resolve external values nor errors #1744 🎉 3
- 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
- Bug in mesh build when composer does not export
defaults
#2968 - Mesh SDK boilerplate generation & nx monorepo integration #2103 👍 5 👀 2
- 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
- resolversComposition bug #3224 👍 2
- 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
- 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
- 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
- Getting error while trying to extend unified schema #4049
- Running into import issues with @graphql-mesh/apollo-link #4196
- "message": "Unexpected error value: { name: \"SyntaxError\", message: \"Unexpected 'I'\", at: 1, text: \"Invalid Query\" }", #3955
- Arguments converted to string on additionalResolvers with requiredSelectionSet #4328
- [v1] Undesired output from PR #4419 #4460
- Mesh - FHIR Failed to generate the schema Error: Unable to load fhir.schema.json #4512
- graphql-mesh doesn't work nicely with pnpm #4456
- 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 - codegen doesn't protect against typenames which are typescript keywords #4887
- @graphql-mesh/cross-helpers has unmet peer dependency "react-native@*" #4881 👍 3
- Error: Cannot return null for non-nullable field when using multiple source handlers #4862
- 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
- Build command not generate JS file types correctly with commonjs #5343
- import.meta.url on mesh start #5360
- Add additionalResolvers example for passing args to nested fields #779
- Feature - Mongoose handler does not respect refs, virtual and pre #1351 👍 1
- XML Source Handler #5246
- Allow rename transform to rename multiple types into a single one #1415
- Renaming fields arguments #1422 👍 1
- Add a way to access context headers in the cache key for caching #1771
- Allow configure
mode
default + support all transforms on all sources #1930 - Use Mesh to enable global object identification support #2155 👍 1
- Argument standardization #2156
- 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
- File paths in postgraphile handler is not transformed correctly when building for production. (Breaks production build) #3886
- Configuring introspection on/off via .meshrc.yml file #3433 👍 4
- Field Argument Type Rewriter Transform #3960 👍 1
- Support custom jwt claims in postgraphile handler. #3913
- IDEA: Refactor Handlers by splitting artifacts generation and schema/executor generation #4057
- IDEA: Implement Fetch strategies for other possible handlers #4087
- IDEA: Add tests for Windows #4118
- Yarn 2.0 support #2923 👍 2
- Propagate graphql extensions #4207 👍 1 👀 1
- Feature request: Response pagination #4212
- Investigate current state of Deno support #4111
- Improve the execution pipeline splitting execution and schema generation #4284
- JSON Schema Handler - Add tests for handling paths on Windows #4345
- Add idFormats option to new openAPI handler #4301
- Pass WebSocket
connectionParams
to downstream also inconnectionParams
#4305 👍 2 - 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
- Create an example to use artifacts for GraphQL WS impl #5045
- IDEA: Investigate Next.js Edge Runtime compatibility #4193
- 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
- Explore ideas to avoid installing uWebSockets.js from github #5581
- Cors Origin * does not work #5585
- 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
- feat(json-schema/oas/raml):
timeout
option #5261 - 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
- Allow including external yaml files in .meshrc.yaml #1412 👍 1
- Shared packages as peer dependency #5252
-
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 - Resolvers Composition plugin doesn't work with GraphQL-like sources. #4202 👍 1
- Validate the operation documents against the schema #4126
- 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
- GraphQL handler; Clarify how
introspection
configuration parameter works #4346 - Provide request information in resolverComposition #4319
- 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
- httpDetailsExtensions does not respect the if configuration #4945 👍 1
- Path object param check fails in OpenAPI spec #4933
- customServerHandler - should not removed #4939
- Variable Not Defined #4953
- methodObj sometimes a string #4993
- Mesh uses pre-transformed schema to process variables #5010
- plugin-mock: does not respect the if configuration at runtime #5029
- 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