Allow custom prefix (high priority) to package version name

Hi. I have a feedback about Package Manager versioning system.

Currently, Package manager allows only “X.Y.Z” or “X.Y.Z-preview” or “X.Y.Z-preview.N”.
And “-preview” has low priority for update button (ex, Package manager suggests updating 1.0.0-preview to 1.0.0 but reverse is not)

But for custom package, if you create open source library as your custom package, usually you want to set package’s version to same as original library’s version. But also you need to apply some unity specific modification to your custom package. In this case, specific prefix is needed like “1.2.1-patch.1” or “1.2.1-hotfix.2”. and Package Manager should suggests that “1.2.1” can be updated to “1.2.1-patch.1”.

I think this makes Package Manager more comfortable to developers.

Thanks.

1 Like

Hi @Kichang-Kim ,

The Unity Package Manager uses Semantic Versioning to sort package versions and determine which version is the latest, or whether a version is newer than an other. In that versioning scheme, the - suffix denotes a “pre-release” identifier, not a “patch”. Whatever change has been made on top of the 1.2.1 release should be expressed as a higher version with the proper version component bumped (1.2.2 for a patch, 1.3.0 for a new feature that’s backward-compatible, 2.0.0 for a breaking change).

What you are suggesting is to enable some sort of forking flow. This is currently not supported by Semantic Versioning (though there have been discussions about proposed extensions to the SemVer specification to support it - see https://github.com/semver/semver/issues/17). However, this is not currently on our roadmap.

Thanks for the feedback though!

2 Likes