omniauth-identity 3.0.3 → 3.0.4
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +6 -0
- data/README.md +20 -2
- data/lib/omniauth-identity/version.rb +1 -1
- data/lib/omniauth/identity.rb +1 -0
- data/lib/omniauth/identity/models/sequel.rb +37 -0
- data/spec/omniauth/identity/models/sequel_spec.rb +23 -0
- data/spec/spec_helper.rb +1 -0
- metadata +28 -5
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e5de20f544ddaf124fc1b80a0ea15d97d56572034cc985e72001e177c3da2c92
|
4
|
+
data.tar.gz: 21e59364dcba511bd658c7503b4dce12fb7c26e37b7f4bec3b05c91d0d1dd4c4
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ef710bfa64cef76922f89e93ca4292c106bda7e61cb8a49133452227f65163d2c5be70fade9ecc8d973ce35281a812d837edffe27be24689b34646c48109b07a
|
7
|
+
data.tar.gz: 812f288ec96fb46afa30a61fc34caa85b4efbe8857b8fb6dbeaeab9b2c181124db8b8deea40ebbccedcfc8b78d4039dbcad609782d0955a36423e543ba293865
|
data/CHANGELOG.md
CHANGED
@@ -8,6 +8,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
8
8
|
|
9
9
|
## [Unreleased]
|
10
10
|
|
11
|
+
## [3.0.4] - 2021-02-14
|
12
|
+
|
13
|
+
### Added
|
14
|
+
|
15
|
+
- Add support for [sequel ORM](http://sequel.jeremyevans.net/)
|
16
|
+
|
11
17
|
## [3.0.3] - 2021-02-14
|
12
18
|
|
13
19
|
### Added
|
data/README.md
CHANGED
@@ -85,6 +85,22 @@ class Identity < OmniAuth::Identity::Models::ActiveRecord
|
|
85
85
|
end
|
86
86
|
```
|
87
87
|
|
88
|
+
### Sequel
|
89
|
+
|
90
|
+
[Sequel](http://sequel.jeremyevans.net/) is an alternative to ActiveRecord.
|
91
|
+
|
92
|
+
Just include `OmniAuth::Identity::Models::Sequel` mixin, and specify
|
93
|
+
whatever else you will need.
|
94
|
+
|
95
|
+
```ruby
|
96
|
+
class SequelTestIdentity < Sequel::Model
|
97
|
+
include OmniAuth::Identity::Models::Sequel
|
98
|
+
auth_key :email
|
99
|
+
# whatever else you want!
|
100
|
+
end
|
101
|
+
```
|
102
|
+
|
103
|
+
|
88
104
|
### Mongoid
|
89
105
|
|
90
106
|
Include the `OmniAuth::Identity::Models::Mongoid` mixin and specify
|
@@ -103,7 +119,8 @@ end
|
|
103
119
|
|
104
120
|
### CouchPotato
|
105
121
|
|
106
|
-
Include the `OmniAuth::Identity::Models::CouchPotatoModule` mixin and specify
|
122
|
+
Include the `OmniAuth::Identity::Models::CouchPotatoModule` mixin and specify
|
123
|
+
fields that you will need.
|
107
124
|
|
108
125
|
```ruby
|
109
126
|
class Identity
|
@@ -125,7 +142,8 @@ end
|
|
125
142
|
|
126
143
|
[NoBrainer](http://nobrainer.io/) is an ORM for [RethinkDB](https://rethinkdb.com/).
|
127
144
|
|
128
|
-
Include the `OmniAuth::Identity::Models::NoBrainer` mixin and specify
|
145
|
+
Include the `OmniAuth::Identity::Models::NoBrainer` mixin and specify
|
146
|
+
fields that you will need.
|
129
147
|
|
130
148
|
```ruby
|
131
149
|
class Identity
|
data/lib/omniauth/identity.rb
CHANGED
@@ -15,6 +15,7 @@ module OmniAuth
|
|
15
15
|
autoload :Mongoid, 'omniauth/identity/models/mongoid'
|
16
16
|
autoload :CouchPotatoModule, 'omniauth/identity/models/couch_potato'
|
17
17
|
autoload :NoBrainer, 'omniauth/identity/models/no_brainer'
|
18
|
+
autoload :Sequel, 'omniauth/identity/models/sequel'
|
18
19
|
end
|
19
20
|
end
|
20
21
|
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'nobrainer'
|
4
|
+
|
5
|
+
module OmniAuth
|
6
|
+
module Identity
|
7
|
+
module Models
|
8
|
+
# http://sequel.jeremyevans.net/ an SQL ORM
|
9
|
+
module Sequel
|
10
|
+
def self.included(base)
|
11
|
+
base.class_eval do
|
12
|
+
# NOTE: Using the deprecated :validations_class_methods because it defines
|
13
|
+
# validates_confirmation_of, while current :validation_helpers does not.
|
14
|
+
# plugin :validation_helpers
|
15
|
+
plugin :validation_class_methods
|
16
|
+
|
17
|
+
include OmniAuth::Identity::Model
|
18
|
+
include ::OmniAuth::Identity::SecurePassword
|
19
|
+
|
20
|
+
has_secure_password
|
21
|
+
|
22
|
+
alias_method :persisted?, :valid?
|
23
|
+
|
24
|
+
def self.auth_key=(key)
|
25
|
+
super
|
26
|
+
validates_uniqueness_of :key, case_sensitive: false
|
27
|
+
end
|
28
|
+
|
29
|
+
def self.locate(search_hash)
|
30
|
+
where(search_hash).first
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'sequel'
|
4
|
+
# Connect to an in-memory sqlite3 database.
|
5
|
+
DB = Sequel.sqlite
|
6
|
+
DB.create_table :sequel_test_identities do
|
7
|
+
primary_key :id
|
8
|
+
String :ham_sandwich, null: false
|
9
|
+
String :password_digest, null: false
|
10
|
+
end
|
11
|
+
|
12
|
+
class SequelTestIdentity < Sequel::Model
|
13
|
+
include OmniAuth::Identity::Models::Sequel
|
14
|
+
auth_key :ham_sandwich
|
15
|
+
end
|
16
|
+
|
17
|
+
RSpec.describe(OmniAuth::Identity::Models::Sequel, db: true) do
|
18
|
+
it 'delegates locate to the where query method' do
|
19
|
+
allow(SequelTestIdentity).to receive(:where).with('ham_sandwich' => 'open faced',
|
20
|
+
'category' => 'sandwiches').and_return(['wakka'])
|
21
|
+
expect(SequelTestIdentity.locate('ham_sandwich' => 'open faced', 'category' => 'sandwiches')).to eq('wakka')
|
22
|
+
end
|
23
|
+
end
|
data/spec/spec_helper.rb
CHANGED
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: 3.0.
|
4
|
+
version: 3.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Peter Boling
|
@@ -44,16 +44,22 @@ dependencies:
|
|
44
44
|
name: anonymous_active_record
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
46
46
|
requirements:
|
47
|
+
- - "~>"
|
48
|
+
- !ruby/object:Gem::Version
|
49
|
+
version: '1.0'
|
47
50
|
- - ">="
|
48
51
|
- !ruby/object:Gem::Version
|
49
|
-
version: 1.0.
|
52
|
+
version: 1.0.8
|
50
53
|
type: :development
|
51
54
|
prerelease: false
|
52
55
|
version_requirements: !ruby/object:Gem::Requirement
|
53
56
|
requirements:
|
57
|
+
- - "~>"
|
58
|
+
- !ruby/object:Gem::Version
|
59
|
+
version: '1.0'
|
54
60
|
- - ">="
|
55
61
|
- !ruby/object:Gem::Version
|
56
|
-
version: 1.0.
|
62
|
+
version: 1.0.8
|
57
63
|
- !ruby/object:Gem::Dependency
|
58
64
|
name: mongoid
|
59
65
|
requirement: !ruby/object:Gem::Requirement
|
@@ -72,14 +78,14 @@ dependencies:
|
|
72
78
|
name: nobrainer
|
73
79
|
requirement: !ruby/object:Gem::Requirement
|
74
80
|
requirements:
|
75
|
-
- - "
|
81
|
+
- - "~>"
|
76
82
|
- !ruby/object:Gem::Version
|
77
83
|
version: '0'
|
78
84
|
type: :development
|
79
85
|
prerelease: false
|
80
86
|
version_requirements: !ruby/object:Gem::Requirement
|
81
87
|
requirements:
|
82
|
-
- - "
|
88
|
+
- - "~>"
|
83
89
|
- !ruby/object:Gem::Version
|
84
90
|
version: '0'
|
85
91
|
- !ruby/object:Gem::Dependency
|
@@ -124,6 +130,20 @@ dependencies:
|
|
124
130
|
- - "~>"
|
125
131
|
- !ruby/object:Gem::Version
|
126
132
|
version: '3'
|
133
|
+
- !ruby/object:Gem::Dependency
|
134
|
+
name: sequel
|
135
|
+
requirement: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - "~>"
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '5'
|
140
|
+
type: :development
|
141
|
+
prerelease: false
|
142
|
+
version_requirements: !ruby/object:Gem::Requirement
|
143
|
+
requirements:
|
144
|
+
- - "~>"
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
version: '5'
|
127
147
|
- !ruby/object:Gem::Dependency
|
128
148
|
name: sqlite3
|
129
149
|
requirement: !ruby/object:Gem::Requirement
|
@@ -156,6 +176,7 @@ files:
|
|
156
176
|
- lib/omniauth/identity/models/couch_potato.rb
|
157
177
|
- lib/omniauth/identity/models/mongoid.rb
|
158
178
|
- lib/omniauth/identity/models/no_brainer.rb
|
179
|
+
- lib/omniauth/identity/models/sequel.rb
|
159
180
|
- lib/omniauth/identity/secure_password.rb
|
160
181
|
- lib/omniauth/strategies/identity.rb
|
161
182
|
- spec/omniauth/identity/model_spec.rb
|
@@ -163,6 +184,7 @@ files:
|
|
163
184
|
- spec/omniauth/identity/models/couch_potato_spec.rb
|
164
185
|
- spec/omniauth/identity/models/mongoid_spec.rb
|
165
186
|
- spec/omniauth/identity/models/no_brainer_spec.rb
|
187
|
+
- spec/omniauth/identity/models/sequel_spec.rb
|
166
188
|
- spec/omniauth/identity/secure_password_spec.rb
|
167
189
|
- spec/omniauth/strategies/identity_spec.rb
|
168
190
|
- spec/spec_helper.rb
|
@@ -196,6 +218,7 @@ test_files:
|
|
196
218
|
- spec/omniauth/identity/models/couch_potato_spec.rb
|
197
219
|
- spec/omniauth/identity/models/mongoid_spec.rb
|
198
220
|
- spec/omniauth/identity/models/no_brainer_spec.rb
|
221
|
+
- spec/omniauth/identity/models/sequel_spec.rb
|
199
222
|
- spec/omniauth/identity/secure_password_spec.rb
|
200
223
|
- spec/omniauth/strategies/identity_spec.rb
|
201
224
|
- spec/spec_helper.rb
|