There is two ways to specify a compatible pack version range:
[vendor ::] pack-name@^version # If specified, with version equal or higher but same major version
[vendor ::] pack-name@~version # If specified, with version equal or higher but same major and minor version
as a result, the command csolution list packs <solutionname>.csolution.yml -m will provide the corresponding output to be used by cpackget add -f <packlist>.txt using the above version modifiers.
@^version is already implemented however
@~version was valid in a previous version but is currently not accepted.
Note that for this new implementation both the max and min versions must remain unchanged and only the patch is equal or higher than specified. Semantically this does not allow pack versions with new features but only bug fixes.
Describe The Problem To Be Solved See recent update of CMSIS Solution project format - pack name conventions:
There is two ways to specify a compatible pack version range:
as a result, the command
csolution list packs <solutionname>.csolution.yml -m
will provide the corresponding output to be used bycpackget add -f <packlist>.txt
using the above version modifiers.@^version
is already implemented however@~version
was valid in a previous version but is currently not accepted. Note that for this new implementation both themax
andmin
versions must remain unchanged and only thepatch
is equal or higher than specified. Semantically this does not allow pack versions with new features but only bug fixes.