Closed nozzlegear closed 6 months ago
I personally think it's ok to increment the major version regularly. As an example, I use Stripe quite a bit, and they are already at major version 43!
Here we could increment to 7. And when you do your other changes, we could increment to 8, even if it's shortly after...
Oh wow, 43 is crazy! Each major increment is breaking for them too?
-- Joshua Harms
On Mon, Feb 5, 2024, at 16:46, Clement Gutel wrote:
I personally think it's ok to increment the major version regularly. As an example, I use Stripe https://github.com/stripe/stripe-dotnet quite a bit, and they are already at major version 43!
Here we could increment to 7. And when you do your other changes, we could increment to 8, even if it's shortly after...
— Reply to this email directly, view it on GitHub https://github.com/nozzlegear/ShopifySharp/pull/1011#issuecomment-1928420281, or unsubscribe https://github.com/notifications/unsubscribe-auth/AASOE7GQVPPUKLYHJAPIA33YSFOKXAVCNFSM6AAAAABCZTLE72VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMRYGQZDAMRYGE. You are receiving this because you modified the open/close state.Message ID: @.***>
Yes I believe they follow semver like most libraries. So each major increment is a breaking change. But it doesn't mean that it's hard to upgrade. Just that there is at least one breaking change.
QQ: How are you guys generating the graphql types?
At a high level, the code generation of graphql type uses a graphql introspection query to load all types and generate some c# code. It can be triggered by running the test in (after removing the Skip attribute) https://github.com/nozzlegear/ShopifySharp/blob/master/ShopifySharp.Tests/GenerateGraphQLSchema_Test.cs
Thanks @clement911 I was asking more on which code generator you guys were using for this.
We're using a generator that Clement wrote called Wish.GraphQLSchemaGenerator. He explained it here in #962!
Releasing 7.0 is going to take a little longer than I thought, so I’m going to push out 2024-01 as part of 6.13.0.
I realize this contains breaking changes for the generated GraphQL types, but I think I’m okay with that. Since ShopifySharp doesn’t version itself the same way Shopify versions their API, it’s bound to happen and I don’t want to release a new major version each time they deprecate or change their graph (or rest) types.