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

Could the provider adhere to the semantic versioning standards? #319

Open
hkraal opened this issue Apr 9, 2024 · 2 comments
Open

Could the provider adhere to the semantic versioning standards? #319

hkraal opened this issue Apr 9, 2024 · 2 comments

Comments

@hkraal
Copy link

hkraal commented Apr 9, 2024

After renovate upgraded the xenorchestra provider from 0.24.2 -> 0.26.1 I noticed that there was a breaking change introduced on the xenorchestra_network resource by #260 (thanks for the fix btw, lost track of it, sorry for that).

While it's easy to fix it would be very nice if breaking changes would introduce a new major version so minor/patch level updates can be installed with relative safety.

@ddelnano
Copy link
Collaborator

ddelnano commented Apr 9, 2024

Hi @hkraal, thanks for being active in providing feedback.

Unfortunately, I think there are some potentially large breaking changes that could come (#211 being one that will likely be disruptive, but worth addressing). This is why I've been sticking to a 0.x.y release number, which I'm indicating that a breaking change could come at any time. I have taken special care to keep backwards compatibility in mind (#267, #300), but there are still some rough edges in the current functionality that can only be solved by a breaking change.

Looking at the semver spec, it seems the area before 1.0 is a bit of a gray area. However, it does mention that 1.0.0 defines the public API and matches my hesitation for moving past a 0.x.y release.

Version 1.0.0 defines the public API. The way in which the version number is incremented after this release is dependent on this public API and how it changes.

... later in the FAQ

How do I know when to release 1.0.0?
If your software is being used in production, it should probably already be 1.0.0. If you have a stable API on which users have come to depend, you should be 1.0.0. If you’re worrying a lot about backward compatibility, you should probably already be 1.0.0.

@hkraal
Copy link
Author

hkraal commented Apr 10, 2024

Let me start with the fact that you do follow SemVer and I was jumping the gun here, sorry for causing noise wrongfully.

I do understand your reasoning to stick to a 0.x.y release state as a developer but from a user perspective it would be very nice to know when things are expected to break. It's there but the release notes weren't very clear about this either but I certainly could have been more wary about the provider version <1.0.0 and thus not being crystallised out yet ;)

With all buzz around VMware and Vates it's clear intentions towards harbouring those which have been ditched by the Broadcom takeover; shielding the new users from breaking changes in minor releases might be worth something as well despite being valid in the 0.x.y release cycle

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