diff --git a/.gitignore b/.gitignore index 32ef4b9..a94a097 100644 --- a/.gitignore +++ b/.gitignore @@ -11,3 +11,4 @@ log/* measurement/* pkg/* .DS_Store +.tool-versions diff --git a/Gemfile b/Gemfile index 9f08f3a..4a3feea 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,6 @@ source 'https://rubygems.org' -gem 'jruby-openssl', '~> 0.10.5', :platforms => :jruby +gem 'jruby-openssl', '~> 0.10.5', platforms: :jruby gem 'rake', '>= 12.0' gem 'yard', '>= 0.9.11' @@ -13,17 +13,16 @@ end group :test do gem 'coveralls_reborn', '~> 0.19.0', require: false - gem 'hashie', '>= 3.4.6', '~> 4.0.0', :platforms => [:jruby_18] - gem 'json', '~> 2.3.0', :platforms => %i[jruby_18 jruby_19 ruby_19] - gem 'mime-types', '~> 3.1', :platforms => [:jruby_18] - gem 'rack', '>= 2.0.6', :platforms => %i[jruby_18 jruby_19 ruby_19 ruby_20 ruby_21] + gem 'hashie', '>= 3.4.6', '~> 4.0.0', platforms: [:jruby_18] + gem 'json', '~> 2.3.0', platforms: %i[jruby_18 jruby_19 ruby_19] + gem 'mime-types', '~> 3.1', platforms: [:jruby_18] gem 'rack-test' - gem 'rest-client', '~> 2.0.0', :platforms => [:jruby_18] + gem 'rest-client', '~> 2.0.0', platforms: [:jruby_18] gem 'rspec', '~> 3.5' gem 'rack-freeze' - gem 'rubocop', '>= 0.58.2', '< 0.69.0', :platforms => %i[ruby_20 ruby_21 ruby_22 ruby_23 ruby_24] + gem 'rubocop', '>= 0.58.2', '< 0.69.0', platforms: %i[ruby_20 ruby_21 ruby_22 ruby_23 ruby_24] gem 'simplecov-lcov' - gem 'tins', '~> 1.13', :platforms => %i[jruby_18 jruby_19 ruby_19] + gem 'tins', '~> 1.13', platforms: %i[jruby_18 jruby_19 ruby_19] end gemspec diff --git a/lib/omniauth/builder.rb b/lib/omniauth/builder.rb index 2882076..5843439 100644 --- a/lib/omniauth/builder.rb +++ b/lib/omniauth/builder.rb @@ -26,7 +26,7 @@ module OmniAuth @options = options end - def provider(klass, *args, &block) + def provider(klass, *args, **opts, &block) if klass.is_a?(Class) middleware = klass else @@ -37,8 +37,7 @@ module OmniAuth end end - args.last.is_a?(Hash) ? args.push(options.merge(args.pop)) : args.push(options) - use middleware, *args, &block + use middleware, *args, **options.merge(opts), &block end def call(env) diff --git a/omniauth.gemspec b/omniauth.gemspec index dc0a90f..640d2be 100644 --- a/omniauth.gemspec +++ b/omniauth.gemspec @@ -6,7 +6,7 @@ require 'omniauth/version' Gem::Specification.new do |spec| spec.add_dependency 'hashie', ['>= 3.4.6'] - spec.add_dependency 'rack', ['>= 1.6.2', '< 3'] + spec.add_dependency 'rack', '~> 2.2.3' spec.add_development_dependency 'bundler', '~> 2.0' spec.add_dependency 'rack-protection' spec.add_development_dependency 'rake', '~> 12.0'