Pkg versioning

rubyists-

is there a preferred method to accomplish this :

require ‘module_name’, ‘1.0.1’

?

i am considering simply writing

require_version ‘module_name’, ‘1.0.1’

where the version string is as a libtool/gnu version string denoting

1.0.1 => interface, impl, age

interface -> the interface number of the module
impl      -> the implimentation number of this interface
age       -> the difference between this, and the oldest interface
             supported

these rules are spelled out very clearly in the libtool docs at
http://www.gnu.org/manual

the require_version method could then more properly be called ‘ld’ or ‘link’

:wink:

if some thought were given to this it could also work with C extensions.

-a

···

Ara Howard
NOAA Forecast Systems Laboratory
Information and Technology Services
Data Systems Group
R/FST 325 Broadway
Boulder, CO 80305-3328
Email: ahoward@fsl.noaa.gov
Phone: 303-497-7238
Fax: 303-497-7259
====================================

is there a preferred method to accomplish this :

require ‘module_name’, ‘1.0.1’

This has been discussed here before, and, AFAIK, no consensus emerged. It’s
been a while, maybe your post will renew the thread :slight_smile:

Chris
http://clabs.org

In article Pine.LNX.4.53.0303111535240.9835@eli.fsl.noaa.gov,

rubyists-

is there a preferred method to accomplish this :

require ‘module_name’, ‘1.0.1’

?

i am considering simply writing

require_version ‘module_name’, ‘1.0.1’

where the version string is as a libtool/gnu version string denoting

1.0.1 => interface, impl, age

interface → the interface number of the module
impl → the implimentation number of this interface
age → the difference between this, and the oldest interface
supported

these rules are spelled out very clearly in the libtool docs at
GNU Manuals Online - GNU Project - Free Software Foundation

the require_version method could then more properly be called ‘ld’ or ‘link’

:wink:

if some thought were given to this it could also work with C extensions.

There was some discussion of the need for this last night at the Portland
Rubyists meeting. We looked at some ways that this is done in Perl, Brian
Ingerson mentioned that he’s created a new Perl module called ‘only’ that
allows multiple versions of a particular module to be installed on your
system and allows you do something like:

use only PackageName => ‘0.3.0’

to get at a particular one.

At any rate, I think we desperately need something like what you’re
proposing with your ‘require_version’. I also tend to think that it would
be nice if it didn’t find the particular package on your machine that it
would go out and search RAA or Freepan for it.

Since there has been no consensus on this issue, I think the best course
of action is that you write the ‘require_version’ and post it up on the
RAA so people can play with it and offer suggestions - there’s nothing
like real code to get the discussion moving.

Phil

···

ahoward ahoward@fsl.noaa.gov wrote:

Chris Morris wrote:

is there a preferred method to accomplish this :

require ‘module_name’, ‘1.0.1’

This has been discussed here before, and, AFAIK, no consensus emerged. It’s
been a while, maybe your post will renew the thread :slight_smile:

Chris
http://clabs.org

Are you thinking along the lines of Brian Ingerson’s “only” Perl module?

I think it would be cool to have something like this. As it stands now
I think you just have to check the VERSION manually, assuming there is
one.

Regards,

Dan

···


a = [74, 117, 115, 116, 32, 65, 110, 111, 116, 104, 101, 114, 32, 82]
a.push(117,98, 121, 32, 72, 97, 99, 107, 101, 114)
puts a.pack(“C*”)