Issue #6124 has been updated by bkabrda (Bohuslav Kabrda).


Activesupport gem seems to have a problem with this, too: https://github.com/rails/rails/issues/5355.
In short, if new version of bigdecimal is released, activesupport won't pick it up, as it is not in the gemspec and therefore the "fake gem", present in ruby load path will get picked up. So what exactly is the point of splitting the standard library into gems, when updating these gems doesn't actually put the new ones into use?
----------------------------------------
Bug #6124: What is the purpose of "fake" gems in Ruby
https://bugs.ruby-lang.org/issues/6124#change-27002

Author: vo.x (Vit Ondruch)
Status: Assigned
Priority: Normal
Assignee: drbrain (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/