Basically, --points-at returns nothing.
$ git tag -l "[0-9.]*" --points-at v23.0.0.rc1
|
$ git tag -l "[0-9.]*" --contains v23.0.0.rc1
|
22.0.0
|
22.0.1
|
$ git tag -l "[0-9]*" --points-at $(git rev-parse "v23.0.0.rc1^{commit}")
|
22.0.0
|
22.0.1
|
It looks like bare --points-at would return the tag specified (and only that tag) if it matched the pattern, but that's not what is desired anyway. I believe this has to do with the difference between <object> and <ref> or <commit> as a git argument.
On the other hand, I'm now convinced that --contains is incorrect as well, as it will list later tags that contain the given ref, but those are inappropriate for versioning use. So I think we're down to the last alternative.
It appears that pkgautoversion returns different results when given a git ref (like v23.0.0.rc1). It's still not clear why those different results aren't consistently used everywhere.