Closed ChrisThrasher closed 1 year ago
I think it is not time to do this yet. The shims are still small and will likely remain manageable for quite some time. There is a lot of benefit to having just 1 branch, not multiple. Then we can just have one "best" version with all behavior fixes effortlessly available.
If we make this change now we can also modernize ImGui-SFML to use C++17 and CMake 3.22 like SFML does which opens the door for new improvements and simplifications. It also means being able to break the ImGui-SFML API in case there are any API breaking changes you want to make. I see this as an inevitability so we don't really gain anything by postponing it.
But we do gain quite a lot by postponing it. We don't need to maintain 2 codebases then.
Hi @ChrisThrasher, I see now that pull requests will keep coming in in real time as SFML "3.0" keeps adding breakages one by one. I really have no interested in following those, but seems like you do. As such, let's adopt any maintenance method that you prefer and I'll just step back. I'm happy with how the last release turned out, and with that out of the way I don't feel like I need to insist on anything particular. Sorry for holding you back until now.
All done. I added a section to the README explaining the state of development.
SFML uses the
master
branch for the development of version 3 and maintains2.6.x
for developing in the 2.6.x release series. CSFML is going to adopt this strategy soon and I want ImGui-SFML to adopt it as well. When all repos use the same branching strategy, it's easy to work on multiple repos and know which branch corresponds to which state of the repo.Along with doing this I'd prefer that we remove any shims required to support v3 from the
2.6.x
branch. SFML 3 is not stable so it's a moving target. I'd rather continuously chase and fix API changes made to SFML 3 in themaster
branch than in any branch that claims to support v2. Likewise themaster
branch should make no concessions to work with SFML 2.