opro 0.4.3 → 0.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +15 -1
- data/CHANGELOG.md +10 -2
- data/Gemfile +25 -7
- data/README.md +96 -58
- data/VERSION +1 -1
- data/app/controllers/opro/oauth/auth_controller.rb +19 -25
- data/app/controllers/opro/oauth/client_app_controller.rb +4 -4
- data/app/controllers/opro/oauth/tests_controller.rb +12 -23
- data/app/controllers/opro/oauth/token_controller.rb +29 -22
- data/app/models/opro/oauth/auth_grant.rb +25 -11
- data/app/models/opro/oauth/client_app.rb +11 -2
- data/app/views/opro/oauth/auth/new.html.erb +1 -1
- data/app/views/opro/oauth/docs/index.html.erb +1 -1
- data/app/views/opro/oauth/docs/markdown/curl.md.erb +5 -3
- data/app/views/opro/oauth/docs/markdown/permissions.md.erb +1 -1
- data/app/views/opro/oauth/docs/markdown/quick_start.md.erb +9 -5
- data/app/views/opro/oauth/docs/markdown/refresh_tokens.md.erb +1 -1
- data/lib/opro.rb +22 -22
- data/lib/opro/auth_provider/devise.rb +37 -0
- data/lib/opro/controllers/concerns/rate_limits.rb +1 -2
- data/lib/opro/rails/routes.rb +3 -3
- data/opro.gemspec +10 -16
- data/test/controllers/permissions_test.rb +2 -2
- data/test/dummy/app/models/user.rb +3 -1
- data/test/dummy/config/initializers/devise.rb +1 -1
- data/test/integration/action_dispatch/oauth_flow_test.rb +1 -1
- data/test/integration/action_dispatch/rate_limits_test.rb +1 -1
- data/test/test_helper.rb +12 -3
- metadata +78 -45
- data/Gemfile.lock +0 -156
data/lib/opro/rails/routes.rb
CHANGED
@@ -7,9 +7,9 @@ module ActionDispatch::Routing
|
|
7
7
|
controllers = options[:controllers] || {}
|
8
8
|
|
9
9
|
oauth_new_controller = controllers[:oauth_new] || 'opro/oauth/auth'
|
10
|
-
|
11
|
-
|
12
|
-
|
10
|
+
get 'oauth/new' => "#{oauth_new_controller}#new", :as => 'oauth_new'
|
11
|
+
post 'oauth/authorize' => 'opro/oauth/auth#create', :as => 'oauth_authorize'
|
12
|
+
post 'oauth/token' => 'opro/oauth/token#create', :as => 'oauth_token'
|
13
13
|
|
14
14
|
unless skip_routes.include?(:client_apps)
|
15
15
|
oauth_client_apps = controllers[:oauth_client_apps] ||'opro/oauth/client_app'
|
data/opro.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "opro"
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.5.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["schneems"]
|
12
|
-
s.date = "
|
12
|
+
s.date = "2013-05-15"
|
13
13
|
s.description = " Enable OAuth clients (iphone, android, web sites, etc.) to access and use your Rails application, what you do with it is up to you"
|
14
14
|
s.email = "richard.schneeman@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -19,7 +19,6 @@ Gem::Specification.new do |s|
|
|
19
19
|
".travis.yml",
|
20
20
|
"CHANGELOG.md",
|
21
21
|
"Gemfile",
|
22
|
-
"Gemfile.lock",
|
23
22
|
"MIT-LICENSE",
|
24
23
|
"README.md",
|
25
24
|
"Rakefile",
|
@@ -53,6 +52,7 @@ Gem::Specification.new do |s|
|
|
53
52
|
"lib/generators/opro/install_generator.rb",
|
54
53
|
"lib/generators/templates/opro.rb",
|
55
54
|
"lib/opro.rb",
|
55
|
+
"lib/opro/auth_provider/devise.rb",
|
56
56
|
"lib/opro/controllers/application_controller_helper.rb",
|
57
57
|
"lib/opro/controllers/concerns/error_messages.rb",
|
58
58
|
"lib/opro/controllers/concerns/permissions.rb",
|
@@ -124,55 +124,49 @@ Gem::Specification.new do |s|
|
|
124
124
|
s.homepage = "http://github.com/schneems/opro"
|
125
125
|
s.licenses = ["MIT"]
|
126
126
|
s.require_paths = ["lib"]
|
127
|
-
s.rubygems_version = "1.8.
|
127
|
+
s.rubygems_version = "1.8.25"
|
128
128
|
s.summary = "oPRO turns your Rails application into an OAuth Provider"
|
129
129
|
|
130
130
|
if s.respond_to? :specification_version then
|
131
131
|
s.specification_version = 3
|
132
132
|
|
133
133
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
134
|
-
s.add_runtime_dependency(%q<activesupport>, [">= 3.1.0"])
|
135
134
|
s.add_runtime_dependency(%q<rails>, [">= 3.1.0"])
|
136
135
|
s.add_runtime_dependency(%q<kramdown>, [">= 0"])
|
137
136
|
s.add_development_dependency(%q<mocha>, [">= 0"])
|
138
137
|
s.add_development_dependency(%q<timecop>, [">= 0"])
|
139
138
|
s.add_development_dependency(%q<jeweler>, ["~> 1.6.4"])
|
140
|
-
s.add_development_dependency(%q<bundler>, [">= 1.1.3"])
|
141
139
|
s.add_development_dependency(%q<capybara>, [">= 0.4.0"])
|
142
140
|
s.add_development_dependency(%q<launchy>, [">= 0"])
|
143
141
|
s.add_development_dependency(%q<sqlite3>, [">= 0"])
|
144
|
-
s.add_development_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 0"])
|
142
|
+
s.add_development_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 1.3.0.beta"])
|
145
143
|
s.add_development_dependency(%q<jdbc-sqlite3>, [">= 0"])
|
146
|
-
s.add_development_dependency(%q<devise>, ["
|
144
|
+
s.add_development_dependency(%q<devise>, ["~> 2.2"])
|
147
145
|
else
|
148
|
-
s.add_dependency(%q<activesupport>, [">= 3.1.0"])
|
149
146
|
s.add_dependency(%q<rails>, [">= 3.1.0"])
|
150
147
|
s.add_dependency(%q<kramdown>, [">= 0"])
|
151
148
|
s.add_dependency(%q<mocha>, [">= 0"])
|
152
149
|
s.add_dependency(%q<timecop>, [">= 0"])
|
153
150
|
s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
|
154
|
-
s.add_dependency(%q<bundler>, [">= 1.1.3"])
|
155
151
|
s.add_dependency(%q<capybara>, [">= 0.4.0"])
|
156
152
|
s.add_dependency(%q<launchy>, [">= 0"])
|
157
153
|
s.add_dependency(%q<sqlite3>, [">= 0"])
|
158
|
-
s.add_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 0"])
|
154
|
+
s.add_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 1.3.0.beta"])
|
159
155
|
s.add_dependency(%q<jdbc-sqlite3>, [">= 0"])
|
160
|
-
s.add_dependency(%q<devise>, ["
|
156
|
+
s.add_dependency(%q<devise>, ["~> 2.2"])
|
161
157
|
end
|
162
158
|
else
|
163
|
-
s.add_dependency(%q<activesupport>, [">= 3.1.0"])
|
164
159
|
s.add_dependency(%q<rails>, [">= 3.1.0"])
|
165
160
|
s.add_dependency(%q<kramdown>, [">= 0"])
|
166
161
|
s.add_dependency(%q<mocha>, [">= 0"])
|
167
162
|
s.add_dependency(%q<timecop>, [">= 0"])
|
168
163
|
s.add_dependency(%q<jeweler>, ["~> 1.6.4"])
|
169
|
-
s.add_dependency(%q<bundler>, [">= 1.1.3"])
|
170
164
|
s.add_dependency(%q<capybara>, [">= 0.4.0"])
|
171
165
|
s.add_dependency(%q<launchy>, [">= 0"])
|
172
166
|
s.add_dependency(%q<sqlite3>, [">= 0"])
|
173
|
-
s.add_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 0"])
|
167
|
+
s.add_dependency(%q<activerecord-jdbcsqlite3-adapter>, [">= 1.3.0.beta"])
|
174
168
|
s.add_dependency(%q<jdbc-sqlite3>, [">= 0"])
|
175
|
-
s.add_dependency(%q<devise>, ["
|
169
|
+
s.add_dependency(%q<devise>, ["~> 2.2"])
|
176
170
|
end
|
177
171
|
end
|
178
172
|
|
@@ -11,7 +11,7 @@ class Opro::Oauth::TestsControllerTest < ActionController::TestCase
|
|
11
11
|
|
12
12
|
test "access_token with write ability can :POST" do
|
13
13
|
permissions = {'write' => true}
|
14
|
-
@auth_grant.
|
14
|
+
@auth_grant.update_permissions(permissions)
|
15
15
|
|
16
16
|
post :create, :access_token => @auth_grant.access_token, :format => :json
|
17
17
|
assert_response :success
|
@@ -20,7 +20,7 @@ class Opro::Oauth::TestsControllerTest < ActionController::TestCase
|
|
20
20
|
|
21
21
|
test "access_token with NO write ability can NOT POST" do
|
22
22
|
permissions = {:write => false}
|
23
|
-
@auth_grant.
|
23
|
+
@auth_grant.update_permissions(permissions)
|
24
24
|
post :create, :access_token => @auth_grant.access_token, :format => :json
|
25
25
|
assert_response 401
|
26
26
|
end
|
@@ -5,6 +5,8 @@ class User < ActiveRecord::Base
|
|
5
5
|
:rememberable, :trackable, :validatable
|
6
6
|
|
7
7
|
# Setup accessible (or protected) attributes for your model
|
8
|
-
attr_accessible :email, :password, :password_confirmation, :remember_me
|
8
|
+
# attr_accessible :email, :password, :password_confirmation, :remember_me
|
9
|
+
attr_accessor :password_confirmation
|
10
|
+
|
9
11
|
# attr_accessible :title, :body
|
10
12
|
end
|
@@ -113,7 +113,7 @@ Devise.setup do |config|
|
|
113
113
|
|
114
114
|
# If true, uses the password salt as remember token. This should be turned
|
115
115
|
# to false if you are not using database authenticatable.
|
116
|
-
config.use_salt_as_remember_token = true
|
116
|
+
# config.use_salt_as_remember_token = true
|
117
117
|
|
118
118
|
# Options to be passed to the created cookie. For instance, you can set
|
119
119
|
# :secure => true in order to force SSL only cookies.
|
@@ -32,7 +32,7 @@ class OauthTokenTest < ActionDispatch::IntegrationTest
|
|
32
32
|
|
33
33
|
test 'header authorization token' do
|
34
34
|
auth_grant = create_auth_grant_for_user(@user)
|
35
|
-
auth_grant.
|
35
|
+
auth_grant.update_permissions(:write => true)
|
36
36
|
|
37
37
|
# curl -H "Authorization: token OAUTH-TOKEN" http://localhost:3000
|
38
38
|
# sets request.env["HTTP_AUTHORIZATION"] to "token OAUTH-TOKEN"
|
@@ -14,7 +14,7 @@ class RateLimitTest < ActionDispatch::IntegrationTest
|
|
14
14
|
@params = {:client_id => @client_app.client_id ,
|
15
15
|
:client_secret => @client_app.client_secret,
|
16
16
|
:access_token => @auth_grant.access_token}
|
17
|
-
@auth_grant.
|
17
|
+
@auth_grant.update_permissions(:write => true)
|
18
18
|
end
|
19
19
|
|
20
20
|
test "A rate limited app does not get a valid user" do
|
data/test/test_helper.rb
CHANGED
@@ -13,7 +13,7 @@ ENGINE_RAILS_ROOT=File.join(File.dirname(__FILE__), '../')
|
|
13
13
|
require File.expand_path("../dummy/config/environment.rb", __FILE__)
|
14
14
|
require "rails/test_help"
|
15
15
|
|
16
|
-
require 'mocha'
|
16
|
+
require 'mocha/setup'
|
17
17
|
require 'timecop'
|
18
18
|
require 'database_cleaner'
|
19
19
|
DatabaseCleaner.strategy = :truncation
|
@@ -60,7 +60,12 @@ end
|
|
60
60
|
|
61
61
|
|
62
62
|
def create_user(options = {})
|
63
|
-
|
63
|
+
user = User.new
|
64
|
+
user.email = rand_name + '@bar.com'
|
65
|
+
user.password = 'password'
|
66
|
+
user.password_confirmation = 'password'
|
67
|
+
user.save
|
68
|
+
user
|
64
69
|
end
|
65
70
|
|
66
71
|
def create_client_app(options= {})
|
@@ -78,7 +83,11 @@ end
|
|
78
83
|
def create_auth_grant_for_user(user = nil, app = nil)
|
79
84
|
app ||= create_client_app
|
80
85
|
user ||= create_user
|
81
|
-
Opro::Oauth::AuthGrant.
|
86
|
+
auth_grant = Opro::Oauth::AuthGrant.new
|
87
|
+
auth_grant.user = user
|
88
|
+
auth_grant.application = app
|
89
|
+
auth_grant.save
|
90
|
+
auth_grant
|
82
91
|
end
|
83
92
|
|
84
93
|
alias :create_auth_grant :create_auth_grant_for_user
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: opro
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-05-15 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
|
-
name:
|
16
|
-
requirement:
|
15
|
+
name: rails
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,21 +21,15 @@ dependencies:
|
|
21
21
|
version: 3.1.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: rails
|
27
|
-
requirement: &70297244932520 !ruby/object:Gem::Requirement
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
28
25
|
none: false
|
29
26
|
requirements:
|
30
27
|
- - ! '>='
|
31
28
|
- !ruby/object:Gem::Version
|
32
29
|
version: 3.1.0
|
33
|
-
type: :runtime
|
34
|
-
prerelease: false
|
35
|
-
version_requirements: *70297244932520
|
36
30
|
- !ruby/object:Gem::Dependency
|
37
31
|
name: kramdown
|
38
|
-
requirement:
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
39
33
|
none: false
|
40
34
|
requirements:
|
41
35
|
- - ! '>='
|
@@ -43,10 +37,15 @@ dependencies:
|
|
43
37
|
version: '0'
|
44
38
|
type: :runtime
|
45
39
|
prerelease: false
|
46
|
-
version_requirements:
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '0'
|
47
46
|
- !ruby/object:Gem::Dependency
|
48
47
|
name: mocha
|
49
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
50
49
|
none: false
|
51
50
|
requirements:
|
52
51
|
- - ! '>='
|
@@ -54,10 +53,15 @@ dependencies:
|
|
54
53
|
version: '0'
|
55
54
|
type: :development
|
56
55
|
prerelease: false
|
57
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ! '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
58
62
|
- !ruby/object:Gem::Dependency
|
59
63
|
name: timecop
|
60
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
61
65
|
none: false
|
62
66
|
requirements:
|
63
67
|
- - ! '>='
|
@@ -65,10 +69,15 @@ dependencies:
|
|
65
69
|
version: '0'
|
66
70
|
type: :development
|
67
71
|
prerelease: false
|
68
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0'
|
69
78
|
- !ruby/object:Gem::Dependency
|
70
79
|
name: jeweler
|
71
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
72
81
|
none: false
|
73
82
|
requirements:
|
74
83
|
- - ~>
|
@@ -76,21 +85,15 @@ dependencies:
|
|
76
85
|
version: 1.6.4
|
77
86
|
type: :development
|
78
87
|
prerelease: false
|
79
|
-
version_requirements:
|
80
|
-
- !ruby/object:Gem::Dependency
|
81
|
-
name: bundler
|
82
|
-
requirement: &70297244929400 !ruby/object:Gem::Requirement
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
89
|
none: false
|
84
90
|
requirements:
|
85
|
-
- -
|
91
|
+
- - ~>
|
86
92
|
- !ruby/object:Gem::Version
|
87
|
-
version: 1.
|
88
|
-
type: :development
|
89
|
-
prerelease: false
|
90
|
-
version_requirements: *70297244929400
|
93
|
+
version: 1.6.4
|
91
94
|
- !ruby/object:Gem::Dependency
|
92
95
|
name: capybara
|
93
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
94
97
|
none: false
|
95
98
|
requirements:
|
96
99
|
- - ! '>='
|
@@ -98,10 +101,15 @@ dependencies:
|
|
98
101
|
version: 0.4.0
|
99
102
|
type: :development
|
100
103
|
prerelease: false
|
101
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 0.4.0
|
102
110
|
- !ruby/object:Gem::Dependency
|
103
111
|
name: launchy
|
104
|
-
requirement:
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
105
113
|
none: false
|
106
114
|
requirements:
|
107
115
|
- - ! '>='
|
@@ -109,10 +117,15 @@ dependencies:
|
|
109
117
|
version: '0'
|
110
118
|
type: :development
|
111
119
|
prerelease: false
|
112
|
-
version_requirements:
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: '0'
|
113
126
|
- !ruby/object:Gem::Dependency
|
114
127
|
name: sqlite3
|
115
|
-
requirement:
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
116
129
|
none: false
|
117
130
|
requirements:
|
118
131
|
- - ! '>='
|
@@ -120,21 +133,31 @@ dependencies:
|
|
120
133
|
version: '0'
|
121
134
|
type: :development
|
122
135
|
prerelease: false
|
123
|
-
version_requirements:
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ! '>='
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '0'
|
124
142
|
- !ruby/object:Gem::Dependency
|
125
143
|
name: activerecord-jdbcsqlite3-adapter
|
126
|
-
requirement:
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
127
145
|
none: false
|
128
146
|
requirements:
|
129
147
|
- - ! '>='
|
130
148
|
- !ruby/object:Gem::Version
|
131
|
-
version:
|
149
|
+
version: 1.3.0.beta
|
132
150
|
type: :development
|
133
151
|
prerelease: false
|
134
|
-
version_requirements:
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: 1.3.0.beta
|
135
158
|
- !ruby/object:Gem::Dependency
|
136
159
|
name: jdbc-sqlite3
|
137
|
-
requirement:
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
138
161
|
none: false
|
139
162
|
requirements:
|
140
163
|
- - ! '>='
|
@@ -142,18 +165,28 @@ dependencies:
|
|
142
165
|
version: '0'
|
143
166
|
type: :development
|
144
167
|
prerelease: false
|
145
|
-
version_requirements:
|
146
|
-
- !ruby/object:Gem::Dependency
|
147
|
-
name: devise
|
148
|
-
requirement: &70297244925300 !ruby/object:Gem::Requirement
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
169
|
none: false
|
150
170
|
requirements:
|
151
171
|
- - ! '>='
|
152
172
|
- !ruby/object:Gem::Version
|
153
173
|
version: '0'
|
174
|
+
- !ruby/object:Gem::Dependency
|
175
|
+
name: devise
|
176
|
+
requirement: !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
178
|
+
requirements:
|
179
|
+
- - ~>
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '2.2'
|
154
182
|
type: :development
|
155
183
|
prerelease: false
|
156
|
-
version_requirements:
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
186
|
+
requirements:
|
187
|
+
- - ~>
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '2.2'
|
157
190
|
description: ! ' Enable OAuth clients (iphone, android, web sites, etc.) to access
|
158
191
|
and use your Rails application, what you do with it is up to you'
|
159
192
|
email: richard.schneeman@gmail.com
|
@@ -165,7 +198,6 @@ files:
|
|
165
198
|
- .travis.yml
|
166
199
|
- CHANGELOG.md
|
167
200
|
- Gemfile
|
168
|
-
- Gemfile.lock
|
169
201
|
- MIT-LICENSE
|
170
202
|
- README.md
|
171
203
|
- Rakefile
|
@@ -199,6 +231,7 @@ files:
|
|
199
231
|
- lib/generators/opro/install_generator.rb
|
200
232
|
- lib/generators/templates/opro.rb
|
201
233
|
- lib/opro.rb
|
234
|
+
- lib/opro/auth_provider/devise.rb
|
202
235
|
- lib/opro/controllers/application_controller_helper.rb
|
203
236
|
- lib/opro/controllers/concerns/error_messages.rb
|
204
237
|
- lib/opro/controllers/concerns/permissions.rb
|
@@ -281,7 +314,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
281
314
|
version: '0'
|
282
315
|
segments:
|
283
316
|
- 0
|
284
|
-
hash: -
|
317
|
+
hash: -1215204679170587691
|
285
318
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
286
319
|
none: false
|
287
320
|
requirements:
|
@@ -290,7 +323,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
290
323
|
version: '0'
|
291
324
|
requirements: []
|
292
325
|
rubyforge_project:
|
293
|
-
rubygems_version: 1.8.
|
326
|
+
rubygems_version: 1.8.25
|
294
327
|
signing_key:
|
295
328
|
specification_version: 3
|
296
329
|
summary: oPRO turns your Rails application into an OAuth Provider
|