ruby versions api compatability

Mohammed Morsi mmorsi at redhat.com
Mon Jan 4 19:13:35 UTC 2010


On 12/25/2009 06:41 AM, Jeroen van Meeuwen wrote:
> On 12/24/2009 03:14 PM, Bryan Kearney wrote:
>    
>> On 12/24/2009 07:34 AM, Jeroen van Meeuwen wrote:
>>      
>>> On 12/08/2009 02:38 AM, Mohammed Morsi wrote:
>>>        
>>>> Hey Jeroen, thanks alot for your Ruby roundtable discussion at FUDCon. I
>>>> was looking around for various solutions to the Ruby version
>>>> compatibility problem for Fedora/Yum and recalled the 'alternatives'
>>>> utility which I believe might help out w/ this problem as well.
>>>>
>>>>          
>>> Hi Mohammed,
>>>
>>> please don't misunderstand me I was not ignoring you ;-) Sorry for my
>>> late response but I had been working on *exactly* what you describe here ;-)
>>>        
>> I hate to be a naysayer without a better solution, but I have never felt
>> that the alternatives was a great model. I tend to use environment
>> variables and not alternatives. Would the java guys do it that way again
>> if they could?
>>
>>      
> I don't know of any alternatives - no pun intended.
>
> If we were to do the work without alternatives, that's fine with me, but
> wouldn't it end up like... messy?
>
> All shebangs would have to be #!/usr/bin/env ruby, right?
>
> I think with environment variables rather then alternatives, given that
> ruby-1.9.1 would be the default stack, to execute facter with ruby-1.8.6
> compares as follows:
>
> ruby-1.8.6 /usr/bin/facter
>
> env ruby=/usr/bin/ruby-1.8.6 /usr/bin/facter
>
> but please you have more experience with the environment variables so
> correct me if I'm wrong.
>
> -- Jeroen
> _______________________________________________
> ruby-sig mailing list
> ruby-sig at lists.fedoraproject.org
> https://admin.fedoraproject.org/mailman/listinfo/ruby-sig
>    
Thinking about it, alternatives would give us a nice way to switch 
between Ruby interpreters on the fly, but thats about it, we would still 
need to have different versioned stacks due to the API 
incompatabilities, and the interpreter switching could be done through 
environment variables as you mentioned. Though it would be kinda cool to 
be able to switch between different versions of the official Ruby 
interpreter as well as JRuby, Maglev, or any other one w/ a simple 
targeted command, this was just a random idea I had to somewhat help 
tackle the API discreprancies, but agree its more work/complexity than 
its worth at this moment.

     -Mo


More information about the ruby-sig mailing list