I have a question about the API stability of Cinder. I have experienced with other creative coding frameworks having my code break after a new version (which I had to use because the old version didn’t support my current OS).
What is Cinder’s approach and philosophy to API stability?
If I write a Cinder app can I expected it to work with future versions of Cinder?
Is there a system to how often you have breaking changes?
nearly every update introduces breaking changes. Examples being Cinder’s own vector classes (e.g.
Vec3f) being abandoned for GLM’s
vec3. Version 0.9.0 completely abandoned legacy OpenGL in favor of support for OpenGL 3.3+.
Breaking changes will always be documented in the release notes.
For this reason, it makes sense to add Cinder as a submodule to your project. This will ensure that you’re compiling against the correct version.