codebude / QRCoder

A pure C# Open Source QR Code implementation
MIT License
4.43k stars 1.08k forks source link

[WIP/QRCoder2] Coordination of development (VCS) #545

Open codebude opened 1 month ago

codebude commented 1 month ago

Note: This issue is part of the planning of version 2 of the QRCoder. The meta-issue can be found here. These comments have been copied into this issue here, with the comments marked as such. If comments on the topic of this issue already exist in the meta thread, they have been copied here, naming the authors.

Topic

Do we create a 2.0 branch and let all developments/PRs flow into it until the release? Or do we want to continue working on the master? (I suppose the former.)

codebude commented 1 month ago

I typically push new major version changes into a develop branch, keeping master for the current major version. Inevitably bug fixes come up before the next major version is ready, and then it is easy to push these changes into master while still continuing to develop v2. Also, it allows backwards-compatible features to be pushed into v1 while also being merged into v2. A good example would be the performance improvements PR #509 . If we had been adding SkiaSharp functionality into the master branch, then it would not be possible to push performance improvements into v1. Typically at GraphQL.NET when we release a new major version, I simultaneously release the last version of the current/prior major version alongside the new major version; then I merge develop into master and continue on master.

Originally posted by @Shane32 here.