fpm fails with bundler 2.0.0 and rubygems 3.0.2

Created on 3 Jan 2019  Â·  4Comments  Â·  Source: jordansissel/fpm

After upgrading to bundler 2.0.0 (release this morning) and rubygems 3.0.2 I'm seeing the following issue when trying to run fpm:

{
  :timestamp=>"2019-01-03T09:18:08.366690-0800",
  :message=>"ERROR:  While executing gem ... (OptionParser::InvalidOption)",
  :level=>:info,
  :file=>"cabin/mixins/pipe.rb",
  :line=>"47",
  :method=>"block in pipe"
}
{
  :timestamp=>"2019-01-03T09:18:08.366856-0800",
  :message=>"    invalid option: --no-ri",
  :level=>:info,
  :file=>"cabin/mixins/pipe.rb",
  :line=>"47",
  :method=>"block in pipe"
}
{
  :timestamp=>"2019-01-03T09:18:08.369996-0800",
  :message=>"Process failed: gem failed (exit code 1). Full command was:[\"gem\", \"install\", \"--quiet\", \"--no-ri\", \"--no-rdoc\", \"--no-user-install\", \"--install-dir\", \"/tmp/package-gem-staging-8ff836e256f9d0bc9b22c19cda6fc12c0a75b9965342a5f7738b6647d59d/var/lib/gems/2.3.0\", \"--ignore-dependencies\", \"-E\", \"--bindir\", \"/tmp/package-gem-staging-8ff836e256f9d0bc9b22c19cda6fc12c0a75b9965342a5f7738b6647d59d/usr/local/bin\", \"my-gem-1.3.48559.gem\"]",
  :level=>:error,
  :file=>"fpm/command.rb",
  :line=>"505",
  :method=>"rescue in execute"
}

The gem command no longer accepts --no-ri or --no-rdoc - use --no-document instead.

Most helpful comment

I put together a pull request for this which would break for anybody using old (i.e. <2.0.0) versions of RubyGems:

https://github.com/jordansissel/fpm/pull/1583

It would be reasonable to get the rubygem version via gem --version and use Gem::Version to compare when deciding if we use the --no-document or older flags. The Makefile and Dockerfile would be messier if we need to support both ways there too.

All 4 comments

I put together a pull request for this which would break for anybody using old (i.e. <2.0.0) versions of RubyGems:

https://github.com/jordansissel/fpm/pull/1583

It would be reasonable to get the rubygem version via gem --version and use Gem::Version to compare when deciding if we use the --no-document or older flags. The Makefile and Dockerfile would be messier if we need to support both ways there too.

I think this was fixed in https://github.com/jordansissel/fpm/commit/57fb023ee20df0b471476826b077ea38b2d9bbe0.

Unfortunately, it seems to not have been included in any released version, yet.

@jordansissel do I have release bit here?

I’ll check shortly to make sure you can release to ruby gems also.

On Wed, Mar 25, 2020 at 9:28 AM Jose Diaz-Gonzalez notifications@github.com
wrote:

@jordansissel https://github.com/jordansissel do I have release bit
here?

—
You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
https://github.com/jordansissel/fpm/issues/1582#issuecomment-603942876,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABAF2X5VU5AKMDDHLR52ALRJIWLBANCNFSM4GNCDPPA
.

Was this page helpful?
0 / 5 - 0 ratings