From: "Guy N. Hurst" Date: 2001-02-20T13:06:58+09:00 Subject: [ruby-talk:11149] Re: One source tree for Ruby & modules Conrad Schneiker wrote: > > Stephen White wrote: > ... > # Ruby programs can specify the version of Ruby they're written for, > > They could, but most don't, AFAIK. > I think this issue is significant. And part of the reason is due to the extensions one may have installed. In fact, the only way I have been able to safely deal with this issue is for each script to specify which version of ruby to call in the shebang line. My sysadmin and I have managed to implement multiple simultaneous versions of ruby on the same system in a methodic manner. Any given version of ruby is accessed via "rubyNNN", e.g. "ruby162". The most current version of ruby is additionally accessible via "ruby". So, for example, when I write a script now, I specify ruby162. When I upgrade to 1.6.3, we will install an additional version of ruby accessible via "ruby163". And the old scripts continue to work fine. I would write the new script using "ruby163". I can then upgrade the other scripts at leisure. If I didn't do it this way, I would have formidable migration tasks just to be able to use a recent version. So, in light of this, I would think that any type of a ruby versioning system would have to require previous versions of ruby to also be installed. Then the built-in versioning would be a benefit in that I would not have to hardcode "#!/usr/local/bin/ruby162" into the file, but rather let the versioning system decide. But that would require a mandated, standard means of maintaining multiple installations of ruby on any given system. Guy N. Hurst -- HurstLinks Web Development http://www.hurstlinks.com/ Norfolk, VA 23510 (757)623-9688 FAX 623-0433 PHP/MySQL - Ruby/Perl - HTML/Javascript