The jar name stays put
Between tags, sbt-dynver-ci keeps one jar name, so an sbt 2 action-cache hit survives the next push.
Install
The coordinate is the last published release. A build whose version contains -ci, +, or SNAPSHOT still shows
that release. The artifact is sbt-dynver-ci: one %, not %%.
addSbtPlugin("rocks.earlyeffect" % "sbt-dynver-ci" % "0.2.3")
format
format is the three-argument method DynverCiVersion.format. A clean tag keeps the tag with its prefix dropped.
Anything else appends the suffix, so the jar name stays on that string. The cite is
cite(DynverCiVersion.format(_, _, _)). The panel is that method. The footer is the definition.
/** Testable core: no git types required. */
def format(isCleanAfterTag: Boolean, versionWithoutPrefix: String, suffix: String): String =
if isCleanAfterTag then versionWithoutPrefix
else versionWithoutPrefix + suffix