ddollar / foreman

Manage Procfile-based applications

Home Page:http://ddollar.github.com/foreman

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

foreman not working with thor update

keyranova opened this issue · comments

commented

Since foreman is set up to work with thor 0.19.x, it won't work by default on a new rails install until this is updated.

https://github.com/ddollar/foreman/blob/master/foreman.gemspec#L20

commented

Just tried it out myself and all tests pass with the newest version of thor:
https://github.com/kurtnovack/foreman/tree/thor-version

thor 0.20.0 also has a bugfix that's been a long time coming (rails/thor#538 (comment)); currently foreman is preventing that upgrade. (So we're still stuck on a pre-bug version of thor.)

If you take foreman out of your Gemfile as the README suggests you won't have dependency resolution problems. I suggest installing it as a system-level tool (gem install foreman) rather than as a code-level dependency of your app.

@ddollar the issue is that thor has a bug in version 0.19.4, which is fixed in thor 0.20.0.
If you try and run system installed foreman with only system install thor v 0.20.0 foreman won't start.

This is because the gem dependency on thor is '~> 0.19.1'.

So as the poster was saying, if you can't use thor v0.19.1 ( even as a dependency as foreman ), then you're out of luck. If thor v0.20 works with foreman, then it would be great to change the dependency to allow it.

@eadz I was under the same belief as you, but after reading the feedback from @ddollar in #678 I am kind of understanding his position.

That is: if you install foreman by doing gem install foreman instead of trying to get it into your Gemfile, it will always work. Regardless of whether your project uses thor or not, or even a different version. I tried locally, by doing gem install thor (to get a conflicting, newer version) but to my surprise, running foreman still works.