Forum: Ruby-core [Assigned] Install local versions of bundeld gems

Eabad423977cfc6873b8f5df62b848a6?d=identicon&s=25 unknown (Guest)
on 2014-09-01 14:30
(Received via mailing list)
Issue #10192 has been updated by Hiroshi SHIBATA.

Status changed from Open to Assigned
Assignee set to Hiroshi SHIBATA

----------------------------------------
Bug #10192: Install local versions of bundeld gems
https://bugs.ruby-lang.org/issues/10192#change-48598

* Author: Vit Ondruch
* Status: Assigned
* Priority: Normal
* Assignee: Hiroshi SHIBATA
* Category:
* Target version:
* ruby -v: ruby 2.2.0dev (2014-08-26 trunk 47288) [x86_64-linux]
* Backport: 2.0.0: UNKNOWN, 2.1: UNKNOWN
----------------------------------------
Trying to build recent version of Ruby in Fedora's builder, which has no
access to the internet, the "make install" fails with error:

~~~
installing bundle gems:       /usr/share/ruby/gems/ (build_info, cache,
doc, extensions, gems, specifications)
                              minitest-5.4.0.gem
                              power_assert-0.1.3.gem
/builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems/resolver.rb:406:in
`resolve_for_zero': Unable to resolve dependency: 'test-unit (= 3.0.0)'
requires 'power_assert (>= 0)' (Gem::UnsatisfiableDependencyError)
  from
/builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems/resolver.rb:320:in
`resolve_for'
  from
/builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems/resolver.rb:175:in
`resolve'
  from
/builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems/request_set.rb:254:in
`resolve'
  from
/builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems/dependency_installer.rb:436:in
`resolve_dependencies'
  from
/builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems/dependency_installer.rb:371:in
`install'
  from /builddir/build/BUILD/ruby-2.2.0-r47288/lib/rubygems.rb:550:in
`install'
  from ./tool/rbinstall.rb:726:in `block (2 levels) in <main>'
  from ./tool/rbinstall.rb:725:in `each'
  from ./tool/rbinstall.rb:725:in `block in <main>'
  from ./tool/rbinstall.rb:756:in `call'
  from ./tool/rbinstall.rb:756:in `block in <main>'
  from ./tool/rbinstall.rb:753:in `each'
  from ./tool/rbinstall.rb:753:in `<main>'
uncommon.mk:239: recipe for target 'do-install-all' failed
~~~

As it appears, the installer doesn't mind to access the internet and
fetch the dependencies if needed, so nobody noticed this issue yet. The
attached patch allows to install only locally available gems and also
disables their dependency checking, to allow to install them unordered
and as a result offline "make isntall"

---Files--------------------------------
0001-Install-bundled-versions-of-gems-and-don-t-check-the.patch (1.08
KB)
This topic is locked and can not be replied to.