diff options
author | Julie Haehn <jhaehn@gmail.com> | 2022-11-30 15:49:33 +1100 |
---|---|---|
committer | git <svn-admin@ruby-lang.org> | 2023-03-07 22:36:36 +0000 |
commit | c5296d9396bee7fd18468b6af727996f6c9f614f (patch) | |
tree | 6cecddc0e5b2db7e760a3acad50774a601a0d191 /lib/unicode_normalize/normalize.rb | |
parent | 56df6d5f9d986a7959eb9cac27e21bc2ed505319 (diff) | |
download | ruby-c5296d9396bee7fd18468b6af727996f6c9f614f.tar.gz |
[rubygems/rubygems] Respect --no-install option for git: sources
Currently, the --no-install option to `bundle package` is totally
ignored for git sources. This can have very strange effects if you have:
- a git-sourced gem,
- with native extensions,
- whose extconf.rb script depends on another gem,
- which is installed from Rubygems in the gemfile.
In that circumstance, `bundle package --no-install --all` will download
the Rubygems dependencies to `vendor/cache` but NOT install them. It
will also check out the git gems to `vendor/cache` (good), and attempt
to build their native extensions (bad!).
The native extension build will fail because the extconf.rb script crashes,
since the dependency it needs is missing.
I implemented a fix for this in `source/git.rb`, since this is analogous
to what's happening in `source/rubygems.rb`. I do admit though the whole
thing is a little strange though - an "install" method that.... proceeds
to look at a global flag to not install anything.
Add test to confirm cache respects the --no-install flag
https://github.com/rubygems/rubygems/commit/5a77d1c397
Co-authored-by: KJ Tsanaktsidis <kj@kjtsanaktsidis.id.au>
Diffstat (limited to 'lib/unicode_normalize/normalize.rb')
0 files changed, 0 insertions, 0 deletions