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

Semantic versioning #77

Closed
illrill opened this issue Mar 7, 2023 · 5 comments
Closed

Semantic versioning #77

illrill opened this issue Mar 7, 2023 · 5 comments

Comments

@illrill
Copy link

illrill commented Mar 7, 2023

I've noticed releases are consistently bumped a minor version, even when the release doesn't contain any new functionality. For example 1.3 -> 1.4 seems to only contain chores/dependency updates . Would it be a good idea to start adhering to semantic versioning?

Major (1.x.x -> 2.x.x) version when we make incompatible API changes
Minor (x.1.x -> x.2.x) version when we add functionality in a backwards compatible manner
Patch (x.x.1 -> x.x.2) version when we make backwards compatible bug fixes and chores

@srvaroa
Copy link
Owner

srvaroa commented Mar 7, 2023

Hi, @illrill I'm basically keeping a simplified schema without the patch version for no particular reason. I generally bump the minor as I intentionally avoid breaking changes (e.g. I did introduce a different configuration format a while back, but ensured that the action would still support old files). If I do one, I would indeed bump the major.

In any case, I'm fine with using a full semver string if that makes things clearer downstream. I will republish the latest version as 1.4.0 and follow from there.

Thanks!

@illrill
Copy link
Author

illrill commented Mar 7, 2023

Thanks for the feedback!

Actually the main concern I had was around what would happen after 1.9 - I just assumed it would automatically hit 2.0 even if there's no major/breaking change. But perhaps I assumed too much, now that you explained it... It would become 1.11, wouldn't it? If that's the case, it's fine as-is for me.

The background to why I care is that the administrators of our Github Enterprise organization has a rule that they need to approve and "whitelist" each major version of all open-source actions. So when we reach version 2.0, I'll need to go through the hoops of requesting the admins to re-whitelist srvaora/labeler@2.* 😄

@illrill
Copy link
Author

illrill commented Mar 7, 2023

BTW, the organization I consult for is H&M Group, so this piece of software is used by a quite large company 🥇 💪

@srvaroa
Copy link
Owner

srvaroa commented Mar 7, 2023

Yeah, I think you summarize the point quite well. I originally didn't want to overcomplicate the versioning part but at the point this is used by orgs with minimum supply chain controls standards will actually save time.

I expect we'll stay on 1.x for a fair amount of time.

Thanks a lot for the feedback and happy to see this is useful to you at H&M!

@srvaroa
Copy link
Owner

srvaroa commented Mar 7, 2023

Closing but let me know if I there are any loose threads there!

@srvaroa srvaroa closed this as completed Mar 7, 2023
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