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]. 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.
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."
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.
Usage of many of the bundler arguments (--with/without, etc) causes errors when
"lib/bundler/vendor" has been removed.
/allen
1)
http://pkgs.fedoraproject.org/cgit/rubygem-bundler.git/tree/rubygem-bundl... lines
68-69
2)
https://github.com/bundler/bundler/blob/master/lib/bundler/vendored_thor.rb
-----Original Message-----
From: ruby-sig-bounces(a)lists.fedoraproject.org [mailto:ruby-sig-
bounces(a)lists.fedoraproject.org] On Behalf Of Vít Ondruch
Sent: Tuesday, September 17, 2013 04:31
To: ruby-sig(a)lists.fedoraproject.org
Subject: Re: regin LoadError with rack-mount and backports when trying
to run unicorn
Hi Axilleas,
I believe this is "Bundler" issue. As you can see in [1], rack-mount is
trying to require any available regin prior loading the bundled regin.
Without Bundler, RubyGems would find the regin gem and load it, but
Bundler prohibits it. If you reference regin in your Gemfile, it should
work.
There is no cure for this incompatibility. The best would be to
convince
rack-mount maintainers to remove the bundled regin (not sure if I have
tried it or not). That would solve all these incompatibilities, since
regin would be proper dependency.
Vít
Dne 8.9.2013 19:30, Axilleas Pipinellis napsal(a):
> Ok the title is a little bit mouthful and it contains 4 gems so I'll
> break it down.
>
> I am trying to run unicorn and get GitLab to work. In unicorn's error
> log I see the following:
>
> /usr/share/gems/gems/backports-3.3.2/lib/backports/tools.rb:328:in
> `require': cannot load such file -- regin (LoadError)
>
> I checked the aforementioned line [0] and I found no reference to
regin.
>
> It appears that regin comes as a bundled gem of rack-mount. I checked
> the rack-mount.spec [2] and I saw that we ship it without the bundled
> regin. In an effort to see if this will work, I copied the removed
> vendor/ in /usr/share/gems/... and it worked.
>
> I guess the reason is because in rack-mount/lib/rack/mount/utils.rb
> the path to regin is hardcoded to point in vendor/ [3].
>
> I will file a bug report but I wouldn't know how to describe the
steps
> to reproduce it. Any hints?
>
> TL;DR
> rack-mount raises LoadError without the bundled regin.
>
>
> [0]
>
https://github.com/marcandre/backports/blob/v3.3.2/lib/backports/tools.
rb#L328
> [1]
>
https://github.com/josh/rack-
mount/blob/master/lib/rack/mount/utils.rb#L3
> [2]
>
http://pkgs.fedoraproject.org/cgit/rubygem-rack-
mount.git/tree/rubygem-rack-mount.spec#n14
> [3]
>
https://github.com/josh/rack-
mount/blob/master/lib/rack/mount/utils.rb#L4
>
_______________________________________________
ruby-sig mailing list
ruby-sig(a)lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/ruby-sig
________________________________
Disclaimer Confidentiality Notice: This e-mail, and any attachments and/or documents
linked to this email, are intended for the addressee and may contain information that is
privileged, confidential, proprietary, or otherwise protected by law. Any dissemination,
distribution, or copying is prohibited. This notice serves as a confidentiality marking
for the purpose of any confidentiality or nondisclosure agreement. If you have received
this communication in error, please contact the original sender.