omniauth-identity 1.0.0 → 1.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +90 -42
- data/README.markdown +88 -44
- data/lib/omniauth-identity/version.rb +1 -1
- data/lib/omniauth/identity.rb +1 -0
- data/lib/omniauth/identity/models/data_mapper.rb +32 -0
- data/lib/omniauth/identity/secure_password.rb +1 -1
- data/omniauth-identity.gemspec +2 -1
- data/spec/omniauth/identity/models/data_mapper_spec.rb +22 -0
- metadata +104 -38
data/Gemfile.lock
CHANGED
@@ -1,95 +1,143 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
omniauth-identity (1.0.0
|
5
|
-
|
4
|
+
omniauth-identity (1.0.0)
|
5
|
+
bcrypt-ruby (~> 3.0)
|
6
|
+
omniauth (~> 1.0)
|
6
7
|
|
7
8
|
GEM
|
8
9
|
remote: http://rubygems.org/
|
9
10
|
specs:
|
10
|
-
activemodel (3.
|
11
|
-
activesupport (= 3.
|
11
|
+
activemodel (3.2.1)
|
12
|
+
activesupport (= 3.2.1)
|
12
13
|
builder (~> 3.0.0)
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
arel (~> 2.2.1)
|
14
|
+
activerecord (3.2.1)
|
15
|
+
activemodel (= 3.2.1)
|
16
|
+
activesupport (= 3.2.1)
|
17
|
+
arel (~> 3.0.0)
|
18
18
|
tzinfo (~> 0.3.29)
|
19
|
-
activesupport (3.
|
19
|
+
activesupport (3.2.1)
|
20
|
+
i18n (~> 0.6)
|
20
21
|
multi_json (~> 1.0)
|
21
|
-
|
22
|
+
addressable (2.2.6)
|
23
|
+
arel (3.0.0)
|
22
24
|
bcrypt-ruby (3.0.1)
|
23
|
-
bson (1.
|
24
|
-
bson_ext (1.
|
25
|
+
bson (1.5.2)
|
26
|
+
bson_ext (1.5.2)
|
27
|
+
bson (= 1.5.2)
|
25
28
|
builder (3.0.0)
|
29
|
+
datamapper (1.2.0)
|
30
|
+
dm-aggregates (~> 1.2.0)
|
31
|
+
dm-constraints (~> 1.2.0)
|
32
|
+
dm-core (~> 1.2.0)
|
33
|
+
dm-migrations (~> 1.2.0)
|
34
|
+
dm-serializer (~> 1.2.0)
|
35
|
+
dm-timestamps (~> 1.2.0)
|
36
|
+
dm-transactions (~> 1.2.0)
|
37
|
+
dm-types (~> 1.2.0)
|
38
|
+
dm-validations (~> 1.2.0)
|
26
39
|
diff-lcs (1.1.3)
|
40
|
+
dm-aggregates (1.2.0)
|
41
|
+
dm-core (~> 1.2.0)
|
42
|
+
dm-constraints (1.2.0)
|
43
|
+
dm-core (~> 1.2.0)
|
44
|
+
dm-core (1.2.0)
|
45
|
+
addressable (~> 2.2.6)
|
46
|
+
dm-migrations (1.2.0)
|
47
|
+
dm-core (~> 1.2.0)
|
48
|
+
dm-serializer (1.2.1)
|
49
|
+
dm-core (~> 1.2.0)
|
50
|
+
fastercsv (~> 1.5.4)
|
51
|
+
json (~> 1.6.1)
|
52
|
+
json_pure (~> 1.6.1)
|
53
|
+
multi_json (~> 1.0.3)
|
54
|
+
dm-timestamps (1.2.0)
|
55
|
+
dm-core (~> 1.2.0)
|
56
|
+
dm-transactions (1.2.0)
|
57
|
+
dm-core (~> 1.2.0)
|
58
|
+
dm-types (1.2.1)
|
59
|
+
bcrypt-ruby (~> 3.0.0)
|
60
|
+
dm-core (~> 1.2.0)
|
61
|
+
fastercsv (~> 1.5.4)
|
62
|
+
json (~> 1.6.1)
|
63
|
+
multi_json (~> 1.0.3)
|
64
|
+
stringex (~> 1.3.0)
|
65
|
+
uuidtools (~> 2.1.2)
|
66
|
+
dm-validations (1.2.0)
|
67
|
+
dm-core (~> 1.2.0)
|
68
|
+
fastercsv (1.5.4)
|
69
|
+
ffi (1.0.11)
|
27
70
|
growl (1.0.3)
|
28
|
-
guard (0.
|
71
|
+
guard (1.0.0)
|
72
|
+
ffi (>= 0.5.0)
|
29
73
|
thor (~> 0.14.6)
|
30
74
|
guard-bundler (0.1.3)
|
31
75
|
bundler (>= 1.0.0)
|
32
76
|
guard (>= 0.2.2)
|
33
|
-
guard-rspec (0.
|
34
|
-
guard (>= 0.
|
77
|
+
guard-rspec (0.6.0)
|
78
|
+
guard (>= 0.10.0)
|
35
79
|
hashie (1.2.0)
|
36
80
|
i18n (0.6.0)
|
81
|
+
json (1.6.5)
|
82
|
+
json_pure (1.6.5)
|
37
83
|
maruku (0.6.0)
|
38
84
|
syntax (>= 1.0.0)
|
39
|
-
mongo (1.
|
40
|
-
bson (
|
41
|
-
mongo_mapper (0.
|
85
|
+
mongo (1.5.2)
|
86
|
+
bson (= 1.5.2)
|
87
|
+
mongo_mapper (0.11.0)
|
42
88
|
activemodel (~> 3.0)
|
43
89
|
activesupport (~> 3.0)
|
44
|
-
plucky (~> 0.
|
45
|
-
mongoid (2.
|
46
|
-
activemodel (~> 3.
|
90
|
+
plucky (~> 0.4.0)
|
91
|
+
mongoid (2.4.4)
|
92
|
+
activemodel (~> 3.1)
|
47
93
|
mongo (~> 1.3)
|
48
94
|
tzinfo (~> 0.3.22)
|
49
|
-
multi_json (1.0.
|
50
|
-
omniauth (1.
|
95
|
+
multi_json (1.0.4)
|
96
|
+
omniauth (1.1.0)
|
51
97
|
hashie (~> 1.2)
|
52
98
|
rack
|
53
|
-
plucky (0.
|
54
|
-
mongo (~> 1.
|
55
|
-
rack (1.
|
99
|
+
plucky (0.4.4)
|
100
|
+
mongo (~> 1.5)
|
101
|
+
rack (1.4.1)
|
56
102
|
rack-test (0.6.1)
|
57
103
|
rack (>= 1.0)
|
58
|
-
rake (0.9.2)
|
59
|
-
rb-fsevent (0.
|
60
|
-
rspec (2.
|
61
|
-
rspec-core (~> 2.
|
62
|
-
rspec-expectations (~> 2.
|
63
|
-
rspec-mocks (~> 2.
|
64
|
-
rspec-core (2.
|
65
|
-
rspec-expectations (2.
|
104
|
+
rake (0.9.2.2)
|
105
|
+
rb-fsevent (0.9.0)
|
106
|
+
rspec (2.8.0)
|
107
|
+
rspec-core (~> 2.8.0)
|
108
|
+
rspec-expectations (~> 2.8.0)
|
109
|
+
rspec-mocks (~> 2.8.0)
|
110
|
+
rspec-core (2.8.0)
|
111
|
+
rspec-expectations (2.8.0)
|
66
112
|
diff-lcs (~> 1.1.2)
|
67
|
-
rspec-mocks (2.
|
68
|
-
simplecov (0.5.
|
113
|
+
rspec-mocks (2.8.0)
|
114
|
+
simplecov (0.5.4)
|
69
115
|
multi_json (~> 1.0.3)
|
70
116
|
simplecov-html (~> 0.5.3)
|
71
117
|
simplecov-html (0.5.3)
|
118
|
+
stringex (1.3.2)
|
72
119
|
syntax (1.0.0)
|
73
120
|
thor (0.14.6)
|
74
|
-
tzinfo (0.3.
|
121
|
+
tzinfo (0.3.31)
|
122
|
+
uuidtools (2.1.2)
|
75
123
|
|
76
124
|
PLATFORMS
|
77
125
|
ruby
|
78
126
|
|
79
127
|
DEPENDENCIES
|
80
128
|
activerecord (~> 3.1)
|
81
|
-
|
82
|
-
|
129
|
+
bson_ext
|
130
|
+
datamapper
|
83
131
|
growl
|
84
132
|
guard
|
85
133
|
guard-bundler
|
86
134
|
guard-rspec
|
87
135
|
maruku (~> 0.6)
|
88
136
|
mongo_mapper
|
89
|
-
mongoid
|
137
|
+
mongoid
|
90
138
|
omniauth-identity!
|
91
139
|
rack-test (~> 0.5)
|
92
140
|
rake (~> 0.8)
|
93
141
|
rb-fsevent
|
94
|
-
rspec (~> 2.
|
142
|
+
rspec (~> 2.7)
|
95
143
|
simplecov (~> 0.4)
|
data/README.markdown
CHANGED
@@ -8,54 +8,90 @@ basic construct for user management and then gets out of the way.
|
|
8
8
|
|
9
9
|
## Usage
|
10
10
|
|
11
|
-
|
11
|
+
This can be a bit hard to understand the first time. Luckily, Ryan Bates made
|
12
|
+
a [Railscast](http://railscasts.com/episodes/304-omniauth-identity) about it!
|
13
|
+
|
14
|
+
You use `omniauth-identity` just like you would any other OmniAuth provider: as a
|
12
15
|
Rack middleware. The basic setup for a email/password authentication would
|
13
16
|
look something like this:
|
14
17
|
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
+
```ruby
|
19
|
+
use OmniAuth::Builder do
|
20
|
+
provider :identity, :fields => [:email]
|
21
|
+
end
|
22
|
+
```
|
18
23
|
|
19
24
|
Next, you need to create a model (called `Identity by default`) that will be
|
20
25
|
able to persist the information provided by the user. Luckily for you, there
|
21
26
|
are pre-built models for popular ORMs that make this dead simple.
|
22
27
|
|
28
|
+
**Note:** OmniAuth Identity is different from many other user authentication
|
29
|
+
systems in that it is *not* intended to be associated with your primary
|
30
|
+
`User` model. Instead, the `Identity` model should be **associated** with your
|
31
|
+
`User` model giving you maximum flexibility to include other authentication
|
32
|
+
strategies such as Facebook, Twitter, etc.
|
33
|
+
|
23
34
|
### ActiveRecord
|
24
35
|
|
25
36
|
Just subclass `OmniAuth::Identity::Models::ActiveRecord` and provide fields
|
26
37
|
in the database for all of the fields you are using.
|
27
38
|
|
28
|
-
|
29
|
-
|
30
|
-
|
39
|
+
```ruby
|
40
|
+
class Identity < OmniAuth::Identity::Models::ActiveRecord
|
41
|
+
# Add whatever you like!
|
42
|
+
end
|
43
|
+
```
|
31
44
|
|
32
45
|
### Mongoid
|
33
46
|
|
34
47
|
Include the `OmniAuth::Identity::Models::Mongoid` mixin and specify
|
35
48
|
fields that you will need.
|
36
49
|
|
37
|
-
|
38
|
-
|
39
|
-
|
50
|
+
```ruby
|
51
|
+
class Identity
|
52
|
+
include Mongoid::Document
|
53
|
+
include OmniAuth::Identity::Models::Mongoid
|
40
54
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
55
|
+
field :email, type: String
|
56
|
+
field :name, type: String
|
57
|
+
field :password_digest, type: String
|
58
|
+
end
|
59
|
+
```
|
45
60
|
|
46
61
|
### MongoMapper
|
47
62
|
|
48
63
|
Include the `OmniAuth::Identity::Models::MongoMapper` mixin and specify
|
49
64
|
fields that you will need.
|
50
65
|
|
51
|
-
|
52
|
-
|
53
|
-
|
66
|
+
```ruby
|
67
|
+
class Identity
|
68
|
+
include MongoMapper::Document
|
69
|
+
include OmniAuth::Identity::Models::MongoMapper
|
70
|
+
|
71
|
+
key :email, String
|
72
|
+
key :name, String
|
73
|
+
key :password_digest, String
|
74
|
+
end
|
75
|
+
```
|
76
|
+
|
77
|
+
### DataMapper
|
78
|
+
|
79
|
+
Include the `OmniAuth::Identity::Models::DataMapper` mixin and specify
|
80
|
+
fields that you will need.
|
81
|
+
|
82
|
+
```ruby
|
83
|
+
class Identity
|
84
|
+
include DataMapper::Resource
|
85
|
+
include OmniAuth::Identity::Models::DataMapper
|
86
|
+
|
87
|
+
property :id, Serial
|
88
|
+
property :email, String
|
89
|
+
property :password_digest, Text
|
90
|
+
|
91
|
+
attr_accessor :password_confirmation
|
54
92
|
|
55
|
-
|
56
|
-
|
57
|
-
key :password_digest, String
|
58
|
-
end
|
93
|
+
end
|
94
|
+
```
|
59
95
|
|
60
96
|
Once you've got an Identity persistence model and the strategy up and
|
61
97
|
running, you can point users to `/auth/identity` and it will request
|
@@ -70,9 +106,11 @@ Simple!
|
|
70
106
|
To use a class other than the default, specify the <tt>:model</tt> option to a
|
71
107
|
different class.
|
72
108
|
|
73
|
-
|
74
|
-
|
75
|
-
|
109
|
+
```ruby
|
110
|
+
use OmniAuth::Builder do
|
111
|
+
provider :identity, :fields => [:email], :model => MyCustomClass
|
112
|
+
end
|
113
|
+
```
|
76
114
|
|
77
115
|
## Customizing Registration Failure
|
78
116
|
|
@@ -80,37 +118,43 @@ To use your own custom registration form, create a form that POSTs to
|
|
80
118
|
'/auth/identity/register' with 'password', 'password_confirmation', and your
|
81
119
|
other fields.
|
82
120
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
121
|
+
```erb
|
122
|
+
<%= form_tag '/auth/identity/register' do |f| %>
|
123
|
+
<h1>Create an Account</h1>
|
124
|
+
<%= text_field_tag :email %>
|
125
|
+
<%= password_field_tag :password %>
|
126
|
+
<%= password_field_tag :password_confirmation %>
|
127
|
+
<%= submit_tag %>
|
128
|
+
<% end %>
|
129
|
+
```
|
90
130
|
|
91
131
|
Beware not to nest your form parameters within a namespace. This strategy
|
92
132
|
looks for the form parameters at the top level of the post params. If you are
|
93
133
|
using [simple\_form](https://github.com/plataformatec/simple_form), then you
|
94
134
|
can avoid the params nesting by specifying <tt>:input_html</tt>.
|
95
135
|
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
136
|
+
```erb
|
137
|
+
<%= simple_form_for @identity, :url => '/auth/identity/register' do |f| %>
|
138
|
+
<h1>Create an Account</h1>
|
139
|
+
<%# specify :input_html to avoid params nesting %>
|
140
|
+
<%= f.input :email, :input_html => {:name => 'email'} %>
|
141
|
+
<%= f.input :password, :as => 'password', :input_html => {:name => 'password'} %>
|
142
|
+
<%= f.input :password_confirmation, :label => "Confirm Password", :as => 'password', :input_html => {:name => 'password_confirmation'} %>
|
143
|
+
<button type='submit'>Sign Up</button>
|
144
|
+
<% end %>
|
145
|
+
```
|
104
146
|
|
105
147
|
Next you'll need to let OmniAuth know what action to call when a registration
|
106
148
|
fails. In your OmniAuth configuration, specify any valid rack endpoint in the
|
107
149
|
<tt>:on_failed_registration</tt> option.
|
108
150
|
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
151
|
+
```ruby
|
152
|
+
use OmniAuth::Builder do
|
153
|
+
provider :identity,
|
154
|
+
:fields => [:email],
|
155
|
+
:on_failed_registration => UsersController.action(:new)
|
156
|
+
end
|
157
|
+
```
|
114
158
|
|
115
159
|
For more information on rack endpoints, check out [this
|
116
160
|
introduction](http://library.edgecase.com/Rails/2011/01/04/rails-routing-and-rack-endpoints.html)
|
data/lib/omniauth/identity.rb
CHANGED
@@ -12,6 +12,7 @@ module OmniAuth
|
|
12
12
|
autoload :ActiveRecord, 'omniauth/identity/models/active_record'
|
13
13
|
autoload :MongoMapper, 'omniauth/identity/models/mongo_mapper'
|
14
14
|
autoload :Mongoid, 'omniauth/identity/models/mongoid'
|
15
|
+
autoload :DataMapper, 'omniauth/identity/models/data_mapper'
|
15
16
|
end
|
16
17
|
end
|
17
18
|
end
|
@@ -0,0 +1,32 @@
|
|
1
|
+
require 'dm-core'
|
2
|
+
require 'dm-validations'
|
3
|
+
|
4
|
+
module OmniAuth
|
5
|
+
module Identity
|
6
|
+
module Models
|
7
|
+
module DataMapper
|
8
|
+
def self.included(base)
|
9
|
+
base.class_eval do
|
10
|
+
include OmniAuth::Identity::Model
|
11
|
+
include OmniAuth::Identity::SecurePassword
|
12
|
+
|
13
|
+
# http://api.rubyonrails.org/classes/ActiveRecord/Persistence.html#method-i-persisted-3F
|
14
|
+
# http://rubydoc.info/github/mongoid/mongoid/master/Mongoid/State#persisted%3F-instance_method
|
15
|
+
alias persisted? valid?
|
16
|
+
|
17
|
+
has_secure_password
|
18
|
+
|
19
|
+
def self.auth_key=(key)
|
20
|
+
super
|
21
|
+
validates_uniqueness_of :key
|
22
|
+
end
|
23
|
+
|
24
|
+
def self.locate(key)
|
25
|
+
all(auth_key => key).first
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end # DataMapper
|
30
|
+
end
|
31
|
+
end
|
32
|
+
end
|
@@ -68,7 +68,7 @@ module OmniAuth
|
|
68
68
|
# Encrypts the password into the password_digest attribute.
|
69
69
|
def password=(unencrypted_password)
|
70
70
|
@password = unencrypted_password
|
71
|
-
unless unencrypted_password.
|
71
|
+
unless unencrypted_password.empty?
|
72
72
|
self.password_digest = BCrypt::Password.create(unencrypted_password)
|
73
73
|
end
|
74
74
|
end
|
data/omniauth-identity.gemspec
CHANGED
@@ -3,16 +3,17 @@ require File.dirname(__FILE__) + '/lib/omniauth-identity/version'
|
|
3
3
|
|
4
4
|
Gem::Specification.new do |gem|
|
5
5
|
gem.add_runtime_dependency 'omniauth', '~> 1.0'
|
6
|
+
gem.add_runtime_dependency 'bcrypt-ruby', '~> 3.0'
|
6
7
|
|
7
8
|
gem.add_development_dependency 'maruku', '~> 0.6'
|
8
9
|
gem.add_development_dependency 'simplecov', '~> 0.4'
|
9
10
|
gem.add_development_dependency 'rack-test', '~> 0.5'
|
10
11
|
gem.add_development_dependency 'rake', '~> 0.8'
|
11
12
|
gem.add_development_dependency 'rspec', '~> 2.7'
|
12
|
-
gem.add_development_dependency 'bcrypt-ruby', '~> 3.0'
|
13
13
|
gem.add_development_dependency 'activerecord', '~> 3.1'
|
14
14
|
gem.add_development_dependency 'mongoid'
|
15
15
|
gem.add_development_dependency 'mongo_mapper'
|
16
|
+
gem.add_development_dependency 'datamapper'
|
16
17
|
gem.add_development_dependency 'bson_ext'
|
17
18
|
|
18
19
|
gem.name = 'omniauth-identity'
|
@@ -0,0 +1,22 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe(OmniAuth::Identity::Models::DataMapper, :db => true) do
|
4
|
+
class DataMapperTestIdentity
|
5
|
+
include DataMapper::Resource
|
6
|
+
include OmniAuth::Identity::Models::DataMapper
|
7
|
+
|
8
|
+
property :id, Serial
|
9
|
+
auth_key :ham_sandwich
|
10
|
+
end
|
11
|
+
|
12
|
+
DataMapper.finalize
|
13
|
+
|
14
|
+
before :all do
|
15
|
+
@resource = DataMapperTestIdentity.new
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should locate using the auth key using a all query' do
|
19
|
+
DataMapperTestIdentity.should_receive(:all).with('ham_sandwich' => 'open faced').and_return(['wakka'])
|
20
|
+
DataMapperTestIdentity.locate('open faced').should == 'wakka'
|
21
|
+
end
|
22
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omniauth-identity
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.1.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: 2012-08-06 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: omniauth
|
16
|
-
requirement:
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,31 @@ dependencies:
|
|
21
21
|
version: '1.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: '1.0'
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: bcrypt-ruby
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ~>
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: '3.0'
|
38
|
+
type: :runtime
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ~>
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: '3.0'
|
25
46
|
- !ruby/object:Gem::Dependency
|
26
47
|
name: maruku
|
27
|
-
requirement:
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
28
49
|
none: false
|
29
50
|
requirements:
|
30
51
|
- - ~>
|
@@ -32,10 +53,15 @@ dependencies:
|
|
32
53
|
version: '0.6'
|
33
54
|
type: :development
|
34
55
|
prerelease: false
|
35
|
-
version_requirements:
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - ~>
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0.6'
|
36
62
|
- !ruby/object:Gem::Dependency
|
37
63
|
name: simplecov
|
38
|
-
requirement:
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
39
65
|
none: false
|
40
66
|
requirements:
|
41
67
|
- - ~>
|
@@ -43,10 +69,15 @@ dependencies:
|
|
43
69
|
version: '0.4'
|
44
70
|
type: :development
|
45
71
|
prerelease: false
|
46
|
-
version_requirements:
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ~>
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: '0.4'
|
47
78
|
- !ruby/object:Gem::Dependency
|
48
79
|
name: rack-test
|
49
|
-
requirement:
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
50
81
|
none: false
|
51
82
|
requirements:
|
52
83
|
- - ~>
|
@@ -54,10 +85,15 @@ dependencies:
|
|
54
85
|
version: '0.5'
|
55
86
|
type: :development
|
56
87
|
prerelease: false
|
57
|
-
version_requirements:
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ~>
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '0.5'
|
58
94
|
- !ruby/object:Gem::Dependency
|
59
95
|
name: rake
|
60
|
-
requirement:
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
61
97
|
none: false
|
62
98
|
requirements:
|
63
99
|
- - ~>
|
@@ -65,10 +101,15 @@ dependencies:
|
|
65
101
|
version: '0.8'
|
66
102
|
type: :development
|
67
103
|
prerelease: false
|
68
|
-
version_requirements:
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: '0.8'
|
69
110
|
- !ruby/object:Gem::Dependency
|
70
111
|
name: rspec
|
71
|
-
requirement:
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
72
113
|
none: false
|
73
114
|
requirements:
|
74
115
|
- - ~>
|
@@ -76,21 +117,15 @@ dependencies:
|
|
76
117
|
version: '2.7'
|
77
118
|
type: :development
|
78
119
|
prerelease: false
|
79
|
-
version_requirements:
|
80
|
-
- !ruby/object:Gem::Dependency
|
81
|
-
name: bcrypt-ruby
|
82
|
-
requirement: &70358092248940 !ruby/object:Gem::Requirement
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
83
121
|
none: false
|
84
122
|
requirements:
|
85
123
|
- - ~>
|
86
124
|
- !ruby/object:Gem::Version
|
87
|
-
version: '
|
88
|
-
type: :development
|
89
|
-
prerelease: false
|
90
|
-
version_requirements: *70358092248940
|
125
|
+
version: '2.7'
|
91
126
|
- !ruby/object:Gem::Dependency
|
92
127
|
name: activerecord
|
93
|
-
requirement:
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
94
129
|
none: false
|
95
130
|
requirements:
|
96
131
|
- - ~>
|
@@ -98,10 +133,15 @@ dependencies:
|
|
98
133
|
version: '3.1'
|
99
134
|
type: :development
|
100
135
|
prerelease: false
|
101
|
-
version_requirements:
|
136
|
+
version_requirements: !ruby/object:Gem::Requirement
|
137
|
+
none: false
|
138
|
+
requirements:
|
139
|
+
- - ~>
|
140
|
+
- !ruby/object:Gem::Version
|
141
|
+
version: '3.1'
|
102
142
|
- !ruby/object:Gem::Dependency
|
103
143
|
name: mongoid
|
104
|
-
requirement:
|
144
|
+
requirement: !ruby/object:Gem::Requirement
|
105
145
|
none: false
|
106
146
|
requirements:
|
107
147
|
- - ! '>='
|
@@ -109,10 +149,31 @@ dependencies:
|
|
109
149
|
version: '0'
|
110
150
|
type: :development
|
111
151
|
prerelease: false
|
112
|
-
version_requirements:
|
152
|
+
version_requirements: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
113
158
|
- !ruby/object:Gem::Dependency
|
114
159
|
name: mongo_mapper
|
115
|
-
requirement:
|
160
|
+
requirement: !ruby/object:Gem::Requirement
|
161
|
+
none: false
|
162
|
+
requirements:
|
163
|
+
- - ! '>='
|
164
|
+
- !ruby/object:Gem::Version
|
165
|
+
version: '0'
|
166
|
+
type: :development
|
167
|
+
prerelease: false
|
168
|
+
version_requirements: !ruby/object:Gem::Requirement
|
169
|
+
none: false
|
170
|
+
requirements:
|
171
|
+
- - ! '>='
|
172
|
+
- !ruby/object:Gem::Version
|
173
|
+
version: '0'
|
174
|
+
- !ruby/object:Gem::Dependency
|
175
|
+
name: datamapper
|
176
|
+
requirement: !ruby/object:Gem::Requirement
|
116
177
|
none: false
|
117
178
|
requirements:
|
118
179
|
- - ! '>='
|
@@ -120,10 +181,15 @@ dependencies:
|
|
120
181
|
version: '0'
|
121
182
|
type: :development
|
122
183
|
prerelease: false
|
123
|
-
version_requirements:
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
none: false
|
186
|
+
requirements:
|
187
|
+
- - ! '>='
|
188
|
+
- !ruby/object:Gem::Version
|
189
|
+
version: '0'
|
124
190
|
- !ruby/object:Gem::Dependency
|
125
191
|
name: bson_ext
|
126
|
-
requirement:
|
192
|
+
requirement: !ruby/object:Gem::Requirement
|
127
193
|
none: false
|
128
194
|
requirements:
|
129
195
|
- - ! '>='
|
@@ -131,7 +197,12 @@ dependencies:
|
|
131
197
|
version: '0'
|
132
198
|
type: :development
|
133
199
|
prerelease: false
|
134
|
-
version_requirements:
|
200
|
+
version_requirements: !ruby/object:Gem::Requirement
|
201
|
+
none: false
|
202
|
+
requirements:
|
203
|
+
- - ! '>='
|
204
|
+
- !ruby/object:Gem::Version
|
205
|
+
version: '0'
|
135
206
|
description: Internal authentication handlers for OmniAuth.
|
136
207
|
email:
|
137
208
|
- michael@intridea.com
|
@@ -151,6 +222,7 @@ files:
|
|
151
222
|
- lib/omniauth/identity.rb
|
152
223
|
- lib/omniauth/identity/model.rb
|
153
224
|
- lib/omniauth/identity/models/active_record.rb
|
225
|
+
- lib/omniauth/identity/models/data_mapper.rb
|
154
226
|
- lib/omniauth/identity/models/mongo_mapper.rb
|
155
227
|
- lib/omniauth/identity/models/mongoid.rb
|
156
228
|
- lib/omniauth/identity/secure_password.rb
|
@@ -158,6 +230,7 @@ files:
|
|
158
230
|
- omniauth-identity.gemspec
|
159
231
|
- spec/omniauth/identity/model_spec.rb
|
160
232
|
- spec/omniauth/identity/models/active_record_spec.rb
|
233
|
+
- spec/omniauth/identity/models/data_mapper_spec.rb
|
161
234
|
- spec/omniauth/identity/models/mongo_mapper_spec.rb
|
162
235
|
- spec/omniauth/identity/models/mongoid_spec.rb
|
163
236
|
- spec/omniauth/identity/secure_password_spec.rb
|
@@ -183,15 +256,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
183
256
|
version: 1.3.6
|
184
257
|
requirements: []
|
185
258
|
rubyforge_project:
|
186
|
-
rubygems_version: 1.8.
|
259
|
+
rubygems_version: 1.8.24
|
187
260
|
signing_key:
|
188
261
|
specification_version: 3
|
189
262
|
summary: Internal authentication handlers for OmniAuth.
|
190
|
-
test_files:
|
191
|
-
- spec/omniauth/identity/model_spec.rb
|
192
|
-
- spec/omniauth/identity/models/active_record_spec.rb
|
193
|
-
- spec/omniauth/identity/models/mongo_mapper_spec.rb
|
194
|
-
- spec/omniauth/identity/models/mongoid_spec.rb
|
195
|
-
- spec/omniauth/identity/secure_password_spec.rb
|
196
|
-
- spec/omniauth/strategies/identity_spec.rb
|
197
|
-
- spec/spec_helper.rb
|
263
|
+
test_files: []
|