diff --git a/lib/loogi_http.rb b/lib/loogi_http.rb index b3aee46..1f0bf06 100644 --- a/lib/loogi_http.rb +++ b/lib/loogi_http.rb @@ -1,4 +1,3 @@ -require 'loogi_http/ruby2_keywords' require 'loogi_http/builder' require 'loogi_http/version' require 'loogi_http/middleware' diff --git a/lib/loogi_http/configuration.rb b/lib/loogi_http/configuration.rb index a5e5441..8780e63 100644 --- a/lib/loogi_http/configuration.rb +++ b/lib/loogi_http/configuration.rb @@ -1,5 +1,5 @@ -require 'faraday_middleware' require 'forwardable' +require 'faraday/follow_redirects' module LoogiHttp # Configure a `Faraday::Connection` (aka a _stack_). diff --git a/lib/loogi_http/ruby2_keywords.rb b/lib/loogi_http/ruby2_keywords.rb deleted file mode 100644 index d40885c..0000000 --- a/lib/loogi_http/ruby2_keywords.rb +++ /dev/null @@ -1,25 +0,0 @@ -require 'faraday' - -# Monkey patches to properly delegate Faraday 1.0 keyword arguments on Ruby 3 -# See https://eregon.me/blog/2021/02/13/correct-delegation-in-ruby-2-27-3.html - -Faraday::DependencyLoader.module_eval do - def new(*args, &block) - raise "missing dependency for #{self}: #{load_error.message}" unless loaded? - - super(*args, &block) - end - - ruby2_keywords :new if respond_to?(:ruby2_keywords, true) -end - -Faraday::RackBuilder::Handler.class_eval do - def initialize(klass, *args, &block) - @name = klass.to_s - Faraday::RackBuilder::Handler::REGISTRY.set(klass) if klass.respond_to?(:name) - @args = args - @block = block - end - - ruby2_keywords :initialize if respond_to?(:ruby2_keywords, true) -end diff --git a/lib/loogi_http/version.rb b/lib/loogi_http/version.rb index d74f33c..e612e31 100644 --- a/lib/loogi_http/version.rb +++ b/lib/loogi_http/version.rb @@ -1,3 +1,3 @@ module LoogiHttp - VERSION = '2.0.0'.freeze + VERSION = '2.1.0'.freeze end diff --git a/loogi_http.gemspec b/loogi_http.gemspec index a9fea77..57daf26 100644 --- a/loogi_http.gemspec +++ b/loogi_http.gemspec @@ -27,9 +27,9 @@ Gem::Specification.new do |spec| spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) } spec.require_paths = ['lib'] - spec.add_dependency 'faraday', '~> 1.0' + spec.add_dependency 'faraday', '~> 2.0' + spec.add_dependency 'faraday-follow_redirects', '~> 0.5' spec.add_dependency 'faraday-cookie_jar', '~> 0.0.6' - spec.add_dependency 'faraday_middleware', '~> 1.0' spec.add_development_dependency 'bundler', '>= 2.0' spec.add_development_dependency 'byebug', '~> 11.0'