summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndre Arko <andre@arko.net>2013-03-02 00:16:07 -0800
committerAndre Arko <andre@arko.net>2013-03-02 00:16:07 -0800
commit617bed3c7bc89a3a5a7e3c604ce175ca522dfbbd (patch)
treed3a09a30e6b24ba6ac29627842916ec14a146324
parent7be970b54c708be071767cddfc3b4498556c5b8c (diff)
downloadbundler-617bed3c7bc89a3a5a7e3c604ce175ca522dfbbd.tar.gz
re-handle rubygems requiring openssl
-rw-r--r--lib/bundler/friendly_errors.rb8
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/bundler/friendly_errors.rb b/lib/bundler/friendly_errors.rb
index 4307ef5a83..91ffa34439 100644
--- a/lib/bundler/friendly_errors.rb
+++ b/lib/bundler/friendly_errors.rb
@@ -5,6 +5,14 @@ module Bundler
Bundler.ui.error e.message, :wrap => true
Bundler.ui.trace e
exit e.status_code
+ rescue LoadError => e
+ raise e unless e.message =~ /cannot load such file -- openssl|openssl.so|libcrypto.so/
+ Bundler.ui.error "\nCould not load OpenSSL."
+ Bundler.ui.warn "You must recompile Ruby with OpenSSL support or change the sources in your" \
+ "\nGemfile from 'https' to 'http'. Instructions for compiling with OpenSSL" \
+ "\nusing RVM are available at rvm.io/packages/openssl."
+ Bundler.ui.trace e
+ exit 1
rescue Interrupt => e
Bundler.ui.error "\nQuitting..."
Bundler.ui.trace e