summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/bundler/fetcher/dependency.rb6
-rw-r--r--lib/bundler/friendly_errors.rb6
-rw-r--r--lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb7
-rw-r--r--lib/erb.rb6
-rw-r--r--lib/net/http.rb6
-rw-r--r--lib/rubygems/uri_formatter.rb6
-rw-r--r--lib/rubygems/vendor/net-http/lib/net/http.rb6
-rw-r--r--prism/templates/lib/prism/dot_visitor.rb.erb6
8 files changed, 41 insertions, 8 deletions
diff --git a/lib/bundler/fetcher/dependency.rb b/lib/bundler/fetcher/dependency.rb
index e12269925d..c23fa160f4 100644
--- a/lib/bundler/fetcher/dependency.rb
+++ b/lib/bundler/fetcher/dependency.rb
@@ -1,7 +1,11 @@
# frozen_string_literal: true
require_relative "base"
-require "cgi/util"
+begin
+ require "cgi/escape"
+rescue LoadError
+ require "cgi/util"
+end
module Bundler
class Fetcher
diff --git a/lib/bundler/friendly_errors.rb b/lib/bundler/friendly_errors.rb
index 8903abf4a9..99893ed1f1 100644
--- a/lib/bundler/friendly_errors.rb
+++ b/lib/bundler/friendly_errors.rb
@@ -102,7 +102,11 @@ module Bundler
def issues_url(exception)
message = exception.message.lines.first.tr(":", " ").chomp
message = message.split("-").first if exception.is_a?(Errno)
- require "cgi/util"
+ begin
+ require "cgi/escape"
+ rescue LoadError
+ require "cgi/util"
+ end
"https://github.com/rubygems/rubygems/search?q=" \
"#{CGI.escape(message)}&type=Issues"
end
diff --git a/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb b/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb
index cfc0f48197..ea4a0b9e90 100644
--- a/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb
+++ b/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb
@@ -1,6 +1,11 @@
require_relative '../../../../../vendored_net_http'
require_relative '../../../../../vendored_uri'
-require 'cgi' # for escaping
+# for escaping
+begin
+ require 'cgi/escape'
+rescue LoadError
+ require 'cgi'
+end
require_relative '../../../../connection_pool/lib/connection_pool'
autoload :OpenSSL, 'openssl'
diff --git a/lib/erb.rb b/lib/erb.rb
index bdff2deceb..dffc6d943e 100644
--- a/lib/erb.rb
+++ b/lib/erb.rb
@@ -12,7 +12,11 @@
#
# You can redistribute it and/or modify it under the same terms as Ruby.
-require 'cgi/util'
+begin
+ require 'cgi/escape'
+rescue LoadError
+ require 'cgi/util'
+end
require 'erb/version'
require 'erb/compiler'
require 'erb/def_method'
diff --git a/lib/net/http.rb b/lib/net/http.rb
index 797de6aaf5..40ff06edab 100644
--- a/lib/net/http.rb
+++ b/lib/net/http.rb
@@ -1917,7 +1917,11 @@ module Net #:nodoc:
private
def unescape(value)
- require 'cgi/util'
+ begin
+ require "cgi/escape"
+ rescue LoadError
+ require "cgi/util"
+ end
CGI.unescape(value)
end
diff --git a/lib/rubygems/uri_formatter.rb b/lib/rubygems/uri_formatter.rb
index f941eb1421..2022757689 100644
--- a/lib/rubygems/uri_formatter.rb
+++ b/lib/rubygems/uri_formatter.rb
@@ -17,7 +17,11 @@ class Gem::UriFormatter
# Creates a new URI formatter for +uri+.
def initialize(uri)
- require "cgi/util"
+ begin
+ require "cgi/escape"
+ rescue LoadError
+ require "cgi/util"
+ end
@uri = uri
end
diff --git a/lib/rubygems/vendor/net-http/lib/net/http.rb b/lib/rubygems/vendor/net-http/lib/net/http.rb
index ad3e646cca..2edfcb1723 100644
--- a/lib/rubygems/vendor/net-http/lib/net/http.rb
+++ b/lib/rubygems/vendor/net-http/lib/net/http.rb
@@ -1923,7 +1923,11 @@ module Gem::Net #:nodoc:
private
def unescape(value)
- require 'cgi/util'
+ begin
+ require "cgi/escape"
+ rescue LoadError
+ require "cgi/util"
+ end
CGI.unescape(value)
end
diff --git a/prism/templates/lib/prism/dot_visitor.rb.erb b/prism/templates/lib/prism/dot_visitor.rb.erb
index 73d0771eef..6deaa3e726 100644
--- a/prism/templates/lib/prism/dot_visitor.rb.erb
+++ b/prism/templates/lib/prism/dot_visitor.rb.erb
@@ -1,4 +1,8 @@
-require "cgi/util"
+begin
+ require "cgi/escape"
+rescue LoadError
+ require "cgi/util"
+end
module Prism
# This visitor provides the ability to call Node#to_dot, which converts a