authlogic 3.8.0 → 4.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.github/ISSUE_TEMPLATE/bug_report.md +28 -0
- data/.github/ISSUE_TEMPLATE/feature_proposal.md +32 -0
- data/.github/triage.md +86 -0
- data/.gitignore +4 -3
- data/.rubocop.yml +109 -9
- data/.rubocop_todo.yml +38 -355
- data/.travis.yml +11 -35
- data/CHANGELOG.md +345 -2
- data/CONTRIBUTING.md +45 -14
- data/Gemfile +3 -2
- data/README.md +244 -90
- data/Rakefile +10 -10
- data/UPGRADING.md +22 -0
- data/authlogic.gemspec +34 -21
- data/doc/use_normal_rails_validation.md +82 -0
- data/gemfiles/Gemfile.rails-4.2.x +6 -0
- data/{test/gemfiles → gemfiles}/Gemfile.rails-5.1.x +2 -2
- data/{test/gemfiles → gemfiles}/Gemfile.rails-5.2.x +2 -2
- data/lib/authlogic/acts_as_authentic/base.rb +36 -24
- data/lib/authlogic/acts_as_authentic/email.rb +65 -31
- data/lib/authlogic/acts_as_authentic/logged_in_status.rb +14 -9
- data/lib/authlogic/acts_as_authentic/login.rb +61 -45
- data/lib/authlogic/acts_as_authentic/magic_columns.rb +6 -6
- data/lib/authlogic/acts_as_authentic/password.rb +267 -146
- data/lib/authlogic/acts_as_authentic/perishable_token.rb +24 -19
- data/lib/authlogic/acts_as_authentic/persistence_token.rb +10 -15
- data/lib/authlogic/acts_as_authentic/queries/find_with_case.rb +67 -0
- data/lib/authlogic/acts_as_authentic/restful_authentication.rb +50 -14
- data/lib/authlogic/acts_as_authentic/session_maintenance.rb +88 -60
- data/lib/authlogic/acts_as_authentic/single_access_token.rb +23 -11
- data/lib/authlogic/acts_as_authentic/validations_scope.rb +9 -6
- data/lib/authlogic/authenticates_many/association.rb +7 -7
- data/lib/authlogic/authenticates_many/base.rb +37 -21
- data/lib/authlogic/config.rb +21 -10
- data/lib/authlogic/controller_adapters/abstract_adapter.rb +38 -11
- data/lib/authlogic/controller_adapters/rack_adapter.rb +9 -5
- data/lib/authlogic/controller_adapters/rails_adapter.rb +12 -7
- data/lib/authlogic/controller_adapters/sinatra_adapter.rb +2 -2
- data/lib/authlogic/crypto_providers/aes256.rb +37 -32
- data/lib/authlogic/crypto_providers/bcrypt.rb +21 -15
- data/lib/authlogic/crypto_providers/md5.rb +4 -2
- data/lib/authlogic/crypto_providers/scrypt.rb +22 -17
- data/lib/authlogic/crypto_providers/sha1.rb +11 -5
- data/lib/authlogic/crypto_providers/sha256.rb +13 -9
- data/lib/authlogic/crypto_providers/sha512.rb +0 -21
- data/lib/authlogic/crypto_providers/wordpress.rb +32 -3
- data/lib/authlogic/crypto_providers.rb +91 -0
- data/lib/authlogic/i18n.rb +26 -19
- data/lib/authlogic/random.rb +10 -28
- data/lib/authlogic/regex.rb +59 -28
- data/lib/authlogic/session/activation.rb +10 -7
- data/lib/authlogic/session/active_record_trickery.rb +13 -9
- data/lib/authlogic/session/base.rb +15 -4
- data/lib/authlogic/session/brute_force_protection.rb +40 -33
- data/lib/authlogic/session/callbacks.rb +94 -46
- data/lib/authlogic/session/cookies.rb +130 -45
- data/lib/authlogic/session/existence.rb +21 -11
- data/lib/authlogic/session/foundation.rb +64 -14
- data/lib/authlogic/session/http_auth.rb +35 -28
- data/lib/authlogic/session/id.rb +9 -4
- data/lib/authlogic/session/klass.rb +15 -12
- data/lib/authlogic/session/magic_columns.rb +58 -55
- data/lib/authlogic/session/magic_states.rb +25 -19
- data/lib/authlogic/session/params.rb +42 -28
- data/lib/authlogic/session/password.rb +130 -120
- data/lib/authlogic/session/perishable_token.rb +5 -4
- data/lib/authlogic/session/persistence.rb +18 -12
- data/lib/authlogic/session/priority_record.rb +15 -12
- data/lib/authlogic/session/scopes.rb +51 -32
- data/lib/authlogic/session/session.rb +38 -28
- data/lib/authlogic/session/timeout.rb +13 -13
- data/lib/authlogic/session/unauthorized_record.rb +18 -13
- data/lib/authlogic/session/validation.rb +9 -9
- data/lib/authlogic/test_case/mock_controller.rb +5 -4
- data/lib/authlogic/test_case/mock_cookie_jar.rb +47 -3
- data/lib/authlogic/test_case/mock_request.rb +6 -3
- data/lib/authlogic/test_case/rails_request_adapter.rb +3 -2
- data/lib/authlogic/test_case.rb +70 -2
- data/lib/authlogic/version.rb +21 -0
- data/lib/authlogic.rb +51 -49
- data/test/acts_as_authentic_test/base_test.rb +3 -1
- data/test/acts_as_authentic_test/email_test.rb +43 -42
- data/test/acts_as_authentic_test/logged_in_status_test.rb +6 -4
- data/test/acts_as_authentic_test/login_test.rb +77 -80
- data/test/acts_as_authentic_test/magic_columns_test.rb +3 -1
- data/test/acts_as_authentic_test/password_test.rb +51 -37
- data/test/acts_as_authentic_test/perishable_token_test.rb +13 -5
- data/test/acts_as_authentic_test/persistence_token_test.rb +7 -1
- data/test/acts_as_authentic_test/restful_authentication_test.rb +14 -3
- data/test/acts_as_authentic_test/session_maintenance_test.rb +69 -15
- data/test/acts_as_authentic_test/single_access_test.rb +3 -1
- data/test/adapter_test.rb +23 -0
- data/test/authenticates_many_test.rb +3 -1
- data/test/config_test.rb +11 -9
- data/test/crypto_provider_test/aes256_test.rb +3 -1
- data/test/crypto_provider_test/bcrypt_test.rb +3 -1
- data/test/crypto_provider_test/scrypt_test.rb +3 -1
- data/test/crypto_provider_test/sha1_test.rb +3 -1
- data/test/crypto_provider_test/sha256_test.rb +3 -1
- data/test/crypto_provider_test/sha512_test.rb +3 -1
- data/test/crypto_provider_test/wordpress_test.rb +26 -0
- data/test/fixtures/companies.yml +2 -2
- data/test/fixtures/employees.yml +1 -1
- data/test/i18n_test.rb +6 -4
- data/test/libs/affiliate.rb +2 -0
- data/test/libs/company.rb +4 -2
- data/test/libs/employee.rb +2 -0
- data/test/libs/employee_session.rb +2 -0
- data/test/libs/ldaper.rb +2 -0
- data/test/libs/project.rb +2 -0
- data/test/libs/user.rb +2 -0
- data/test/libs/user_session.rb +4 -2
- data/test/random_test.rb +10 -38
- data/test/session_test/activation_test.rb +3 -1
- data/test/session_test/active_record_trickery_test.rb +7 -4
- data/test/session_test/brute_force_protection_test.rb +11 -9
- data/test/session_test/callbacks_test.rb +12 -4
- data/test/session_test/cookies_test.rb +48 -5
- data/test/session_test/existence_test.rb +18 -5
- data/test/session_test/foundation_test.rb +19 -1
- data/test/session_test/http_auth_test.rb +11 -7
- data/test/session_test/id_test.rb +3 -1
- data/test/session_test/klass_test.rb +3 -1
- data/test/session_test/magic_columns_test.rb +13 -13
- data/test/session_test/magic_states_test.rb +3 -1
- data/test/session_test/params_test.rb +13 -5
- data/test/session_test/password_test.rb +10 -8
- data/test/session_test/perishability_test.rb +3 -1
- data/test/session_test/persistence_test.rb +4 -1
- data/test/session_test/scopes_test.rb +16 -8
- data/test/session_test/session_test.rb +6 -4
- data/test/session_test/timeout_test.rb +4 -2
- data/test/session_test/unauthorized_record_test.rb +4 -2
- data/test/session_test/validation_test.rb +3 -1
- data/test/test_helper.rb +84 -45
- metadata +87 -73
- data/.github/ISSUE_TEMPLATE.md +0 -13
- data/test/gemfiles/Gemfile.rails-3.2.x +0 -7
- data/test/gemfiles/Gemfile.rails-4.0.x +0 -7
- data/test/gemfiles/Gemfile.rails-4.1.x +0 -7
- data/test/gemfiles/Gemfile.rails-4.2.x +0 -7
- data/test/gemfiles/Gemfile.rails-5.0.x +0 -6
data/test/test_helper.rb
CHANGED
@@ -1,19 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "byebug"
|
1
4
|
require "rubygems"
|
2
5
|
require "minitest/autorun"
|
3
6
|
require "active_record"
|
4
7
|
require "active_record/fixtures"
|
5
8
|
require "timecop"
|
6
9
|
require "i18n"
|
10
|
+
require "minitest/reporters"
|
11
|
+
|
12
|
+
Minitest::Reporters.use!(Minitest::Reporters::SpecReporter.new)
|
7
13
|
|
8
|
-
I18n.load_path << File.dirname(__FILE__) +
|
14
|
+
I18n.load_path << File.dirname(__FILE__) + "/i18n/lol.yml"
|
9
15
|
|
10
16
|
# ActiveRecord::Schema.verbose = false
|
11
|
-
ActiveRecord::Base.establish_connection(:
|
17
|
+
ActiveRecord::Base.establish_connection(adapter: "sqlite3", database: ":memory:")
|
12
18
|
logger = Logger.new(STDOUT)
|
13
19
|
logger.level = Logger::FATAL
|
14
20
|
ActiveRecord::Base.logger = logger
|
15
21
|
|
16
|
-
if
|
22
|
+
if ActiveRecord::VERSION::STRING < "4.1"
|
17
23
|
ActiveRecord::Base.configurations = true
|
18
24
|
end
|
19
25
|
|
@@ -22,7 +28,7 @@ if ActiveSupport.respond_to?(:test_order)
|
|
22
28
|
end
|
23
29
|
|
24
30
|
ActiveRecord::Base.default_timezone = :local
|
25
|
-
ActiveRecord::Schema.define(:
|
31
|
+
ActiveRecord::Schema.define(version: 1) do
|
26
32
|
create_table :companies do |t|
|
27
33
|
t.datetime :created_at
|
28
34
|
t.datetime :updated_at
|
@@ -36,7 +42,7 @@ ActiveRecord::Schema.define(:version => 1) do
|
|
36
42
|
t.string :name
|
37
43
|
end
|
38
44
|
|
39
|
-
create_table :projects_users, :
|
45
|
+
create_table :projects_users, id: false do |t|
|
40
46
|
t.integer :project_id
|
41
47
|
t.integer :user_id
|
42
48
|
end
|
@@ -44,7 +50,7 @@ ActiveRecord::Schema.define(:version => 1) do
|
|
44
50
|
create_table :users do |t|
|
45
51
|
t.datetime :created_at
|
46
52
|
t.datetime :updated_at
|
47
|
-
t.integer :lock_version, :
|
53
|
+
t.integer :lock_version, default: 0
|
48
54
|
t.integer :company_id
|
49
55
|
t.string :login
|
50
56
|
t.string :crypted_password
|
@@ -55,16 +61,16 @@ ActiveRecord::Schema.define(:version => 1) do
|
|
55
61
|
t.string :email
|
56
62
|
t.string :first_name
|
57
63
|
t.string :last_name
|
58
|
-
t.integer :login_count, :
|
59
|
-
t.integer :failed_login_count, :
|
64
|
+
t.integer :login_count, default: 0, null: false
|
65
|
+
t.integer :failed_login_count, default: 0, null: false
|
60
66
|
t.datetime :last_request_at
|
61
67
|
t.datetime :current_login_at
|
62
68
|
t.datetime :last_login_at
|
63
69
|
t.string :current_login_ip
|
64
70
|
t.string :last_login_ip
|
65
|
-
t.boolean :active, :
|
66
|
-
t.boolean :approved, :
|
67
|
-
t.boolean :confirmed, :
|
71
|
+
t.boolean :active, default: true
|
72
|
+
t.boolean :approved, default: true
|
73
|
+
t.boolean :confirmed, default: true
|
68
74
|
end
|
69
75
|
|
70
76
|
create_table :employees do |t|
|
@@ -77,7 +83,7 @@ ActiveRecord::Schema.define(:version => 1) do
|
|
77
83
|
t.string :persistence_token
|
78
84
|
t.string :first_name
|
79
85
|
t.string :last_name
|
80
|
-
t.integer :login_count, :
|
86
|
+
t.integer :login_count, default: 0, null: false
|
81
87
|
t.datetime :last_request_at
|
82
88
|
t.datetime :current_login_at
|
83
89
|
t.datetime :last_login_at
|
@@ -103,16 +109,24 @@ ActiveRecord::Schema.define(:version => 1) do
|
|
103
109
|
end
|
104
110
|
end
|
105
111
|
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
112
|
+
require "English"
|
113
|
+
$LOAD_PATH.unshift(File.expand_path("../lib", __dir__))
|
114
|
+
require "authlogic"
|
115
|
+
require "authlogic/test_case"
|
116
|
+
|
117
|
+
# Configure SCrypt to be as fast as possible. This is desirable for a test
|
118
|
+
# suite, and would be the opposite of desirable for production.
|
119
|
+
Authlogic::CryptoProviders::SCrypt.max_time = 0.001 # 1ms
|
120
|
+
Authlogic::CryptoProviders::SCrypt.max_mem = 1024 * 1024 # 1MB, the minimum SCrypt allows
|
121
|
+
|
122
|
+
require "libs/project"
|
123
|
+
require "libs/affiliate"
|
124
|
+
require "libs/employee"
|
125
|
+
require "libs/employee_session"
|
126
|
+
require "libs/ldaper"
|
127
|
+
require "libs/user"
|
128
|
+
require "libs/user_session"
|
129
|
+
require "libs/company"
|
116
130
|
|
117
131
|
# Recent change, 2017-10-23: We had used a 54-letter string here. In the default
|
118
132
|
# encoding, UTF-8, that's 54 bytes, which is clearly incorrect for an algorithm
|
@@ -120,41 +134,62 @@ require_relative 'libs/company'
|
|
120
134
|
# thus openssl gem 2.0), it is more strict, and must be exactly 32 bytes.
|
121
135
|
Authlogic::CryptoProviders::AES256.key = ::OpenSSL::Random.random_bytes(32)
|
122
136
|
|
123
|
-
|
124
|
-
|
125
|
-
|
137
|
+
module ActiveSupport
|
138
|
+
class TestCase
|
139
|
+
include ActiveRecord::TestFixtures
|
140
|
+
self.fixture_path = File.dirname(__FILE__) + "/fixtures"
|
126
141
|
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
142
|
+
# use_transactional_fixtures= is deprecated and will be removed from Rails 5.1
|
143
|
+
# (use use_transactional_tests= instead)
|
144
|
+
if respond_to?(:use_transactional_tests=)
|
145
|
+
self.use_transactional_tests = false
|
146
|
+
else
|
147
|
+
self.use_transactional_fixtures = false
|
148
|
+
end
|
134
149
|
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
|
150
|
+
self.use_instantiated_fixtures = false
|
151
|
+
self.pre_loaded_fixtures = false
|
152
|
+
fixtures :all
|
153
|
+
setup :activate_authlogic
|
154
|
+
setup :config_setup
|
155
|
+
teardown :config_teardown
|
156
|
+
teardown { Timecop.return } # for tests that need to freeze the time
|
142
157
|
|
143
|
-
|
158
|
+
private
|
144
159
|
|
145
160
|
# Many of the tests change Authlogic config for the test models. Some tests
|
146
161
|
# were not resetting the config after tests, which didn't surface as broken
|
147
162
|
# tests until Rails 4.1 was added for testing. This ensures that all the
|
148
163
|
# models start tests with their original config.
|
149
164
|
def config_setup
|
150
|
-
[
|
151
|
-
|
165
|
+
[
|
166
|
+
Project,
|
167
|
+
Affiliate,
|
168
|
+
Employee,
|
169
|
+
EmployeeSession,
|
170
|
+
Ldaper,
|
171
|
+
User,
|
172
|
+
UserSession,
|
173
|
+
Company
|
174
|
+
].each do |model|
|
175
|
+
unless model.respond_to?(:original_acts_as_authentic_config)
|
176
|
+
model.class_attribute :original_acts_as_authentic_config
|
177
|
+
end
|
152
178
|
model.original_acts_as_authentic_config = model.acts_as_authentic_config
|
153
179
|
end
|
154
180
|
end
|
155
181
|
|
156
182
|
def config_teardown
|
157
|
-
[
|
183
|
+
[
|
184
|
+
Project,
|
185
|
+
Affiliate,
|
186
|
+
Employee,
|
187
|
+
EmployeeSession,
|
188
|
+
Ldaper,
|
189
|
+
User,
|
190
|
+
UserSession,
|
191
|
+
Company
|
192
|
+
].each do |model|
|
158
193
|
model.acts_as_authentic_config = model.original_acts_as_authentic_config
|
159
194
|
end
|
160
195
|
end
|
@@ -170,7 +205,7 @@ class ActiveSupport::TestCase
|
|
170
205
|
end
|
171
206
|
end
|
172
207
|
|
173
|
-
def http_basic_auth_for(user = nil
|
208
|
+
def http_basic_auth_for(user = nil)
|
174
209
|
unless user.blank?
|
175
210
|
controller.http_user = user.login
|
176
211
|
controller.http_password = password_for(user)
|
@@ -180,7 +215,10 @@ class ActiveSupport::TestCase
|
|
180
215
|
end
|
181
216
|
|
182
217
|
def set_cookie_for(user)
|
183
|
-
controller.cookies["user_credentials"] = {
|
218
|
+
controller.cookies["user_credentials"] = {
|
219
|
+
value: "#{user.persistence_token}::#{user.id}",
|
220
|
+
expires: nil
|
221
|
+
}
|
184
222
|
end
|
185
223
|
|
186
224
|
def unset_cookie
|
@@ -230,4 +268,5 @@ class ActiveSupport::TestCase
|
|
230
268
|
def unset_session
|
231
269
|
controller.session["user_credentials"] = controller.session["user_credentials_id"] = nil
|
232
270
|
end
|
271
|
+
end
|
233
272
|
end
|
metadata
CHANGED
@@ -1,165 +1,189 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: authlogic
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
5
|
-
prerelease:
|
4
|
+
version: 4.5.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Ben Johnson
|
8
|
+
- Tieg Zaharia
|
9
|
+
- Jared Beck
|
9
10
|
autorequire:
|
10
11
|
bindir: bin
|
11
12
|
cert_chain: []
|
12
|
-
date:
|
13
|
+
date: 2020-03-24 00:00:00.000000000 Z
|
13
14
|
dependencies:
|
14
15
|
- !ruby/object:Gem::Dependency
|
15
16
|
name: activerecord
|
16
17
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
18
|
requirements:
|
19
|
-
- -
|
19
|
+
- - ">="
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: '
|
22
|
-
- - <
|
21
|
+
version: '4.2'
|
22
|
+
- - "<"
|
23
23
|
- !ruby/object:Gem::Version
|
24
24
|
version: '5.3'
|
25
25
|
type: :runtime
|
26
26
|
prerelease: false
|
27
27
|
version_requirements: !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
29
28
|
requirements:
|
30
|
-
- -
|
29
|
+
- - ">="
|
31
30
|
- !ruby/object:Gem::Version
|
32
|
-
version: '
|
33
|
-
- - <
|
31
|
+
version: '4.2'
|
32
|
+
- - "<"
|
34
33
|
- !ruby/object:Gem::Version
|
35
34
|
version: '5.3'
|
36
35
|
- !ruby/object:Gem::Dependency
|
37
36
|
name: activesupport
|
38
37
|
requirement: !ruby/object:Gem::Requirement
|
39
|
-
none: false
|
40
38
|
requirements:
|
41
|
-
- -
|
39
|
+
- - ">="
|
42
40
|
- !ruby/object:Gem::Version
|
43
|
-
version: '
|
44
|
-
- - <
|
41
|
+
version: '4.2'
|
42
|
+
- - "<"
|
45
43
|
- !ruby/object:Gem::Version
|
46
44
|
version: '5.3'
|
47
45
|
type: :runtime
|
48
46
|
prerelease: false
|
49
47
|
version_requirements: !ruby/object:Gem::Requirement
|
50
|
-
none: false
|
51
48
|
requirements:
|
52
|
-
- -
|
49
|
+
- - ">="
|
53
50
|
- !ruby/object:Gem::Version
|
54
|
-
version: '
|
55
|
-
- - <
|
51
|
+
version: '4.2'
|
52
|
+
- - "<"
|
56
53
|
- !ruby/object:Gem::Version
|
57
54
|
version: '5.3'
|
58
55
|
- !ruby/object:Gem::Dependency
|
59
56
|
name: request_store
|
60
57
|
requirement: !ruby/object:Gem::Requirement
|
61
|
-
none: false
|
62
58
|
requirements:
|
63
|
-
- - ~>
|
59
|
+
- - "~>"
|
64
60
|
- !ruby/object:Gem::Version
|
65
61
|
version: '1.0'
|
66
62
|
type: :runtime
|
67
63
|
prerelease: false
|
68
64
|
version_requirements: !ruby/object:Gem::Requirement
|
69
|
-
none: false
|
70
65
|
requirements:
|
71
|
-
- - ~>
|
66
|
+
- - "~>"
|
72
67
|
- !ruby/object:Gem::Version
|
73
68
|
version: '1.0'
|
74
69
|
- !ruby/object:Gem::Dependency
|
75
70
|
name: scrypt
|
76
71
|
requirement: !ruby/object:Gem::Requirement
|
77
|
-
none: false
|
78
72
|
requirements:
|
79
|
-
- -
|
73
|
+
- - ">="
|
80
74
|
- !ruby/object:Gem::Version
|
81
75
|
version: '1.2'
|
82
|
-
- - <
|
76
|
+
- - "<"
|
83
77
|
- !ruby/object:Gem::Version
|
84
78
|
version: '4.0'
|
85
79
|
type: :runtime
|
86
80
|
prerelease: false
|
87
81
|
version_requirements: !ruby/object:Gem::Requirement
|
88
|
-
none: false
|
89
82
|
requirements:
|
90
|
-
- -
|
83
|
+
- - ">="
|
91
84
|
- !ruby/object:Gem::Version
|
92
85
|
version: '1.2'
|
93
|
-
- - <
|
86
|
+
- - "<"
|
94
87
|
- !ruby/object:Gem::Version
|
95
88
|
version: '4.0'
|
96
89
|
- !ruby/object:Gem::Dependency
|
97
90
|
name: bcrypt
|
98
91
|
requirement: !ruby/object:Gem::Requirement
|
99
|
-
none: false
|
100
92
|
requirements:
|
101
|
-
- - ~>
|
93
|
+
- - "~>"
|
102
94
|
- !ruby/object:Gem::Version
|
103
95
|
version: '3.1'
|
104
96
|
type: :development
|
105
97
|
prerelease: false
|
106
98
|
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
none: false
|
108
99
|
requirements:
|
109
|
-
- - ~>
|
100
|
+
- - "~>"
|
110
101
|
- !ruby/object:Gem::Version
|
111
102
|
version: '3.1'
|
112
103
|
- !ruby/object:Gem::Dependency
|
113
|
-
name:
|
104
|
+
name: byebug
|
114
105
|
requirement: !ruby/object:Gem::Requirement
|
115
|
-
none: false
|
116
106
|
requirements:
|
117
|
-
- - ~>
|
107
|
+
- - "~>"
|
118
108
|
- !ruby/object:Gem::Version
|
119
|
-
version: '0
|
109
|
+
version: '10.0'
|
120
110
|
type: :development
|
121
111
|
prerelease: false
|
122
112
|
version_requirements: !ruby/object:Gem::Requirement
|
123
|
-
none: false
|
124
113
|
requirements:
|
125
|
-
- - ~>
|
114
|
+
- - "~>"
|
126
115
|
- !ruby/object:Gem::Version
|
127
|
-
version: '0
|
116
|
+
version: '10.0'
|
117
|
+
- !ruby/object:Gem::Dependency
|
118
|
+
name: minitest-reporters
|
119
|
+
requirement: !ruby/object:Gem::Requirement
|
120
|
+
requirements:
|
121
|
+
- - "~>"
|
122
|
+
- !ruby/object:Gem::Version
|
123
|
+
version: '1.3'
|
124
|
+
type: :development
|
125
|
+
prerelease: false
|
126
|
+
version_requirements: !ruby/object:Gem::Requirement
|
127
|
+
requirements:
|
128
|
+
- - "~>"
|
129
|
+
- !ruby/object:Gem::Version
|
130
|
+
version: '1.3'
|
128
131
|
- !ruby/object:Gem::Dependency
|
129
132
|
name: rubocop
|
130
133
|
requirement: !ruby/object:Gem::Requirement
|
131
|
-
none: false
|
132
134
|
requirements:
|
133
|
-
- - ~>
|
135
|
+
- - "~>"
|
134
136
|
- !ruby/object:Gem::Version
|
135
|
-
version: 0.
|
137
|
+
version: 0.58.1
|
136
138
|
type: :development
|
137
139
|
prerelease: false
|
138
140
|
version_requirements: !ruby/object:Gem::Requirement
|
139
|
-
none: false
|
140
141
|
requirements:
|
141
|
-
- - ~>
|
142
|
+
- - "~>"
|
142
143
|
- !ruby/object:Gem::Version
|
143
|
-
version: 0.
|
144
|
+
version: 0.58.1
|
145
|
+
- !ruby/object:Gem::Dependency
|
146
|
+
name: timecop
|
147
|
+
requirement: !ruby/object:Gem::Requirement
|
148
|
+
requirements:
|
149
|
+
- - "~>"
|
150
|
+
- !ruby/object:Gem::Version
|
151
|
+
version: '0.7'
|
152
|
+
type: :development
|
153
|
+
prerelease: false
|
154
|
+
version_requirements: !ruby/object:Gem::Requirement
|
155
|
+
requirements:
|
156
|
+
- - "~>"
|
157
|
+
- !ruby/object:Gem::Version
|
158
|
+
version: '0.7'
|
144
159
|
description:
|
145
160
|
email:
|
146
161
|
- bjohnson@binarylogic.com
|
162
|
+
- tieg.zaharia@gmail.com
|
163
|
+
- jared@jaredbeck.com
|
147
164
|
executables: []
|
148
165
|
extensions: []
|
149
166
|
extra_rdoc_files: []
|
150
167
|
files:
|
151
|
-
- .github/ISSUE_TEMPLATE.md
|
152
|
-
- .
|
153
|
-
- .
|
154
|
-
- .
|
155
|
-
- .
|
168
|
+
- ".github/ISSUE_TEMPLATE/bug_report.md"
|
169
|
+
- ".github/ISSUE_TEMPLATE/feature_proposal.md"
|
170
|
+
- ".github/triage.md"
|
171
|
+
- ".gitignore"
|
172
|
+
- ".rubocop.yml"
|
173
|
+
- ".rubocop_todo.yml"
|
174
|
+
- ".travis.yml"
|
156
175
|
- CHANGELOG.md
|
157
176
|
- CONTRIBUTING.md
|
158
177
|
- Gemfile
|
159
178
|
- LICENSE
|
160
179
|
- README.md
|
161
180
|
- Rakefile
|
181
|
+
- UPGRADING.md
|
162
182
|
- authlogic.gemspec
|
183
|
+
- doc/use_normal_rails_validation.md
|
184
|
+
- gemfiles/Gemfile.rails-4.2.x
|
185
|
+
- gemfiles/Gemfile.rails-5.1.x
|
186
|
+
- gemfiles/Gemfile.rails-5.2.x
|
163
187
|
- lib/authlogic.rb
|
164
188
|
- lib/authlogic/acts_as_authentic/base.rb
|
165
189
|
- lib/authlogic/acts_as_authentic/email.rb
|
@@ -169,6 +193,7 @@ files:
|
|
169
193
|
- lib/authlogic/acts_as_authentic/password.rb
|
170
194
|
- lib/authlogic/acts_as_authentic/perishable_token.rb
|
171
195
|
- lib/authlogic/acts_as_authentic/persistence_token.rb
|
196
|
+
- lib/authlogic/acts_as_authentic/queries/find_with_case.rb
|
172
197
|
- lib/authlogic/acts_as_authentic/restful_authentication.rb
|
173
198
|
- lib/authlogic/acts_as_authentic/session_maintenance.rb
|
174
199
|
- lib/authlogic/acts_as_authentic/single_access_token.rb
|
@@ -222,6 +247,7 @@ files:
|
|
222
247
|
- lib/authlogic/test_case/mock_logger.rb
|
223
248
|
- lib/authlogic/test_case/mock_request.rb
|
224
249
|
- lib/authlogic/test_case/rails_request_adapter.rb
|
250
|
+
- lib/authlogic/version.rb
|
225
251
|
- test/acts_as_authentic_test/base_test.rb
|
226
252
|
- test/acts_as_authentic_test/email_test.rb
|
227
253
|
- test/acts_as_authentic_test/logged_in_status_test.rb
|
@@ -233,6 +259,7 @@ files:
|
|
233
259
|
- test/acts_as_authentic_test/restful_authentication_test.rb
|
234
260
|
- test/acts_as_authentic_test/session_maintenance_test.rb
|
235
261
|
- test/acts_as_authentic_test/single_access_test.rb
|
262
|
+
- test/adapter_test.rb
|
236
263
|
- test/authenticates_many_test.rb
|
237
264
|
- test/config_test.rb
|
238
265
|
- test/crypto_provider_test/aes256_test.rb
|
@@ -241,17 +268,11 @@ files:
|
|
241
268
|
- test/crypto_provider_test/sha1_test.rb
|
242
269
|
- test/crypto_provider_test/sha256_test.rb
|
243
270
|
- test/crypto_provider_test/sha512_test.rb
|
271
|
+
- test/crypto_provider_test/wordpress_test.rb
|
244
272
|
- test/fixtures/companies.yml
|
245
273
|
- test/fixtures/employees.yml
|
246
274
|
- test/fixtures/projects.yml
|
247
275
|
- test/fixtures/users.yml
|
248
|
-
- test/gemfiles/Gemfile.rails-3.2.x
|
249
|
-
- test/gemfiles/Gemfile.rails-4.0.x
|
250
|
-
- test/gemfiles/Gemfile.rails-4.1.x
|
251
|
-
- test/gemfiles/Gemfile.rails-4.2.x
|
252
|
-
- test/gemfiles/Gemfile.rails-5.0.x
|
253
|
-
- test/gemfiles/Gemfile.rails-5.1.x
|
254
|
-
- test/gemfiles/Gemfile.rails-5.2.x
|
255
276
|
- test/i18n/lol.yml
|
256
277
|
- test/i18n_test.rb
|
257
278
|
- test/libs/affiliate.rb
|
@@ -289,27 +310,25 @@ files:
|
|
289
310
|
homepage: http://github.com/binarylogic/authlogic
|
290
311
|
licenses:
|
291
312
|
- MIT
|
313
|
+
metadata: {}
|
292
314
|
post_install_message:
|
293
315
|
rdoc_options: []
|
294
316
|
require_paths:
|
295
317
|
- lib
|
296
318
|
required_ruby_version: !ruby/object:Gem::Requirement
|
297
|
-
none: false
|
298
319
|
requirements:
|
299
|
-
- -
|
320
|
+
- - ">="
|
300
321
|
- !ruby/object:Gem::Version
|
301
|
-
version:
|
322
|
+
version: 2.3.0
|
302
323
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
303
|
-
none: false
|
304
324
|
requirements:
|
305
|
-
- -
|
325
|
+
- - ">="
|
306
326
|
- !ruby/object:Gem::Version
|
307
327
|
version: '0'
|
308
328
|
requirements: []
|
309
|
-
|
310
|
-
rubygems_version: 1.8.23.2
|
329
|
+
rubygems_version: 3.0.3
|
311
330
|
signing_key:
|
312
|
-
specification_version:
|
331
|
+
specification_version: 4
|
313
332
|
summary: A clean, simple, and unobtrusive ruby authentication solution.
|
314
333
|
test_files:
|
315
334
|
- test/acts_as_authentic_test/base_test.rb
|
@@ -323,6 +342,7 @@ test_files:
|
|
323
342
|
- test/acts_as_authentic_test/restful_authentication_test.rb
|
324
343
|
- test/acts_as_authentic_test/session_maintenance_test.rb
|
325
344
|
- test/acts_as_authentic_test/single_access_test.rb
|
345
|
+
- test/adapter_test.rb
|
326
346
|
- test/authenticates_many_test.rb
|
327
347
|
- test/config_test.rb
|
328
348
|
- test/crypto_provider_test/aes256_test.rb
|
@@ -331,17 +351,11 @@ test_files:
|
|
331
351
|
- test/crypto_provider_test/sha1_test.rb
|
332
352
|
- test/crypto_provider_test/sha256_test.rb
|
333
353
|
- test/crypto_provider_test/sha512_test.rb
|
354
|
+
- test/crypto_provider_test/wordpress_test.rb
|
334
355
|
- test/fixtures/companies.yml
|
335
356
|
- test/fixtures/employees.yml
|
336
357
|
- test/fixtures/projects.yml
|
337
358
|
- test/fixtures/users.yml
|
338
|
-
- test/gemfiles/Gemfile.rails-3.2.x
|
339
|
-
- test/gemfiles/Gemfile.rails-4.0.x
|
340
|
-
- test/gemfiles/Gemfile.rails-4.1.x
|
341
|
-
- test/gemfiles/Gemfile.rails-4.2.x
|
342
|
-
- test/gemfiles/Gemfile.rails-5.0.x
|
343
|
-
- test/gemfiles/Gemfile.rails-5.1.x
|
344
|
-
- test/gemfiles/Gemfile.rails-5.2.x
|
345
359
|
- test/i18n/lol.yml
|
346
360
|
- test/i18n_test.rb
|
347
361
|
- test/libs/affiliate.rb
|
data/.github/ISSUE_TEMPLATE.md
DELETED
@@ -1,13 +0,0 @@
|
|
1
|
-
Thanks for your interest in authlogic! Our volunteers' time is limited, so we
|
2
|
-
can only respond on GitHub to bug reports and feature requests. Please ask
|
3
|
-
usage questions on StackOverflow so that the whole community has a chance to
|
4
|
-
answer your question.
|
5
|
-
|
6
|
-
http://stackoverflow.com/questions/tagged/authlogic
|
7
|
-
|
8
|
-
Do not disclose security issues in public. See our contributing guide
|
9
|
-
for instructions.
|
10
|
-
|
11
|
-
https://github.com/binarylogic/authlogic/blob/master/CONTRIBUTING.md
|
12
|
-
|
13
|
-
Thanks for your contribution!
|