Project

General

Profile

Actions

Bug #7807

closed

[PATCH] Remove duplicated load paths when empty version string is configured

Added by vo.x (Vit Ondruch) about 11 years ago. Updated over 4 years ago.

Status:
Rejected
Target version:
-
ruby -v:
ruby 2.0.0dev (2013-02-08 trunk 39161) [x86_64-linux]
Backport:
[ruby-core:52049]

Description

=begin
My configuration options:
./configure --build=x86_64-redhat-linux-gnu --host=x86_64-redhat-linux-gnu --program-prefix= --disable-dependency-tracking --prefix=/usr --exec-prefix=/usr --bindir=/usr/bin --sbindir=/usr/sbin --sysconfdir=/etc --datadir=/usr/share --includedir=/usr/include --libdir=/usr/lib64 --libexecdir=/usr/libexec --localstatedir=/var --sharedstatedir=/var/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-ruby-version='' --with-rubyhdrdir=/usr/include --with-ruby-pc=ruby.pc --disable-rpath --enable-shared

Prior:

$ ruby -e "puts $:"
/usr/lib64/ruby/site_ruby/
/usr/lib64/ruby/site_ruby//x86_64-linux
/usr/lib64/ruby/site_ruby
/usr/lib64/ruby/vendor_ruby/
/usr/lib64/ruby/vendor_ruby//x86_64-linux
/usr/lib64/ruby/vendor_ruby
/usr/lib64/ruby/
/usr/lib64/ruby//x86_64-linux

After:

$ ruby -e "puts $:"
/usr/lib64/ruby/site_ruby
/usr/lib64/ruby/site_ruby/x86_64-linux
/usr/lib64/ruby/vendor_ruby
/usr/lib64/ruby/vendor_ruby/x86_64-linux
/usr/lib64/ruby
/usr/lib64/ruby/x86_64-linux

BTW the duplicated paths caused ActiveSupport test suite errors as far as I remember [1]. Not sure if it was already changed there.

[1] https://bugzilla.redhat.com/show_bug.cgi?id=718695
=end


Files

cleanup-non-versioned-paths.patch (2.52 KB) cleanup-non-versioned-paths.patch vo.x (Vit Ondruch), 02/09/2013 08:23 AM

Updated by nobu (Nobuyoshi Nakada) about 11 years ago

  • Status changed from Open to Rejected

It doesn't work right now, sorry.

Updated by vo.x (Vit Ondruch) about 11 years ago

Could you be more specific please? What doesn't work? It cannot be applied? Or does it break something? I can provide updated patch of course.

Updated by vo.x (Vit Ondruch) about 11 years ago

  • Status changed from Rejected to Open
  • Assignee set to nobu (Nobuyoshi Nakada)

Could you please explain? Why r39171 instead of applying my patch? Why there should be version in the path? Actually it is not Ruby version but Ruby ABI version, so it will not help you to install Ruby 1.9.1, 1.9.2 and 1.9.3 side by side, since all of them have the same ABI. In Fedora, we are pretty happy without the version for one year already.

Updated by vo.x (Vit Ondruch) about 11 years ago

Note that in 1.8.7 days, there was used also different, more generic approach [1] to remove duplicated load paths. However I don't think it is better solution.

[1] http://pkgs.fedoraproject.org/cgit/ruby.git/tree/ruby-1.8.7-p352-path-uniq.patch?h=f16

Updated by vo.x (Vit Ondruch) almost 11 years ago

One issue preventing this from work fixed in RubyGems [1]. I am not aware of any other after rebuild of more then 400 of packages in Fedora against Ruby 2.0.

Actually, some builds depends on this field in ruby.pc [2], but they would fail the same if I would go with "ruby-version='foo'", which is allowed version string (I hope you are not goint to disable it, since I mentioned it here :)

[1] https://github.com/rubygems/rubygems/pull/455
[2] https://bugzilla.redhat.com/show_bug.cgi?id=923703

Updated by luislavena (Luis Lavena) almost 11 years ago

  • Status changed from Open to Assigned
  • Target version set to 2.6
Actions #9

Updated by naruse (Yui NARUSE) over 6 years ago

  • Target version deleted (2.6)
Actions #10

Updated by jeremyevans0 (Jeremy Evans) over 4 years ago

  • Status changed from Assigned to Rejected
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0Like0Like0Like0Like0Like0Like0Like0