[asdf-devel] *ASDF-REVISION*

Robert Goldman rpgoldman at sift.info
Mon Sep 7 23:05:06 UTC 2009


Gary King wrote:
> Hi Robert,
> 
> On Sep 6, 2009, at 11:13 PM, Robert Goldman wrote:
> 
>> Should I expect the *ASDF-REVISION* variable to work for me?  Right now
>> it's NIL.  Is the definition of *ASDF-REVISION* a holdover from the CVS
>> days, and no longer working, or is this YA case where there's something
>> about git that I'm missing?  Should I be doing something with the git
>> pull that will get me a tags directory?
>>
> 
> *asdf-revision* both works and doesn't work. The mechanism I found to
> fill in git related metavariables was `git archive`. This only files
> stuff in on the tarball and the linked version of asdf.lisp. The
> variables in the git repo that you get by cloning/pulling don't have the
> magic variables converted and so so *asdf-revision* isn't much help. In
> practice, this means that people who get ASDF via git directly don't get
> the revision number whereas people who get ASDF via the tarball or the
> source file do.
> 
> If there is a better way, I'm all eyes.
> 
> (this sounds rather gross, but maybe a post pull hook could grab that
> latest tag out of the repo and munge that into the source... ?)

Is there something I might not be doing (or we might not be doing as a
community) that makes this not work?  I have been pulling from your
repository, but I don't *believe* that I have your tags (or do I)?

When I try `git describe --tags` I get no joy...

Is there any chance that you are not pushing your tags to the repository?

>From a basis of complete ignorance, I have found the following:

http://www.question-defense.com/2009/03/13/software-revision-numbers-with-git-tag-and-git-describe/

Which seems to indicate that you must do something beyond a normal push
to get the tags into the shared repository.  Are you doing this?  If
not, would you mind trying it?

I believe that if we were to get your tags into our clones of your
repository, we could figure out a way to get the *ASDF-REVISION* set
properly.

I note that the official stance seems to be that keyword substitution is
"just totally idiotic" [Torvalds],
http://www.gelato.unsw.edu.au/archives/git/0610/28891.html
but that said I'm not sure how to replace it with something better.  I'd
like to be able to run ASDF from the git repository, and I'd also like
to be able to do something like VERSION-SATISFIES based on the
*ASDF-REVISION*.

Any reason why we shouldn't just butcher a version number string into
the file when we release it, instead of doing the current rigamarole?
Or is there a git wizard, who can supply a better alternative?




More information about the asdf-devel mailing list