Issue #6124 has been updated by Bohuslav Kabrda.


Here is another issue:
If a gem package wants to depend on a gemified piece of standard library, it should also have it in its gemspec, right? As Vit has already mentioned, we had completely unbundled the fake-gems, but we are getting another issue: If the gemspec requires, for example, bigdecimal >= 1.1.0, it won't work with Ruby < 1.9, because bigdecimal gem doesn't work with these. So even if a new version of bigdecimal comes out and a gem developer wants to add it to his gemspec to make sure he uses it, he can't, because his package won't work with Ruby < 1.9 then.
----------------------------------------
Bug #6124: What is the purpose of "fake" gems in Ruby
https://bugs.ruby-lang.org/issues/6124#change-24570

Author: Vit Ondruch
Status: Open
Priority: Normal
Assignee: Eric Hodel
Category: 
Target version: 
ruby -v: ruby 1.9.3p0 (2011-10-30) [x86_64-linux]


As I tried to point out in #6123, the "fake" gems which are distributed with Ruby breaks user's expectations. The following example should fail:

$ ruby --disable-gems -e "puts require('bigdecimal')"
true

However, it is not failing. Could you please enlighten me what is the purpose of fake gem then? Even if you install updated BigDecimal from rubygems.org, the bundled version will won unless you use "gem 'bidgecimal'" somewhere in the code. This makes no sense.

Don't take me wrong, I am big fan of gemified stdlib #5481, however this is not the way how it should be done.


-- 
http://bugs.ruby-lang.org/