[asdf-devel] version numbers
Daniel Herring
dherring at tentpost.com
Fri Aug 7 03:06:30 UTC 2009
ASDF has a poorly-defined versioning system.
I thought the following link may be of general interest.
http://www.dagolden.com/index.php/369/version-numbers-should-be-boring/
There sure are many ways to mess this up. I'm not convinced there are any
ways to not mess it up.
Related links
http://www.gnu.org/software/libtool/manual/html_node/Libtool-versioning.html
http://stackoverflow.com/questions/663209/can-someone-explain-about-linux-library-naming
http://www.linux.com/archive/feature/45507?theme=print
Given the way ASDF is used today and the rapidly changing ABI of many CL
implementations, binary compatibility is a nonexistant issue. Today's CL
cares rather about compile-time compatibility.
Either way, I almost think the correct solution is to say
- each library release will have a unique version number
- each library release will have a list of old version numbers for which
it is upwards compatible
- each dependent library or application will list which versions it was
developed for
- the "linker" (require or asdf) selects the newest version compatible
with the version specified by the dependent
This is similar to the libtool scheme, but using general data structures
rather than trying to encode everything into the filename. How would asdf
respond to two files named X.asd? It doesn't scan all such files looking
for the most recent version, does it?
(end rambling)
- Daniel
More information about the asdf-devel
mailing list