Dne 18.9.2013 19:26, Allen Hewes napsal(a):
Hi Vit,
I am not sure that this is related but, the bundler as "built" (packaged) in
Fedora has a "bug" in it. "lib/bundler/vendor" should have never been
removed [1].
It has to be removed due to Fedora policies.
Well, if it was removed, someone should have modified bundler to load
the thor/net-http-persistent gem via a require/relative_require. But that's not what
happened.
There is no way how to do it, since you don't know where to find
thor/net-http-persistent on the system. If Bundler had used original
RubyGems require, it would be OK, but they opted to use their custom
loader. That is the biggest fail in Bundler design (if we can speak of
desing, since Bundler is unfortunately just pile of workarounds).
As a matter of fact, bundler tells you NOT to use a "gem" installed version of
thor [2], as that "may cause Bundler to malfunction in unexpected ways."
Yes, they opted for bundling instead of proper design. Unfortunately,
Bundler upstream was never open to any of our suggestions towards better
packaging and easier collaboration with distributions. They live in Ruby
(MacOS X) world and they can't imagine, that somebody might use
something else.
When I looked into this for my needs, I determined that a patch would be required to make
bundler happy if the "lib/bundler/vendor" directory was removed. You'd have
to modify vendored_thor.rb and vendored_persistent.rb.
Could you share your patch with us, please?
Usage of many of the bundler arguments (--with/without, etc) causes errors when
"lib/bundler/vendor" has been removed.
Some examples? Bugzillas?
Vít