knope icon indicating copy to clipboard operation
knope copied to clipboard

Use variables (including Version) with multiple packages

Open BatmanAoD opened this issue 1 year ago • 6 comments

There should be a way to use Knope's variables, including Version, with multiple packages.

[old description]

Since determining the version of a package is nontrivial, and it's often useful in scripts (e.g. in CI), I think it would be a great feature if Knope could detect the current version(s) of packages and print that, without doing anything else.

Users could probably parse this information out of knope release --dry-run, but that's a bit awkward.

The primary use case I'm thinking of is to replace stuff like git describe --abbrev=0 --tags | sed 's/v//', so the output must be easy to parse. For a standard, single package, it could just print the version it finds; for multiple packages, it could print <name>=<version>, one on each line. Just like release, when a package has multiple versioned files and their versions don't match, it should just print an error of some kind.

BatmanAoD avatar Apr 03 '24 23:04 BatmanAoD

For single packages, this would work today:

[[workflows]]
name = "print-version"

[[workflows.steps]]
type = "Command"
command = "echo $version"
variables = { "$version" = "Version" }

For multi-package setups, we'd have to decide on something new. We really need a way to use variables with multiple packages anyway 😅.

Would you want all versions in a single workflow (output with JSON maybe?) or run a specific workflow to get a specific package version?

dbanty avatar Apr 03 '24 23:04 dbanty

(I guess my suggestion is exactly what you had in #885)

dbanty avatar Apr 04 '24 00:04 dbanty

I completely forgot I had asked for that, and didn't see it in the issues list when I searched 😅

BatmanAoD avatar Apr 04 '24 01:04 BatmanAoD

Converting this issue to specifically figure out outputting versions for multiple packages (since #885 / #994 will cover the single-package case)

dbanty avatar Apr 13 '24 16:04 dbanty

I've updated the issue title & description accordingly.

BatmanAoD avatar Jul 24 '24 20:07 BatmanAoD