On Sat, 24 Apr 2004, Joel VanderWerf wrote:

> Ara.T.Howard wrote:
> 
> > i think the problem with both these approaches are that they may not reflect
> > the semantics of version numbers!  for instance, i use the linux/libtool style
> > of versioning (the same used by ld.so - man ld.so)
> > 
> > see
> > 
> >   http://raa.ruby-lang.org/list.rhtml?name=library
> > 
> > specifically
> > 
> >   http://www.codeforpeople.com//lib/ruby/library/library-0.0.0/doc/
> > 
> > so
> > 
> >   if my code requires version 2.1.5, i could use 7.5.0 but NOT 3.0.4
> 
> That was an interesting read on version number semantics, but your 
> example conflicts with my understanding. Wouldn't the 2.1.5 requirement 
> be satisfied by 3.0.1 and in fact by 3.0.x for x>=1? The last digit, 
> IIRC, is a measure of backwards compatibility with previous interface 
> versions. So 3.0.4 isn't even possible, because there are at most 3 
> previous interface versions, not 4. By the same token 7.5.0 doesn't work 
> with 2.x.y thru 6.x.y because it's "interface age" is only 0.
> 
> Did I misunderstand?

no.  you are correct - i swapped revision with age in my example.  sorry for
the confusion.

i'd really like to see something like this in the core.  i use it here at work
were we have (in house joke) single test/production environment and it allows
me to upgrade libs while our near-realtime system is running because in
anything important i require an __exact__ version.  only in developemnt or
less critical code to i allow a 'compatible' version to be found...  it's a
real comfort to be able to upgrade libs without breaking existing code.

the method i use is:

  lib/package-0.0.0.rb
  lib/package.rb

where package.rb is a link to package-0.0.0.rb.  the install will obviously
install both and i end up with

  package-0.0.0.rb
  package-0.1.0.rb
  package-0.2.0.rb
  package-1.0.0.rb
  package-1.0.1.rb
  package-2.0.0.rb
  package.rb

in site_ruby.  i try to keep stuff up to date - but i don't HAVE to.

-a
-- 
===============================================================================
| EMAIL   :: Ara [dot] T [dot] Howard [at] noaa [dot] gov
| PHONE   :: 303.497.6469
| ADDRESS :: E/GC2 325 Broadway, Boulder, CO 80305-3328
| URL     :: http://www.ngdc.noaa.gov/stp/
| TRY     :: for l in ruby perl;do $l -e "print \"\x3a\x2d\x29\x0a\"";done 
===============================================================================