cppgraphqlgen icon indicating copy to clipboard operation
cppgraphqlgen copied to clipboard

Plans for cppgraphqlgen 5.0

Open wravery opened this issue 5 months ago • 15 comments

This is where I'm going to start tracking features for 5.0, the next major version of cppgraphqlgen. This will be a breaking change for existing consumers, so it's an opportunity to cleanup deprecated methods and simplify some of the APIs. I'm also going to adopt a few more C++20 and C++23 features if they are well enough supported on Windows, Linux, and macOS now.

This is using #172, the tracking issue for cppgraphqlgen 4.0, as a template and starting point.

  • [x] Stand up a branch for 5.0 and start making PRs against that: https://github.com/microsoft/cppgraphqlgen/tree/next.
  • [x] C++20: Modules.
  • [x] C++20: Ranges: Should modernize a lot of begin/end iterator usage.
  • [x] C++20: std::fmt instead of std::ostringstream.
  • [x] C++20: Co-routines/Awaitable interoperability: See #271, this may require a breaking change to the cppgraphqlgen Awaitable types.
  • [x] Sharing input/scalar/enum types between clientgen and schemagen: See #264 for more discussion.
  • [x] Build some alternate implementations of JSONResponse.* with other JSON libraries besides RapidJSON.
  • [x] #320
  • [x] #321
  • [x] #323
  • [ ] #330

I'll update this list as new features crop up and as I/we make progress on it. If there's something you'd like to see that I haven't included already, feel free to comment on this issue.

wravery avatar Sep 10 '24 00:09 wravery