fusesoc icon indicating copy to clipboard operation
fusesoc copied to clipboard

what parts of semantic versioning are really supported ?

Open krishnan-gopal opened this issue 3 years ago • 3 comments

Hi

If I use a caret or tilde dependency on an external core, fusesoc seems to only consider versions of that core with a pure 'major.minor.patch' format while resolving dependencies. Versions with a pre-release or build metadata are not considered as semantic in such a case. Is this intentional ?

krishnan-gopal avatar Dec 20 '21 07:12 krishnan-gopal

That's correct: the versions are expected as major.minor.patch, as documented at https://fusesoc.readthedocs.io/en/latest/user/build_system/dependencies.html.

That doesn't necessarily need to stay that way: do you want to attempt a pull request?

imphil avatar Dec 20 '21 09:12 imphil

Already on it :)

krishnan-gopal avatar Dec 21 '21 09:12 krishnan-gopal

FYI, I like semantic versioning, but I believe there are a whole bunch of cores that don't use semantic versioning. FuseSoC has tried to encourage semantic versioning but not enforcing it. Also perhaps good to know is that we support a Gentoo-inspired extension, namely a -rx suffix (where x is a number) to indicate a revision. This is normally used when the core description file is updated without the core itself having been changed

olofk avatar Dec 22 '21 22:12 olofk