rubygem macro error

Paul Wouters paul at xelerance.com
Wed Nov 9 16:02:11 UTC 2011


On Wed, 9 Nov 2011, Alex Dalitz wrote:

(CC:ed Fedora-devel, we're trying to figure out the ruby bug with %3d ri-doc names)

>> I tried using yours and i had to make some xoes for it to build.
>> It used "ruby-gems" instead of "rubygems". The was a "=" -> "=3D"
>> caused by one of our mail agents. then it tried something odd
>> with a spec file template I commented out. The resulting build
>> worked and had the identical issues, eg:
>>
>> /Library/Ruby/Gems/1.8/doc/dnsruby-1.53/ri/Dnsruby/Resolver/packet_timeout%3d-i.yaml
>> /Library/Ruby/Gems/1.8/doc/dnsruby-1.53/ri/Dnsruby/Resolver/persistent_tcp%3d-i.yaml
>> /Library/Ruby/Gems/1.8/doc/dnsruby-1.53/ri/Dnsruby/Resolver/persistent_udp%3d-i.yaml
>> /Library/Ruby/Gems/1.8/doc/dnsruby-1.53/ri/Dnsruby/Resolver/port%3d-i.yaml
>
> This is odd.
>
> The %3d characters in the filenames are because the Ruby setter methods are named "<variable_name>=" - this is a common pattern across all Ruby code. The filenames are generated by the rdoc tool - nothing to do with dnsruby or its packaging. This leads me to believe that all Ruby gems packaged as rpms would have this same problem - and yet this is surely not the case?

right, though checking on mine, there is actually one other one:

$ find /usr/lib/ruby/gems/1.8/doc/ |grep 3d |grep -v Dnsruby
/usr/lib/ruby/gems/1.8/doc/pg-0.11.0/ri/PGconn/internal_encoding%3d-i.yaml

> As a workaround, I suppose it's worth mentioning that the doc folder could simply be removed from the gem installation. That would then give an rpm with the Ruby code, but without access to the ri documentation system. Does this also contravene rpm guidelines?

I talked about that, and was told they preferred the broken filenames
over not having anything. Which is why it ended up packaged with these
mistakes in fedora.

Paul


More information about the devel mailing list