diff options
author | David RodrÃguez <deivid.rodriguez@riseup.net> | 2021-11-29 13:43:09 +0100 |
---|---|---|
committer | git <svn-admin@ruby-lang.org> | 2021-12-04 05:18:11 +0900 |
commit | c38c1d82b14237cd9d4268b88fef28e9379280f9 (patch) | |
tree | 320a2c8f1d0df537dae2c38840982d132dd1f466 | |
parent | 54ca530dbe39f389da2b5972a574460a3665eeff (diff) |
[rubygems/rubygems] Let original EACCES error be raised
This block of code already wraps file operations with
`SharedHelpers.filesystem_access`, which rescues and re-raises more
friendly errors. Also, I'm not fully sure creating a temporary directory
can end up raising an `Errno::EACCES` error from reading `tmpdir`
sources. Finally, this rescue block apparently leads to some false
positives when firewall is blocking the ruby executable on Windows, or
at least that's what we've got reported.
In any case, I think it's best to let the original error be raised.
https://github.com/rubygems/rubygems/commit/f7dbe54404
-rw-r--r-- | lib/bundler/compact_index_client/updater.rb | 5 | ||||
-rw-r--r-- | spec/bundler/bundler/compact_index_client/updater_spec.rb | 10 |
2 files changed, 0 insertions, 15 deletions
diff --git a/lib/bundler/compact_index_client/updater.rb b/lib/bundler/compact_index_client/updater.rb index 06486f98cb..d9b9cec0d4 100644 --- a/lib/bundler/compact_index_client/updater.rb +++ b/lib/bundler/compact_index_client/updater.rb @@ -76,11 +76,6 @@ module Bundler update(local_path, remote_path, :retrying) end - rescue Errno::EACCES - raise Bundler::PermissionError, - "Bundler does not have write access to create a temp directory " \ - "within #{Dir.tmpdir}. Bundler must have write access to your " \ - "systems temp directory to function properly. " rescue Zlib::GzipFile::Error raise Bundler::HTTPError end diff --git a/spec/bundler/bundler/compact_index_client/updater_spec.rb b/spec/bundler/bundler/compact_index_client/updater_spec.rb index 4acd7dbc63..fe417e3920 100644 --- a/spec/bundler/bundler/compact_index_client/updater_spec.rb +++ b/spec/bundler/bundler/compact_index_client/updater_spec.rb @@ -36,16 +36,6 @@ RSpec.describe Bundler::CompactIndexClient::Updater do end end - context "when bundler doesn't have permissions on Dir.tmpdir" do - it "Errno::EACCES is raised" do - allow(Bundler::Dir).to receive(:mktmpdir) { raise Errno::EACCES } - - expect do - updater.update(local_path, remote_path) - end.to raise_error(Bundler::PermissionError) - end - end - context "when receiving non UTF-8 data and default internal encoding set to ASCII" do let(:response) { double(:response, :body => "\x8B".b) } |