warden-oauthed 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6833a739e7b56cac2f829de64d8bdb55113c7388
4
- data.tar.gz: 7566ef97d81a1544351940baac9e246d390d30bd
3
+ metadata.gz: f92341ab7e33153157360cd3386b9408a085e62d
4
+ data.tar.gz: aee8b78372bd816e9c5e99cb53c5a400e9526444
5
5
  SHA512:
6
- metadata.gz: 61956dbd8fc60f59724290fb3a26da118b1e084b71c4d365ba42b6a35d21bc475c696064d6d3956e5ff305dc7d5fd1e97a9f1fdebe56b7aad295e7286261149a
7
- data.tar.gz: 222d5772ca4e500e6a24feb6d457313719f537ee2f91f2a9ba2ecd465f34c4676cd40392e2bfa1a01b02cc764c5cd2a90f865464f78b5a23b358d81191562940
6
+ metadata.gz: 00204cf50b4846001a83b67ca9204f61427438f6bac28d4f3cb2802b3be854853d752ccf5d746310ed9a3d4cb36b78f57124f37f3c272d290e91db99617ed22d
7
+ data.tar.gz: a91596bd6744ad437a62ca16f86dacb3de404dd1aa5dc282103a78cf896e74ec021e8208d15acb37b7a763ef9f76ccb1be0764ae6b96614d58f8e6fd569b7f16
@@ -0,0 +1,2 @@
1
+ Documentation:
2
+ Enabled: false
data/Gemfile CHANGED
@@ -7,4 +7,4 @@ group :development, :test do
7
7
  gem 'guard-rubocop'
8
8
  gem 'guard-rspec', '4.2.8'
9
9
  gem 'guard-livereload'
10
- end
10
+ end
data/Guardfile CHANGED
@@ -1,10 +1,11 @@
1
1
  group :red_green_refactor, halt_on_fail: true do
2
- guard :rspec, cmd: "bundle exec rspec", failed_mode: 'focus' do
2
+ guard :rspec, cmd: 'bundle exec rspec', failed_mode: 'focus' do
3
3
  watch(%r{^spec/.+_spec\.rb$})
4
- watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
4
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
5
+ end
6
+
7
+ guard :rubocop, all_on_start: false do
8
+ watch(/.+\.rb$/)
9
+ watch(%r{(?:.+/)?\.rubocop\.yml$}) { |m| File.dirname(m[0]) }
5
10
  end
6
- # guard :rubocop, all_on_start: false do
7
- # watch(/.+\.rb$/)
8
- # watch(%r{(?:.+/)?\.rubocop\.yml$}) { |m| File.dirname(m[0]) }
9
- # end
10
11
  end
data/README.md CHANGED
@@ -4,6 +4,8 @@ A [warden](https://github.com/hassox/warden) strategy that provides OAuth authen
4
4
 
5
5
  Check out [sinatra_oauthed_template](https://github.com/sethherr/sinatra_oauthed_template), a sinatra template that uses this strategy to set up authentication without a database.
6
6
 
7
+ Importantly, `sinatra_oauthed_template` sets all the environmental variables in the `.env` file so this will work.
8
+
7
9
  ---
8
10
 
9
- Draws inspiration from [warden-github](https://github.com/Zensaburou/warden-github/)
11
+ Draws inspiration from [warden-github](https://github.com/atmos/warden-github/) :shipit:
data/Rakefile CHANGED
@@ -3,10 +3,11 @@ require 'rubygems/specification'
3
3
  require 'date'
4
4
  require 'bundler'
5
5
 
6
- task :default => [:spec]
6
+ task default: [:spec]
7
7
 
8
8
  require 'rspec/core/rake_task'
9
- desc "Run specs"
9
+
10
+ desc 'Run specs'
10
11
  RSpec::Core::RakeTask.new do |t|
11
12
  t.pattern = 'spec/**/*_spec.rb'
12
13
  end
data/config.ru CHANGED
@@ -10,8 +10,9 @@ end
10
10
 
11
11
  Bundler.require(:runtime)
12
12
 
13
- $LOAD_PATH << File.dirname(__FILE__) + '/lib'
14
- require File.expand_path(File.join(File.dirname(__FILE__), 'lib', 'warden-oauthed'))
15
- require File.expand_path(File.join(File.dirname(__FILE__), 'spec', 'app'))
13
+ file_dir = File.dirname(__FILE__)
14
+ $LOAD_PATH << file_dir + '/lib'
15
+ require File.expand_path(File.join(file_dir, 'lib', 'warden-oauthed'))
16
+ require File.expand_path(File.join(file_dir, 'spec', 'app'))
16
17
 
17
18
  run Example.app
@@ -4,7 +4,11 @@ module Warden
4
4
  class Proxy
5
5
  attr_accessor :client_id, :secret, :scopes, :oauth_domain, :callback_url
6
6
  def initialize(client_id, secret, scopes, oauth_domain, callback_url)
7
- @client_id, @secret, @scopes, @oauth_domain, @callback_url = client_id, secret, scopes, oauth_domain, callback_url
7
+ @client_id = client_id
8
+ @secret = secret
9
+ @scopes = scopes
10
+ @oauth_domain = oauth_domain
11
+ @callback_url = callback_url
8
12
  end
9
13
 
10
14
  def ssl_options
@@ -12,20 +16,25 @@ module Warden
12
16
  end
13
17
 
14
18
  def client
15
- @client ||= OAuth2::Client.new(@client_id, @secret,
19
+ @client ||= OAuth2::Client.new(
20
+ @client_id,
21
+ @secret,
16
22
  ssl: ssl_options,
17
23
  site: oauth_domain,
18
24
  authorize_url: '/oauth/authorize')
19
25
  end
20
26
 
21
27
  def api_for(code)
22
- client.auth_code.get_token(code, :redirect_uri => callback_url)
28
+ client.auth_code.get_token(
29
+ code,
30
+ redirect_uri: callback_url
31
+ )
23
32
  end
24
33
 
25
34
  def authorize_url
26
35
  client.auth_code.authorize_url(
27
- :scope => scopes,
28
- :redirect_uri => callback_url
36
+ scope: scopes,
37
+ redirect_uri: callback_url
29
38
  )
30
39
  end
31
40
  end
@@ -12,25 +12,29 @@ Warden::Strategies.add(:oauthed) do
12
12
  def authenticate!
13
13
  if params['code']
14
14
  begin
15
- api = api_for(params['code'])
16
-
17
- resp = api.get "#{api_url}/me" do |request|
18
- request.params['access_token'] = api.token
19
- end.body
20
-
21
- user = MultiJson.load(resp)
22
- success!(Warden::Oauthed::Oauth::User.new(user['user'], api.token))
15
+ get_user_api_response(params)
23
16
  rescue OAuth2::Error
24
- %(<p>Outdated ?code=#{params['code']}:</p><p>#{$!}</p><p><a href="/auth/oauthed">Retry</a></p>)
17
+ %(<p>Outdated ?code=#{params['code']}:</p><p>#{$ERROR_INFO}</p>
18
+ <p><a href="/auth/oauthed">Retry</a></p>)
25
19
  end
26
20
  else
27
21
  env['rack.session']['return_to'] = env['REQUEST_URI']
28
- throw(:warden, [ 302, {'Location' => authorize_url}, [ ]])
22
+ throw(:warden, [302, { 'Location' => authorize_url }, []])
29
23
  end
30
24
  end
31
25
 
32
26
  private
33
27
 
28
+ def get_user_api_response(params)
29
+ api = api_for(params['code'])
30
+ resp = api.get "#{api_url}/me" do |request|
31
+ request.params['access_token'] = api.token
32
+ end.body
33
+
34
+ user = MultiJson.load(resp)
35
+ success!(Warden::Oauthed::Oauth::User.new(user['user'], api.token))
36
+ end
37
+
34
38
  def oauth_client
35
39
  oauth_proxy.client
36
40
  end
@@ -44,26 +48,32 @@ Warden::Strategies.add(:oauthed) do
44
48
  end
45
49
 
46
50
  def oauth_proxy
47
- @oauth_proxy ||= Warden::Oauthed::Oauth::Proxy.new(env['warden'].config[:oauthed_client_id],
51
+ @oauth_proxy ||= Warden::Oauthed::Oauth::Proxy.new(
52
+ env['warden'].config[:oauthed_client_id],
48
53
  env['warden'].config[:oauthed_secret],
49
54
  env['warden'].config[:oauthed_scopes],
50
55
  env['warden'].config[:oauthed_oauth_domain],
51
- callback_url)
56
+ callback_url
57
+ )
52
58
  end
53
59
 
54
60
  def callback_url
55
- absolute_url(request, env['warden'].config[:oauthed_callback_url], env['HTTP_X_FORWARDED_PROTO'])
61
+ absolute_url(
62
+ request,
63
+ env['warden'].config[:oauthed_callback_url],
64
+ env['HTTP_X_FORWARDED_PROTO']
65
+ )
56
66
  end
57
67
 
58
- def absolute_url(request, suffix = nil, proto = "http")
59
- port_part =
68
+ def absolute_url(request, suffix = nil, proto = 'http')
69
+ port_part =
60
70
  case request.scheme
61
- when "http"
62
- request.port == 80 ? "" : ":#{request.port}"
63
- when "https"
64
- request.port == 443 ? "" : ":#{request.port}"
71
+ when 'http'
72
+ request.port == 80 ? '' : ":#{request.port}"
73
+ when 'https'
74
+ request.port == 443 ? '' : ":#{request.port}"
65
75
  end
66
- proto = "http" if proto.nil?
76
+ proto = 'http' if proto.nil?
67
77
  "#{proto}://#{request.host}#{port_part}#{suffix}"
68
78
  end
69
79
  end
@@ -2,14 +2,13 @@ module Warden
2
2
  module Oauthed
3
3
  module Oauth
4
4
  class User < Struct.new(:attribs, :token)
5
-
6
- def oauthed_raw_request(path, params = {})
7
- puts "#{ENV['API_BASE_URL'] }/#{path}"
8
- req = Faraday.new(url: "#{ENV['API_BASE_URL'] }/#{path}")
5
+ def oauthed_raw_request(path, _params = {})
6
+ puts "#{ENV['API_BASE_URL']}/#{path}"
7
+ req = Faraday.new(url: "#{ENV['API_BASE_URL']}/#{path}")
9
8
  req.authorization :Bearer, token
10
9
  req.get.body
11
10
  end
12
-
11
+
13
12
  def oauthed_request(path, params = {})
14
13
  MultiJson.load(oauthed_raw_request(path, params))
15
14
  end
@@ -1,5 +1,5 @@
1
1
  module Warden
2
2
  module Oauthed
3
- VERSION = '0.0.3'
3
+ VERSION = '0.0.4'
4
4
  end
5
5
  end
@@ -2,8 +2,8 @@ require 'sinatra'
2
2
 
3
3
  module Example
4
4
  class App < Sinatra::Base
5
- enable :sessions
6
- enable :raise_errors
5
+ enable :sessions
6
+ enable :raise_errors
7
7
  disable :show_exceptions
8
8
 
9
9
  use Warden::Manager do |manager|
@@ -18,9 +18,7 @@ module Example
18
18
 
19
19
  helpers do
20
20
  def ensure_authenticated
21
- unless env['warden'].authenticate!
22
- throw(:warden)
23
- end
21
+ throw(:warden) unless env['warden'].authenticate!
24
22
  end
25
23
 
26
24
  def user
@@ -45,14 +43,14 @@ module Example
45
43
 
46
44
  get '/logout' do
47
45
  env['warden'].logout
48
- "Peace!"
46
+ 'Peace!'
49
47
  end
50
48
  end
51
49
 
52
50
  class BadAuthentication < Sinatra::Base
53
51
  get '/unauthenticated' do
54
52
  status 403
55
- "Unable to authenticate, sorry bud."
53
+ 'Unable to authenticate, sorry bud.'
56
54
  end
57
55
  end
58
56
 
@@ -2,21 +2,17 @@ require File.dirname(__FILE__) + '/spec_helper'
2
2
 
3
3
  describe 'Warden::Oauthed' do
4
4
  it 'requesting an url that requires authentication redirects to github' do
5
- ENV['OAUTH_BASE_URL'] = 'http://localhost:3000'
6
- ENV['APPLICATION_SCOPES_REQUESTED'] = 'public'
7
- ENV['APPLICATION_CLIENT_ID'] = 'fd6df6f74658a9202d401aaba38223a7f79e7572926ce845e5268f5171e5b2d5'
8
- ENV['APPLICATION_CLIENT_SECRET'] = 'afee0e20322e5d73dff82f29baf5989afd3422557056129aad29d974e56df677'
9
5
  response = get '/'
10
6
 
11
7
  uri = Addressable::URI.parse(response.headers['Location'])
12
8
 
13
- uri.scheme.should eql('http')
14
- uri.host.should eql('localhost')
9
+ expect(uri.scheme).to eq 'http'
10
+ expect(uri.host).to eq 'localhost'
15
11
 
16
12
  params = uri.query_values
17
- params['response_type'].should eql('code')
18
- params['scope'].should eql('public')
19
- params['client_id'].should match(/\w{20}/)
20
- params['redirect_uri'].should eql('http://example.org/auth/oauthed/callback')
13
+ expect(params['response_type']).to eq 'code'
14
+ expect(params['scope']).to eq 'public'
15
+ expect(params['client_id']).to match(/\w{20}/)
16
+ expect(params['redirect_uri']).to eq 'http://example.org/auth/oauthed/callback'
21
17
  end
22
18
  end
@@ -1,12 +1,15 @@
1
1
  require File.dirname(__FILE__) + '/spec_helper'
2
2
 
3
3
  describe 'Warden::Oauthed::Oauth::Proxy' do
4
- before(:all) do
4
+ before :all do
5
5
  sha = Digest::SHA1.hexdigest(Time.now.to_s)
6
- @proxy = Warden::Oauthed::Oauth::Proxy.new(sha[0..19], sha[0..39],
6
+ @proxy = Warden::Oauthed::Oauth::Proxy.new(
7
+ sha[0..19],
8
+ sha[0..39],
7
9
  'public',
8
10
  'http://localhost:3000',
9
- 'http://example.org/auth/oauthed/callback')
11
+ 'http://example.org/auth/oauthed/callback'
12
+ )
10
13
  end
11
14
 
12
15
  it 'returns an authorize url' do
@@ -16,17 +19,17 @@ describe 'Warden::Oauthed::Oauth::Proxy' do
16
19
  uri.host.should eql('localhost')
17
20
 
18
21
  params = uri.query_values
19
- params['response_type'].should eql('code')
20
- params['scope'].should eql('public')
21
- params['client_id'].should match(/\w{20}/)
22
- params['redirect_uri'].should eql('http://example.org/auth/oauthed/callback')
22
+ expect(params['response_type']).to eq 'code'
23
+ expect(params['scope']).to eq 'public'
24
+ expect(params['client_id']).to match(/\w{20}/)
25
+ expect(params['redirect_uri']).to eq 'http://example.org/auth/oauthed/callback'
23
26
  end
24
27
 
25
- it "has a client object" do
26
- @proxy.client.should_not be_nil
28
+ it 'has a client object' do
29
+ expect(@proxy).not_to be nil
27
30
  end
28
31
 
29
32
  # it "returns access tokens" do
30
- # lambda { @proxy.access_token_for(/\w{20}/.gen) }.should_not raise_error
33
+ # lambda { @proxy.access_token_for(/\w{20}/.gen) }.should_not raise_error
31
34
  # end
32
35
  end
@@ -25,3 +25,8 @@ RSpec.configure do |config|
25
25
  Example.app
26
26
  end
27
27
  end
28
+
29
+ ENV['OAUTH_BASE_URL'] ||= 'http://localhost:3000'
30
+ ENV['APPLICATION_SCOPES_REQUESTED'] ||= 'public'
31
+ ENV['APPLICATION_CLIENT_ID'] ||= 'fd6df6f74658a9202d401aaba38223a7f79e7572926ce845e5268f5171e5b2d5'
32
+ ENV['APPLICATION_CLIENT_SECRET'] ||= 'afee0e20322e5d73dff82f29baf5989afd3422557056129aad29d974e56df677'
@@ -5,30 +5,31 @@ require 'warden-oauthed/version'
5
5
  Gem::Specification.new do |s|
6
6
  s.name = 'warden-oauthed'
7
7
  s.version = Warden::Oauthed::VERSION
8
- s.platform = Gem::Platform::RUBY
9
8
  s.authors = ['David Jaress', 'Seth Herr']
10
9
  s.homepage = 'https://github.com/Zensaburou/warden-oauthed'
11
- s.summary = 'A warden strategy for easy oauth integration with OAuth2 provided by Doorkeeper'
12
10
  s.license = 'MIT'
11
+ s.summary = 'A warden strategy for easy OAuth2 rack based
12
+ authentication'
13
13
  s.description = s.summary
14
14
 
15
15
  s.add_dependency 'json', '~>1.5'
16
- s.add_dependency 'multi_json', '~>1.11.2'
17
- s.add_dependency 'warden', '~>1.0'
18
- s.add_dependency 'oauth2', '~>0.5.2'
16
+ s.add_dependency 'multi_json', '~> 1.11', '>= 1.11.2'
17
+ s.add_dependency 'warden', '>=1.0'
18
+ s.add_dependency 'oauth2', '~>0.5', '>=0.5.2'
19
19
 
20
- s.add_development_dependency 'rack', '~>1.6.0'
21
- s.add_development_dependency 'rake'
22
- s.add_development_dependency 'rerun'
23
- s.add_development_dependency 'rspec', '~>2.8.0'
24
- s.add_development_dependency 'webrat'
25
- s.add_development_dependency 'sinatra'
26
- s.add_development_dependency 'shotgun'
27
- s.add_development_dependency 'addressable', '~>2.2.0'
28
- s.add_development_dependency 'rack-test', '~>0.5.3'
20
+ s.add_development_dependency 'rack', '~> 1.6', '>=1.6.0'
21
+ s.add_development_dependency 'rake', '~> 10.4', '>=10.4.2'
22
+ s.add_development_dependency 'rerun', '~> 0.11', '>=0.11.0'
23
+ s.add_development_dependency 'rspec', '~> 2.8', '>=2.8.0'
24
+ s.add_development_dependency 'webrat', '~> 0.7', '>=0.7.3'
25
+ s.add_development_dependency 'sinatra', '~> 1.4', '>=1.4.6'
26
+ s.add_development_dependency 'shotgun', '~> 0.9', '>=0.9.1'
27
+ s.add_development_dependency 'addressable', '~> 2.2', '>=2.2.0'
28
+ s.add_development_dependency 'rack-test', '~> 0.5', '>=0.5.3'
29
29
 
30
30
  s.files = `git ls-files`.split("\n")
31
- s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
32
- s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
33
- s.require_paths = ["lib"]
31
+ s.test_files = `git ls-files -- {spec}/*`.split("\n")
32
+ s.executables = `git ls-files -- bin/*`.split("\n")
33
+ .map { |f| File.basename(f) }
34
+ s.require_paths = ['lib']
34
35
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: warden-oauthed
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 0.0.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Jaress
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-10-11 00:00:00.000000000 Z
12
+ date: 2015-10-14 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: json
@@ -30,6 +30,9 @@ dependencies:
30
30
  requirement: !ruby/object:Gem::Requirement
31
31
  requirements:
32
32
  - - "~>"
33
+ - !ruby/object:Gem::Version
34
+ version: '1.11'
35
+ - - ">="
33
36
  - !ruby/object:Gem::Version
34
37
  version: 1.11.2
35
38
  type: :runtime
@@ -37,20 +40,23 @@ dependencies:
37
40
  version_requirements: !ruby/object:Gem::Requirement
38
41
  requirements:
39
42
  - - "~>"
43
+ - !ruby/object:Gem::Version
44
+ version: '1.11'
45
+ - - ">="
40
46
  - !ruby/object:Gem::Version
41
47
  version: 1.11.2
42
48
  - !ruby/object:Gem::Dependency
43
49
  name: warden
44
50
  requirement: !ruby/object:Gem::Requirement
45
51
  requirements:
46
- - - "~>"
52
+ - - ">="
47
53
  - !ruby/object:Gem::Version
48
54
  version: '1.0'
49
55
  type: :runtime
50
56
  prerelease: false
51
57
  version_requirements: !ruby/object:Gem::Requirement
52
58
  requirements:
53
- - - "~>"
59
+ - - ">="
54
60
  - !ruby/object:Gem::Version
55
61
  version: '1.0'
56
62
  - !ruby/object:Gem::Dependency
@@ -58,6 +64,9 @@ dependencies:
58
64
  requirement: !ruby/object:Gem::Requirement
59
65
  requirements:
60
66
  - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '0.5'
69
+ - - ">="
61
70
  - !ruby/object:Gem::Version
62
71
  version: 0.5.2
63
72
  type: :runtime
@@ -65,6 +74,9 @@ dependencies:
65
74
  version_requirements: !ruby/object:Gem::Requirement
66
75
  requirements:
67
76
  - - "~>"
77
+ - !ruby/object:Gem::Version
78
+ version: '0.5'
79
+ - - ">="
68
80
  - !ruby/object:Gem::Version
69
81
  version: 0.5.2
70
82
  - !ruby/object:Gem::Dependency
@@ -72,6 +84,9 @@ dependencies:
72
84
  requirement: !ruby/object:Gem::Requirement
73
85
  requirements:
74
86
  - - "~>"
87
+ - !ruby/object:Gem::Version
88
+ version: '1.6'
89
+ - - ">="
75
90
  - !ruby/object:Gem::Version
76
91
  version: 1.6.0
77
92
  type: :development
@@ -79,41 +94,59 @@ dependencies:
79
94
  version_requirements: !ruby/object:Gem::Requirement
80
95
  requirements:
81
96
  - - "~>"
97
+ - !ruby/object:Gem::Version
98
+ version: '1.6'
99
+ - - ">="
82
100
  - !ruby/object:Gem::Version
83
101
  version: 1.6.0
84
102
  - !ruby/object:Gem::Dependency
85
103
  name: rake
86
104
  requirement: !ruby/object:Gem::Requirement
87
105
  requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '10.4'
88
109
  - - ">="
89
110
  - !ruby/object:Gem::Version
90
- version: '0'
111
+ version: 10.4.2
91
112
  type: :development
92
113
  prerelease: false
93
114
  version_requirements: !ruby/object:Gem::Requirement
94
115
  requirements:
116
+ - - "~>"
117
+ - !ruby/object:Gem::Version
118
+ version: '10.4'
95
119
  - - ">="
96
120
  - !ruby/object:Gem::Version
97
- version: '0'
121
+ version: 10.4.2
98
122
  - !ruby/object:Gem::Dependency
99
123
  name: rerun
100
124
  requirement: !ruby/object:Gem::Requirement
101
125
  requirements:
126
+ - - "~>"
127
+ - !ruby/object:Gem::Version
128
+ version: '0.11'
102
129
  - - ">="
103
130
  - !ruby/object:Gem::Version
104
- version: '0'
131
+ version: 0.11.0
105
132
  type: :development
106
133
  prerelease: false
107
134
  version_requirements: !ruby/object:Gem::Requirement
108
135
  requirements:
136
+ - - "~>"
137
+ - !ruby/object:Gem::Version
138
+ version: '0.11'
109
139
  - - ">="
110
140
  - !ruby/object:Gem::Version
111
- version: '0'
141
+ version: 0.11.0
112
142
  - !ruby/object:Gem::Dependency
113
143
  name: rspec
114
144
  requirement: !ruby/object:Gem::Requirement
115
145
  requirements:
116
146
  - - "~>"
147
+ - !ruby/object:Gem::Version
148
+ version: '2.8'
149
+ - - ">="
117
150
  - !ruby/object:Gem::Version
118
151
  version: 2.8.0
119
152
  type: :development
@@ -121,55 +154,79 @@ dependencies:
121
154
  version_requirements: !ruby/object:Gem::Requirement
122
155
  requirements:
123
156
  - - "~>"
157
+ - !ruby/object:Gem::Version
158
+ version: '2.8'
159
+ - - ">="
124
160
  - !ruby/object:Gem::Version
125
161
  version: 2.8.0
126
162
  - !ruby/object:Gem::Dependency
127
163
  name: webrat
128
164
  requirement: !ruby/object:Gem::Requirement
129
165
  requirements:
166
+ - - "~>"
167
+ - !ruby/object:Gem::Version
168
+ version: '0.7'
130
169
  - - ">="
131
170
  - !ruby/object:Gem::Version
132
- version: '0'
171
+ version: 0.7.3
133
172
  type: :development
134
173
  prerelease: false
135
174
  version_requirements: !ruby/object:Gem::Requirement
136
175
  requirements:
176
+ - - "~>"
177
+ - !ruby/object:Gem::Version
178
+ version: '0.7'
137
179
  - - ">="
138
180
  - !ruby/object:Gem::Version
139
- version: '0'
181
+ version: 0.7.3
140
182
  - !ruby/object:Gem::Dependency
141
183
  name: sinatra
142
184
  requirement: !ruby/object:Gem::Requirement
143
185
  requirements:
186
+ - - "~>"
187
+ - !ruby/object:Gem::Version
188
+ version: '1.4'
144
189
  - - ">="
145
190
  - !ruby/object:Gem::Version
146
- version: '0'
191
+ version: 1.4.6
147
192
  type: :development
148
193
  prerelease: false
149
194
  version_requirements: !ruby/object:Gem::Requirement
150
195
  requirements:
196
+ - - "~>"
197
+ - !ruby/object:Gem::Version
198
+ version: '1.4'
151
199
  - - ">="
152
200
  - !ruby/object:Gem::Version
153
- version: '0'
201
+ version: 1.4.6
154
202
  - !ruby/object:Gem::Dependency
155
203
  name: shotgun
156
204
  requirement: !ruby/object:Gem::Requirement
157
205
  requirements:
206
+ - - "~>"
207
+ - !ruby/object:Gem::Version
208
+ version: '0.9'
158
209
  - - ">="
159
210
  - !ruby/object:Gem::Version
160
- version: '0'
211
+ version: 0.9.1
161
212
  type: :development
162
213
  prerelease: false
163
214
  version_requirements: !ruby/object:Gem::Requirement
164
215
  requirements:
216
+ - - "~>"
217
+ - !ruby/object:Gem::Version
218
+ version: '0.9'
165
219
  - - ">="
166
220
  - !ruby/object:Gem::Version
167
- version: '0'
221
+ version: 0.9.1
168
222
  - !ruby/object:Gem::Dependency
169
223
  name: addressable
170
224
  requirement: !ruby/object:Gem::Requirement
171
225
  requirements:
172
226
  - - "~>"
227
+ - !ruby/object:Gem::Version
228
+ version: '2.2'
229
+ - - ">="
173
230
  - !ruby/object:Gem::Version
174
231
  version: 2.2.0
175
232
  type: :development
@@ -177,6 +234,9 @@ dependencies:
177
234
  version_requirements: !ruby/object:Gem::Requirement
178
235
  requirements:
179
236
  - - "~>"
237
+ - !ruby/object:Gem::Version
238
+ version: '2.2'
239
+ - - ">="
180
240
  - !ruby/object:Gem::Version
181
241
  version: 2.2.0
182
242
  - !ruby/object:Gem::Dependency
@@ -184,6 +244,9 @@ dependencies:
184
244
  requirement: !ruby/object:Gem::Requirement
185
245
  requirements:
186
246
  - - "~>"
247
+ - !ruby/object:Gem::Version
248
+ version: '0.5'
249
+ - - ">="
187
250
  - !ruby/object:Gem::Version
188
251
  version: 0.5.3
189
252
  type: :development
@@ -191,10 +254,12 @@ dependencies:
191
254
  version_requirements: !ruby/object:Gem::Requirement
192
255
  requirements:
193
256
  - - "~>"
257
+ - !ruby/object:Gem::Version
258
+ version: '0.5'
259
+ - - ">="
194
260
  - !ruby/object:Gem::Version
195
261
  version: 0.5.3
196
- description: A warden strategy for easy oauth integration with OAuth2 provided by
197
- Doorkeeper
262
+ description: A warden strategy for easy OAuth2 rack based authentication
198
263
  email:
199
264
  executables: []
200
265
  extensions: []
@@ -202,6 +267,7 @@ extra_rdoc_files: []
202
267
  files:
203
268
  - ".gitignore"
204
269
  - ".rspec"
270
+ - ".rubocop.yml"
205
271
  - ".travis.yml"
206
272
  - Gemfile
207
273
  - Guardfile
@@ -242,9 +308,5 @@ rubyforge_project:
242
308
  rubygems_version: 2.4.8
243
309
  signing_key:
244
310
  specification_version: 4
245
- summary: A warden strategy for easy oauth integration with OAuth2 provided by Doorkeeper
246
- test_files:
247
- - spec/app.rb
248
- - spec/oauth_spec.rb
249
- - spec/proxy_spec.rb
250
- - spec/spec_helper.rb
311
+ summary: A warden strategy for easy OAuth2 rack based authentication
312
+ test_files: []