habitat-sh / habitat

Modern applications with built-in automation
https://www.habitat.sh
Apache License 2.0
2.59k stars 315 forks source link

Make pkg_version sane #6538

Open chefsalim opened 5 years ago

chefsalim commented 5 years ago

Currently what goes into pkg_version is pretty wide open. This causes multiple ongoing issues in the areas where we need to do searching, sorting or returning latest versions. We have to resort to fairly hacky ways of managing this, resulting in poor performance in places, difficulty in refactoring code, escaped defects, and making it non-trivial or not possible to port the same semantics elsewhere (eg, Artifactory)

From an analysis of over 700 core plans, only 2% are not in the format of some subset of "x.x.x.x" where x is purely numeric.

We should consider supporting only this format for "v1". At the very least, we should warn when building plans if we detect a version string that has any non-numeric characters other than "." that their package version scheme may not produce the expected ordering, and suggest they change to a better format.

baumanj commented 5 years ago

I'm all for making the version field more restrictive. HoweverIf we require strictly numeric, we'd be more restrictive than https://semver.org or https://calver.org, so I think we should probably allow non-numeric tags on the end.

stale[bot] commented 4 years ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. We value your input and contribution. Please leave a comment if this issue still affects you.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. We value your input and contribution. Please leave a comment if this issue still affects you.