Anatol, Doug,
I do not propose to remove pkgver(). What I say is that vcs version generator becomes non-trivial and many people use different and inconsistent VCS versions. It indicates that there should be some standard way to generate version. If you don't want to use the standard generator you can use your own command to generate the version.
But at least the standard generator will show how version should look like (e.g. "r" prefix or not, what delimiter should be used, etc)
If you want the "r", add it. If not, don't. I don't see the problem.
To be very blunt, if you can't figure out basic scripting enough to
write a coherent pkgver function, you don't really have any> business maintaining PKGBUILDs.
Please more respect, this is a public discussion.
I'm well aware that it's a public discussion, but I'm not going to sugar coat things to protect other's feelings. Bash can be complex, but basic scripting isn't difficult. If you're going to be maintain PKGBUILDs without a grasp of the basics, you're being set up to fail from the get go.
My reading of Anatol's post does not convey any lack of understanding of the basics of shell scriptings. I think you are misreading his original post, and responding ad hominem as a result of that misunderstanding. I read Anatol's original post as "please consider adding an optional convenience function that will handle the git describe / bzr revno / etc. for the packager and provide a sane default, while still allowing people to not use that function if they don't want to use it or if the git tag format doesn't play nicely with it." This seems like a reasonable suggestion: 99% of VCS packages have a simple pattern: strip the preceding letters up to the first number of some git describe or bzr branch name/revno string, then add the # of commits in this branch, then add the hash. Why not provide a convenience function to cover that? I agree with Doug that it's not a good idea, and here is the reasoning: (1) It's a write-once convenience function. If some developer changes the function upstream, it has the potential to break MANY VCS packages all at once, which would be very bad, so it is better for each VCS PKGBUILD to write its pkgver() specific to its own repository's organization/versioning (strong argument). (2) It's just extra baggage to carry for what is, for the most part, a one-liner in VCS packages right now (weak argument). (3) It encourages lazy VCS packagers (weak argument). Anatol, even though I disagree with you, it was a worthwhile suggestion. Thanks, Ido