Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ruby: Revert rubygems to 3.0.6 for ruby 2.6 and earlier #76757

Closed
wants to merge 2 commits into from

Conversation

@andersk
Copy link
Contributor

@andersk andersk commented Jan 1, 2020

Motivation for this change

The rubygems upgrade from 3.0.6 to 3.1.2 (#76495) broke vagrant at runtime. Specifically, it

  • works with ruby 2.6 and rubygems 3.0.6,
  • fails with ruby 2.6 and rubygems 3.1.2,
  • works with ruby 2.7 and rubygems 3.1.2,

perhaps because bundler 2.1 vendored by rubygems 3.1 conflicts with bundler 1.17 vendored by ruby 2.6.

Fixes #76629.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
Notify maintainers

cc @vrthra @manveru @alyssais @zimbatm @aneeshusa

The rubygems upgrade from 3.0.6 to 3.1.2 (#76495) broke vagrant at
runtime.  Specifically, it

* works with ruby 2.6 and rubygems 3.0.6,
* fails with ruby 2.6 and rubygems 3.1.2,
* works with ruby 2.7 and rubygems 3.1.2,

perhaps because bundler 2.1 vendored by rubygems 3.1 conflicts with
bundler 1.17 vendored by ruby 2.6.

Fixes #76629.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
@alyssais
Copy link
Member

@alyssais alyssais commented Jan 1, 2020

I’m strongly opposed to reverting just because one package is incompatible.

Just running `vagrant --version` was insufficient to catch #76629, but
this would have.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
@andersk
Copy link
Contributor Author

@andersk andersk commented Jan 1, 2020

I’m open to any suggestions—what should we do?

Note that I’m not reverting anything for ruby 2.7, with which the new rubygems works fine.

@alyssais
Copy link
Member

@alyssais alyssais commented Jan 1, 2020

@andersk
Copy link
Contributor Author

@andersk andersk commented Jan 1, 2020

Hmm. I thought it did, but my test must have been wrong. I tested vagrant.override { ruby = ruby_2_7; } on top of this patch, which works, but without this patch, it still fails in the same way. So Ruby 2.6 must have been leaking in to my test somewhere.

@andersk
Copy link
Contributor Author

@andersk andersk commented Jan 1, 2020

I discovered an alternative fix on the Vagrant side only: #76765. I have no idea why it works, though.

@andersk andersk closed this Jan 1, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

2 participants
You can’t perform that action at this time.