Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document which versions of Houdini Engine API / Houdini are supported #26

Open
luxalpa opened this issue Nov 1, 2024 · 2 comments
Open

Comments

@luxalpa
Copy link

luxalpa commented Nov 1, 2024

Would be cool to have right in the readme the supported versions of Houdini Engine. I'm right now in the process of migrating my project to 20.0, and I'm thinking of migrating it to 20.5, but it is quite an involved process and I don't know if 20.5 is supported yet (I am assuming it's not). Last time I migrated to 20.0 it wasn't supported yet and it was quite a big problem because I had to make all these changes to my code and my houdini setup just to find out it wasn't even working and then spend some more time to revert. D: Would love to avoid that in the future. ❤️

@alexxbb
Copy link
Owner

alexxbb commented Nov 1, 2024

Yes, you're right, it should be noted which H version is supported. I will update the README very soon.
Right now it's 20.0 in the main brach and 20.5 in the dev.

Because SideFx keeps changing APIs with new releases, I don't have a solid idea of how to make the library work with many Houdini Engine versions.

Stay tuned for an update soon.

@luxalpa
Copy link
Author

luxalpa commented Nov 4, 2024

I think having different branches for different Houdini versions is probably the best / most standard way of doing it. You could have say a 0.10 branch that supports v20 and then a 0.11 that supports v20.5. You can do patch-level adjustments to the lower versions if needed and otherwise focus on having new features in the latest branch (so for example both 0.11 and 0.12 could support H20.5 in case you want to make some breaking API changes). That would probably be fine for the scale this project is currently used on - at least it would be fine for me.

You could also have a look at how the Vulkan bindings manage their versions: https://crates.io/crates/ash/versions but I don't know how semver compliant it is and haven't yet looked deeper into that versioning style.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants