[Ironruby-core] IronRuby version of existing gems

Will Green will at hotgazpacho.org
Wed Mar 10 23:56:42 EST 2010


Attached is a new patch I would propose to address the feedback from the
Ruby Gems team. I would love some feedback on it.

It is a patch against rev 2463 of trunk of Ruby Gems source.

--
Will Green
http://hotgazpacho.org/


On Wed, Mar 10, 2010 at 10:33 PM, Will Green <will at hotgazpacho.org> wrote:

> Based on some work that Shri and I did to figure this out, I have created
> and submitted a patch to Ruby Gems to include support form .Net native gems:
>
>
> http://rubyforge.org/tracker/index.php?func=detail&aid=27951&group_id=126&atid=577
>
>
> <http://rubyforge.org/tracker/index.php?func=detail&aid=27951&group_id=126&atid=577>As
> you can see, I've gotten some push-back from the Ruby Gems team on the
> naming of the platform for the gems. The problem is that they don't like the
> "." in ".net" (i.e. "universal-.net-2.0"), and have suggested alternatives
> such as "dotnet", "dotNet", and "Net". I have asked for clarification on
> their position.
>
> If I understand the Gem::Platform class correctly, the initialize method
> takes in the values read from RbConfig, and performs some translation to
> come up with a Gem platform name. So, without any changes to IronRuby
> itself, we could have gems with names like
> "iron-term-ansicolor-universal-dotnet". Of course, it would require a small
> tweak to the version of Ruby Gems that is distributed with IronRuby, but the
> change is very minor.
>
> So, does anyone object to .Net native gems like:
>
> "gemname-universal-dotnet"
> "gemname-universal-dotnet-2.0"
> "gemname-universal-dotnet-4.0"
>
> I think this would get the patch accepted more quickly.
>
> Is this kosher with LCA, or even something that needs to be brought to
> their attention?
>
> --
> Will Green
> http://hotgazpacho.org/
>
>
> On Sun, Mar 7, 2010 at 10:01 PM, Jim Deville <jdeville at microsoft.com>wrote:
>
>> I’m also wondering what will happen if you put the gem on two different
>> gem servers (if that is possible, like github and rubyforge). Does gem
>> attempt all sources to find the most specific? Or does it go with the most
>> specific gem from the first source?
>>
>>
>>
>> JD
>>
>>
>>
>> *From:* ironruby-core-bounces at rubyforge.org [mailto:
>> ironruby-core-bounces at rubyforge.org] *On Behalf Of *Shri Borde
>> *Sent:* Sunday, March 07, 2010 6:53 PM
>>
>> *To:* ironruby-core at rubyforge.org
>> *Subject:* Re: [Ironruby-core] IronRuby version of existing gems
>>
>>
>>
>> Will, could you recreate the universal-.net gem again and push it? I think
>> it might have been created incorrectly. The persisted Gem::Specification has
>> @new_platform and @original_platform set to “universal-unknown” which might
>> happen if you create it with MRI as I had mentioned below…
>>
>>
>>
>> *From:* ironruby-core-bounces at rubyforge.org [mailto:
>> ironruby-core-bounces at rubyforge.org] *On Behalf Of *Shri Borde
>> *Sent:* Sunday, March 07, 2010 2:27 PM
>> *To:* ironruby-core at rubyforge.org
>> *Subject:* Re: [Ironruby-core] IronRuby version of existing gems
>>
>>
>>
>> My guess is that RubyGems tries to look for an exact platform match first.
>> If there is no exact match, it somehow prefers “ruby” over other platforms.
>>
>>
>>
>> Btw, you could just change clr_version in
>> Merlin\Main\Languages\Ruby\Libs\rbconfig.rb to “4.0” to simulate running on
>> .NET 4. After doing this and using the “—platform universal-.net” option,
>> iron-term-ansicolor-0.0.3-universal-.net*-2.0* was installed which was
>> surprising to me as I would have expected it to install
>> iron-term-ansicolor-0.0.3-universal-.net. When I used the “—platform
>> universal-.net-4.0” option, iron-term-ansicolor-0.0.3 was installed which
>> was also surprising. So there does not seem to be any way to install
>> iron-term-ansicolor-0.0.3-universal-.net.
>>
>>
>>
>> *From:* ironruby-core-bounces at rubyforge.org [mailto:
>> ironruby-core-bounces at rubyforge.org] *On Behalf Of *Will Green
>> *Sent:* Sunday, March 07, 2010 6:33 AM
>> *To:* ironruby-core
>> *Subject:* Re: [Ironruby-core] IronRuby version of existing gems
>>
>>
>>
>> Thanks, Daniele!
>>
>>
>>
>> I've got three version of iron-term-ansicolor out there on RubyGems.org:
>>
>>
>>
>>    - iron-term-ansicolor-0.0.3
>>    (gemspec.platform="ruby")
>>    - iron-term-ansicolor-0.0.3-universal-.net
>>     (gemspec.platform="universal-.net")
>>    - iron-term-ansicolor-0.0.3-universal-.net-2.0
>>     (gemspec.platform="universal-.net-2.0")
>>
>>
>>
>> It looks like the .Net 4 runtime selected the non-platform specific gem,
>> while the .Net 2 runtime selected the "universal-.net-2.0" gem.
>>
>>
>> --
>> Will Green
>> http://hotgazpacho.org/
>>
>> On Sun, Mar 7, 2010 at 4:01 AM, Daniele Alessandri <suppakilla at gmail.com>
>> wrote:
>>
>> On Sun, Mar 7, 2010 at 08:07, Will Green <will at hotgazpacho.org> wrote:
>>
>> > I would appreciate if someone running the latest from git would try
>> > ir -S gem install iron-term-ansicolor
>> > on both the .Net 2 and the .Net 4 runtimes, and let me know which gem
>> gets
>> > installed.
>>
>> C:\Users\nrk\Repositories\ironruby\Merlin\Main\bin\Debug>ir --version
>> IronRuby 0.9.4.0 on .NET 2.0.50727.4200
>>
>> C:\Users\nrk\Repositories\ironruby\Merlin\Main\bin\Debug>ir -S gem
>> install iron-term-ansicolor --no-rdoc --no-ri
>>
>> Successfully installed iron-term-ansicolor-0.0.3-universal-.net-2.0
>> 1 gem installed
>>
>> C:\Users\nrk\Repositories\ironruby\Merlin\Main\bin\Debug>ir --version
>> IronRuby 0.9.4.0 on .NET 4.0.30128.1
>>
>> C:\Users\nrk\Repositories\ironruby\Merlin\Main\bin\Debug>ir -S gem
>> install iron-term-ansicolor --no-rdoc --no-ri
>>
>> Successfully installed iron-term-ansicolor-0.0.3
>>
>> 1 gem installed
>>
>> --
>> Daniele Alessandri
>> http://www.clorophilla.net/
>> http://twitter.com/JoL1hAHN
>>
>> _______________________________________________
>> Ironruby-core mailing list
>> Ironruby-core at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/ironruby-core
>>
>>
>>
>> _______________________________________________
>> Ironruby-core mailing list
>> Ironruby-core at rubyforge.org
>> http://rubyforge.org/mailman/listinfo/ironruby-core
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20100310/fc420c15/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: dotnet_ironruby_support.diff
Type: application/octet-stream
Size: 3327 bytes
Desc: not available
URL: <http://rubyforge.org/pipermail/ironruby-core/attachments/20100310/fc420c15/attachment.obj>


More information about the Ironruby-core mailing list