authlogic 4.5.0 → 6.4.2
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/lib/authlogic/acts_as_authentic/base.rb +19 -19
- data/lib/authlogic/acts_as_authentic/email.rb +3 -170
- data/lib/authlogic/acts_as_authentic/logged_in_status.rb +3 -1
- data/lib/authlogic/acts_as_authentic/login.rb +7 -174
- data/lib/authlogic/acts_as_authentic/magic_columns.rb +7 -4
- data/lib/authlogic/acts_as_authentic/password.rb +67 -256
- data/lib/authlogic/acts_as_authentic/perishable_token.rb +8 -5
- data/lib/authlogic/acts_as_authentic/persistence_token.rb +10 -4
- data/lib/authlogic/acts_as_authentic/queries/case_sensitivity.rb +53 -0
- data/lib/authlogic/acts_as_authentic/queries/find_with_case.rb +36 -20
- data/lib/authlogic/acts_as_authentic/session_maintenance.rb +12 -8
- data/lib/authlogic/acts_as_authentic/single_access_token.rb +10 -8
- data/lib/authlogic/config.rb +9 -1
- data/lib/authlogic/controller_adapters/abstract_adapter.rb +28 -4
- data/lib/authlogic/controller_adapters/rack_adapter.rb +2 -0
- data/lib/authlogic/controller_adapters/rails_adapter.rb +7 -30
- data/lib/authlogic/controller_adapters/sinatra_adapter.rb +6 -0
- data/lib/authlogic/cookie_credentials.rb +63 -0
- data/lib/authlogic/crypto_providers/bcrypt.rb +3 -3
- data/lib/authlogic/crypto_providers/md5/v2.rb +35 -0
- data/lib/authlogic/crypto_providers/md5.rb +6 -6
- data/lib/authlogic/crypto_providers/scrypt.rb +2 -0
- data/lib/authlogic/crypto_providers/sha1/v2.rb +41 -0
- data/lib/authlogic/crypto_providers/sha1.rb +7 -6
- data/lib/authlogic/crypto_providers/sha256/v2.rb +58 -0
- data/lib/authlogic/crypto_providers/sha256.rb +5 -0
- data/lib/authlogic/crypto_providers/sha512/v2.rb +39 -0
- data/lib/authlogic/crypto_providers/sha512.rb +9 -5
- data/lib/authlogic/crypto_providers.rb +5 -20
- data/lib/authlogic/errors.rb +50 -0
- data/lib/authlogic/i18n/translator.rb +4 -1
- data/lib/authlogic/i18n.rb +3 -1
- data/lib/authlogic/random.rb +2 -0
- data/lib/authlogic/session/base.rb +2197 -39
- data/lib/authlogic/session/magic_column/assigns_last_request_at.rb +46 -0
- data/lib/authlogic/test_case/mock_api_controller.rb +52 -0
- data/lib/authlogic/test_case/mock_controller.rb +3 -1
- data/lib/authlogic/test_case/mock_cookie_jar.rb +32 -6
- data/lib/authlogic/test_case/mock_logger.rb +2 -0
- data/lib/authlogic/test_case/mock_request.rb +12 -0
- data/lib/authlogic/test_case/rails_request_adapter.rb +9 -1
- data/lib/authlogic/test_case.rb +5 -0
- data/lib/authlogic/version.rb +2 -1
- data/lib/authlogic.rb +5 -28
- metadata +175 -200
- data/.github/ISSUE_TEMPLATE/bug_report.md +0 -28
- data/.github/ISSUE_TEMPLATE/feature_proposal.md +0 -32
- data/.github/triage.md +0 -86
- data/.gitignore +0 -15
- data/.rubocop.yml +0 -133
- data/.rubocop_todo.yml +0 -74
- data/.travis.yml +0 -24
- data/CHANGELOG.md +0 -348
- data/CONTRIBUTING.md +0 -91
- data/Gemfile +0 -6
- data/LICENSE +0 -20
- data/README.md +0 -448
- data/Rakefile +0 -21
- data/UPGRADING.md +0 -22
- data/authlogic.gemspec +0 -40
- data/doc/use_normal_rails_validation.md +0 -82
- data/gemfiles/Gemfile.rails-4.2.x +0 -6
- data/gemfiles/Gemfile.rails-5.1.x +0 -6
- data/gemfiles/Gemfile.rails-5.2.x +0 -6
- data/lib/authlogic/acts_as_authentic/restful_authentication.rb +0 -106
- data/lib/authlogic/acts_as_authentic/validations_scope.rb +0 -35
- data/lib/authlogic/authenticates_many/association.rb +0 -50
- data/lib/authlogic/authenticates_many/base.rb +0 -81
- data/lib/authlogic/crypto_providers/aes256.rb +0 -71
- data/lib/authlogic/crypto_providers/wordpress.rb +0 -72
- data/lib/authlogic/regex.rb +0 -79
- data/lib/authlogic/session/activation.rb +0 -73
- data/lib/authlogic/session/active_record_trickery.rb +0 -65
- data/lib/authlogic/session/brute_force_protection.rb +0 -127
- data/lib/authlogic/session/callbacks.rb +0 -153
- data/lib/authlogic/session/cookies.rb +0 -329
- data/lib/authlogic/session/existence.rb +0 -103
- data/lib/authlogic/session/foundation.rb +0 -105
- data/lib/authlogic/session/http_auth.rb +0 -107
- data/lib/authlogic/session/id.rb +0 -53
- data/lib/authlogic/session/klass.rb +0 -73
- data/lib/authlogic/session/magic_columns.rb +0 -119
- data/lib/authlogic/session/magic_states.rb +0 -82
- data/lib/authlogic/session/params.rb +0 -130
- data/lib/authlogic/session/password.rb +0 -318
- data/lib/authlogic/session/perishable_token.rb +0 -24
- data/lib/authlogic/session/persistence.rb +0 -77
- data/lib/authlogic/session/priority_record.rb +0 -38
- data/lib/authlogic/session/scopes.rb +0 -138
- data/lib/authlogic/session/session.rb +0 -77
- data/lib/authlogic/session/timeout.rb +0 -103
- data/lib/authlogic/session/unauthorized_record.rb +0 -56
- data/lib/authlogic/session/validation.rb +0 -93
- data/test/acts_as_authentic_test/base_test.rb +0 -27
- data/test/acts_as_authentic_test/email_test.rb +0 -241
- data/test/acts_as_authentic_test/logged_in_status_test.rb +0 -64
- data/test/acts_as_authentic_test/login_test.rb +0 -153
- data/test/acts_as_authentic_test/magic_columns_test.rb +0 -29
- data/test/acts_as_authentic_test/password_test.rb +0 -263
- data/test/acts_as_authentic_test/perishable_token_test.rb +0 -98
- data/test/acts_as_authentic_test/persistence_token_test.rb +0 -62
- data/test/acts_as_authentic_test/restful_authentication_test.rb +0 -48
- data/test/acts_as_authentic_test/session_maintenance_test.rb +0 -150
- data/test/acts_as_authentic_test/single_access_test.rb +0 -46
- data/test/adapter_test.rb +0 -23
- data/test/authenticates_many_test.rb +0 -33
- data/test/config_test.rb +0 -38
- data/test/crypto_provider_test/aes256_test.rb +0 -16
- data/test/crypto_provider_test/bcrypt_test.rb +0 -16
- data/test/crypto_provider_test/scrypt_test.rb +0 -16
- data/test/crypto_provider_test/sha1_test.rb +0 -25
- data/test/crypto_provider_test/sha256_test.rb +0 -16
- data/test/crypto_provider_test/sha512_test.rb +0 -16
- data/test/crypto_provider_test/wordpress_test.rb +0 -26
- data/test/fixtures/companies.yml +0 -5
- data/test/fixtures/employees.yml +0 -17
- data/test/fixtures/projects.yml +0 -3
- data/test/fixtures/users.yml +0 -41
- data/test/i18n/lol.yml +0 -4
- data/test/i18n_test.rb +0 -35
- data/test/libs/affiliate.rb +0 -9
- data/test/libs/company.rb +0 -8
- data/test/libs/employee.rb +0 -9
- data/test/libs/employee_session.rb +0 -4
- data/test/libs/ldaper.rb +0 -5
- data/test/libs/project.rb +0 -5
- data/test/libs/user.rb +0 -9
- data/test/libs/user_session.rb +0 -27
- data/test/random_test.rb +0 -15
- data/test/session_test/activation_test.rb +0 -45
- data/test/session_test/active_record_trickery_test.rb +0 -78
- data/test/session_test/brute_force_protection_test.rb +0 -110
- data/test/session_test/callbacks_test.rb +0 -42
- data/test/session_test/cookies_test.rb +0 -244
- data/test/session_test/credentials_test.rb +0 -0
- data/test/session_test/existence_test.rb +0 -88
- data/test/session_test/foundation_test.rb +0 -24
- data/test/session_test/http_auth_test.rb +0 -60
- data/test/session_test/id_test.rb +0 -19
- data/test/session_test/klass_test.rb +0 -42
- data/test/session_test/magic_columns_test.rb +0 -62
- data/test/session_test/magic_states_test.rb +0 -60
- data/test/session_test/params_test.rb +0 -61
- data/test/session_test/password_test.rb +0 -107
- data/test/session_test/perishability_test.rb +0 -17
- data/test/session_test/persistence_test.rb +0 -35
- data/test/session_test/scopes_test.rb +0 -68
- data/test/session_test/session_test.rb +0 -80
- data/test/session_test/timeout_test.rb +0 -84
- data/test/session_test/unauthorized_record_test.rb +0 -15
- data/test/session_test/validation_test.rb +0 -25
- data/test/test_helper.rb +0 -272
data/.rubocop.yml
DELETED
@@ -1,133 +0,0 @@
|
|
1
|
-
inherit_from: .rubocop_todo.yml
|
2
|
-
|
3
|
-
AllCops:
|
4
|
-
Exclude:
|
5
|
-
# TravisCI runs `bundle install --path=${BUNDLE_PATH:-vendor/bundle}`
|
6
|
-
# causing our bundle to be installed in `gemfiles/vendor/bundle`.
|
7
|
-
# Regardless, we have no interest in linting files in our bundle :D
|
8
|
-
- gemfiles/vendor/bundle/**/*
|
9
|
-
# Specify lowest supported ruby version. If we committed our .ruby-version
|
10
|
-
# file, we wouldn't have to specify this (https://bit.ly/2vNTsue), but we
|
11
|
-
# don't commit that file because that would interfere with testing multiple
|
12
|
-
# rubies on CI.
|
13
|
-
TargetRubyVersion: 2.3
|
14
|
-
|
15
|
-
# Please use normal indentation when aligning parameters.
|
16
|
-
#
|
17
|
-
# Good:
|
18
|
-
#
|
19
|
-
# method_call(
|
20
|
-
# a,
|
21
|
-
# b
|
22
|
-
# )
|
23
|
-
#
|
24
|
-
# method_call(a,
|
25
|
-
# b
|
26
|
-
# )
|
27
|
-
#
|
28
|
-
# Bad:
|
29
|
-
#
|
30
|
-
# method_call(a,
|
31
|
-
# b)
|
32
|
-
#
|
33
|
-
# The latter is harder to maintain and uses too much horizontal space.
|
34
|
-
Layout/AlignParameters:
|
35
|
-
EnforcedStyle: with_fixed_indentation
|
36
|
-
|
37
|
-
Layout/MultilineMethodCallIndentation:
|
38
|
-
EnforcedStyle: indented
|
39
|
-
|
40
|
-
Layout/MultilineOperationIndentation:
|
41
|
-
EnforcedStyle: indented
|
42
|
-
|
43
|
-
Metrics/AbcSize:
|
44
|
-
Exclude:
|
45
|
-
# crypto_providers/wordpress is deprecated so we will not attempt to
|
46
|
-
# improve its quality.
|
47
|
-
- lib/authlogic/crypto_providers/wordpress.rb
|
48
|
-
# In an ideal world tests would be held to the same ABC metric as production
|
49
|
-
# code. In practice, time spent doing so is not nearly as valuable as
|
50
|
-
# spending the same time improving production code.
|
51
|
-
- test/**/*
|
52
|
-
|
53
|
-
# Questionable value compared to metrics like AbcSize or CyclomaticComplexity.
|
54
|
-
Metrics/BlockLength:
|
55
|
-
Enabled: false
|
56
|
-
|
57
|
-
# Questionable value compared to metrics like AbcSize or CyclomaticComplexity.
|
58
|
-
Metrics/ClassLength:
|
59
|
-
Enabled: false
|
60
|
-
|
61
|
-
Metrics/CyclomaticComplexity:
|
62
|
-
Exclude:
|
63
|
-
# crypto_providers/wordpress is deprecated so we will not attempt to
|
64
|
-
# improve its quality.
|
65
|
-
- lib/authlogic/crypto_providers/wordpress.rb
|
66
|
-
|
67
|
-
# Aim for 80, but 100 is OK.
|
68
|
-
Metrics/LineLength:
|
69
|
-
Max: 100
|
70
|
-
|
71
|
-
# Questionable value compared to metrics like AbcSize or CyclomaticComplexity.
|
72
|
-
Metrics/MethodLength:
|
73
|
-
Enabled: false
|
74
|
-
|
75
|
-
# Questionable value compared to metrics like AbcSize or CyclomaticComplexity.
|
76
|
-
Metrics/ModuleLength:
|
77
|
-
Enabled: false
|
78
|
-
|
79
|
-
# Sometimes prefixing a method name with get_ or set_ is a reasonable choice.
|
80
|
-
Naming/AccessorMethodName:
|
81
|
-
Enabled: false
|
82
|
-
|
83
|
-
# Having a consistent delimiter, like EOS, improves reading speed. The delimiter
|
84
|
-
# is syntactic noise, just like a quotation mark, and inconsistent naming would
|
85
|
-
# hurt reading speed, just as inconsistent quoting would.
|
86
|
-
Naming/HeredocDelimiterNaming:
|
87
|
-
Enabled: false
|
88
|
-
|
89
|
-
# Avoid single-line method definitions.
|
90
|
-
Style/EmptyMethod:
|
91
|
-
EnforcedStyle: expanded
|
92
|
-
|
93
|
-
# Avoid annotated tokens except in desperately complicated format strings.
|
94
|
-
# In 99% of format strings they actually make it less readable.
|
95
|
-
Style/FormatStringToken:
|
96
|
-
Enabled: false
|
97
|
-
|
98
|
-
# Too subtle to lint. Guard clauses are great, use them if they help.
|
99
|
-
Style/GuardClause:
|
100
|
-
Enabled: false
|
101
|
-
|
102
|
-
# Too subtle to lint. A multi-line conditional may improve readability, even if
|
103
|
-
# a postfix conditional would satisfy `Metrics/LineLength`.
|
104
|
-
Style/IfUnlessModifier:
|
105
|
-
Enabled: false
|
106
|
-
|
107
|
-
# Too subtle to lint. Use semantic style, but prefer `}.x` over `end.x`.
|
108
|
-
Style/BlockDelimiters:
|
109
|
-
Enabled: false
|
110
|
-
|
111
|
-
# Use the nested style because it is safer. It is easier to make mistakes with
|
112
|
-
# the compact style.
|
113
|
-
Style/ClassAndModuleChildren:
|
114
|
-
EnforcedStyle: nested
|
115
|
-
|
116
|
-
# Both `module_function` and `extend_self` are legitimate. Most importantly,
|
117
|
-
# they are different (http://bit.ly/2hSQAGm)
|
118
|
-
Style/ModuleFunction:
|
119
|
-
Enabled: false
|
120
|
-
|
121
|
-
# The decision of when to use slashes `/foo/` or percent-r `%r{foo}` is too
|
122
|
-
# subtle to lint. Use whichever requires fewer backslash escapes.
|
123
|
-
Style/RegexpLiteral:
|
124
|
-
AllowInnerSlashes: true
|
125
|
-
|
126
|
-
# We use words, like `$LOAD_PATH`, because they are much less confusing that
|
127
|
-
# arcane symbols like `$:`. Unfortunately, we must then `require "English"` in
|
128
|
-
# a few places, but it's worth it so that we can read our code.
|
129
|
-
Style/SpecialGlobalVars:
|
130
|
-
EnforcedStyle: use_english_names
|
131
|
-
|
132
|
-
Style/StringLiterals:
|
133
|
-
EnforcedStyle: double_quotes
|
data/.rubocop_todo.yml
DELETED
@@ -1,74 +0,0 @@
|
|
1
|
-
# This configuration was generated by
|
2
|
-
# `rubocop --auto-gen-config`
|
3
|
-
# on 2018-05-22 23:50:03 -0400 using RuboCop version 0.56.0.
|
4
|
-
# The point is for the user to remove these configuration records
|
5
|
-
# one by one as the offenses are removed from the code base.
|
6
|
-
# Note that changes in the inspected code, or installation of new
|
7
|
-
# versions of RuboCop, may require this file to be generated again.
|
8
|
-
|
9
|
-
# Offense count: 10
|
10
|
-
Metrics/AbcSize:
|
11
|
-
Max: 18.5
|
12
|
-
|
13
|
-
# Offense count: 59
|
14
|
-
# Cop supports --auto-correct.
|
15
|
-
# Configuration parameters: EnforcedStyle.
|
16
|
-
# SupportedStyles: prefer_alias, prefer_alias_method
|
17
|
-
Style/Alias:
|
18
|
-
Enabled: false
|
19
|
-
|
20
|
-
# Offense count: 5
|
21
|
-
Style/ClassVars:
|
22
|
-
Exclude:
|
23
|
-
- 'lib/authlogic/i18n.rb'
|
24
|
-
|
25
|
-
# Offense count: 22
|
26
|
-
Style/Documentation:
|
27
|
-
Exclude:
|
28
|
-
# Permanent
|
29
|
-
- 'test/**/*'
|
30
|
-
|
31
|
-
# TODO
|
32
|
-
- 'lib/authlogic/config.rb'
|
33
|
-
- 'lib/authlogic/controller_adapters/sinatra_adapter.rb'
|
34
|
-
- 'lib/authlogic/crypto_providers.rb'
|
35
|
-
- 'lib/authlogic/i18n/translator.rb'
|
36
|
-
- 'lib/authlogic/session/activation.rb'
|
37
|
-
- 'lib/authlogic/session/active_record_trickery.rb'
|
38
|
-
- 'lib/authlogic/session/existence.rb'
|
39
|
-
- 'lib/authlogic/session/foundation.rb'
|
40
|
-
- 'lib/authlogic/session/klass.rb'
|
41
|
-
- 'lib/authlogic/session/persistence.rb'
|
42
|
-
- 'lib/authlogic/session/scopes.rb'
|
43
|
-
- 'lib/authlogic/test_case.rb'
|
44
|
-
- 'lib/authlogic/test_case/mock_cookie_jar.rb'
|
45
|
-
- 'lib/authlogic/version.rb'
|
46
|
-
|
47
|
-
Style/FrozenStringLiteralComment:
|
48
|
-
Exclude:
|
49
|
-
# Freezing strings in lib would be a breaking change. We'll have to wait
|
50
|
-
# for the next major version.
|
51
|
-
- lib/**/*
|
52
|
-
|
53
|
-
# Offense count: 4
|
54
|
-
Style/MethodMissingSuper:
|
55
|
-
Exclude:
|
56
|
-
- 'lib/authlogic/controller_adapters/abstract_adapter.rb'
|
57
|
-
- 'lib/authlogic/controller_adapters/sinatra_adapter.rb'
|
58
|
-
- 'lib/authlogic/test_case/mock_request.rb'
|
59
|
-
|
60
|
-
# Offense count: 3
|
61
|
-
Style/MissingRespondToMissing:
|
62
|
-
Exclude:
|
63
|
-
- 'lib/authlogic/controller_adapters/sinatra_adapter.rb'
|
64
|
-
- 'lib/authlogic/test_case/mock_request.rb'
|
65
|
-
|
66
|
-
Style/NumericPredicate:
|
67
|
-
Enabled: false
|
68
|
-
|
69
|
-
# Offense count: 10
|
70
|
-
# Cop supports --auto-correct.
|
71
|
-
# Configuration parameters: .
|
72
|
-
# SupportedStyles: compact, exploded
|
73
|
-
Style/RaiseArgs:
|
74
|
-
EnforcedStyle: compact
|
data/.travis.yml
DELETED
@@ -1,24 +0,0 @@
|
|
1
|
-
language: ruby
|
2
|
-
cache: bundler
|
3
|
-
|
4
|
-
before_install:
|
5
|
-
- gem update --system
|
6
|
-
- gem update bundler
|
7
|
-
|
8
|
-
# We only test the oldest and the newest ruby versions that we support. We
|
9
|
-
# do not test intermediate versions.
|
10
|
-
rvm:
|
11
|
-
- 2.3.7
|
12
|
-
- 2.5.1
|
13
|
-
|
14
|
-
# We only test living versions of rails, per the [rails maintenance
|
15
|
-
# policy](http://guides.rubyonrails.org/maintenance_policy.html)
|
16
|
-
gemfile:
|
17
|
-
- gemfiles/Gemfile.rails-4.2.x
|
18
|
-
- gemfiles/Gemfile.rails-5.1.x
|
19
|
-
- gemfiles/Gemfile.rails-5.2.x
|
20
|
-
|
21
|
-
matrix:
|
22
|
-
fast_finish: true
|
23
|
-
|
24
|
-
sudo: false
|
data/CHANGELOG.md
DELETED
@@ -1,348 +0,0 @@
|
|
1
|
-
# Changelog
|
2
|
-
|
3
|
-
All notable changes to this project will be documented in this file.
|
4
|
-
|
5
|
-
The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/)
|
6
|
-
and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html).
|
7
|
-
|
8
|
-
## 5.0.0
|
9
|
-
|
10
|
-
See https://github.com/binarylogic/authlogic/blob/5-0-stable/CHANGELOG.md
|
11
|
-
|
12
|
-
## Unreleased
|
13
|
-
|
14
|
-
* Breaking Changes
|
15
|
-
* None
|
16
|
-
* Added
|
17
|
-
* None
|
18
|
-
* Fixed
|
19
|
-
* None
|
20
|
-
|
21
|
-
## 4.5.0 (2020-03-23)
|
22
|
-
|
23
|
-
* Breaking Changes
|
24
|
-
* None
|
25
|
-
* Added
|
26
|
-
* [#701](https://github.com/binarylogic/authlogic/pull/701) - Ability to
|
27
|
-
specify None as a valid value to SameSite cookie attribute
|
28
|
-
* Fixed
|
29
|
-
* None
|
30
|
-
|
31
|
-
## 4.4.3 (2019-03-23)
|
32
|
-
|
33
|
-
* Breaking Changes
|
34
|
-
* None
|
35
|
-
* Added
|
36
|
-
* [#660](https://github.com/binarylogic/authlogic/pull/660) -
|
37
|
-
Authlogic::Session::Cookies.encrypt_cookie option
|
38
|
-
* Fixed
|
39
|
-
* Restrict sqlite3 version so tests can run normally
|
40
|
-
|
41
|
-
## 4.4.2 (2018-09-23)
|
42
|
-
|
43
|
-
* Breaking Changes
|
44
|
-
* None
|
45
|
-
* Added
|
46
|
-
* None
|
47
|
-
* Fixed
|
48
|
-
* Improved instructions in deprecation warning for validations
|
49
|
-
|
50
|
-
## 4.4.1 (2018-09-21)
|
51
|
-
|
52
|
-
* Breaking Changes
|
53
|
-
* None
|
54
|
-
* Added
|
55
|
-
* None
|
56
|
-
* Fixed
|
57
|
-
* The methods for disabling Authlogic's "special" validations,
|
58
|
-
eg. `validate_email_field = false` are actually deprecated, but should
|
59
|
-
not produce a deprecation warning.
|
60
|
-
* Only produce deprecation warning when configuring a validation, not when
|
61
|
-
performing actual validation.
|
62
|
-
|
63
|
-
## 4.4.0 (2018-09-21)
|
64
|
-
|
65
|
-
* Breaking Changes
|
66
|
-
* None
|
67
|
-
* Added
|
68
|
-
* None
|
69
|
-
* Fixed
|
70
|
-
* None
|
71
|
-
* Deprecation
|
72
|
-
* [#627](https://github.com/binarylogic/authlogic/pull/627) -
|
73
|
-
Deprecate `authenticates_many` without replacement
|
74
|
-
* [#623](https://github.com/binarylogic/authlogic/pull/623) -
|
75
|
-
Deprecate unnecessary validation features, use normal rails validation
|
76
|
-
instead
|
77
|
-
|
78
|
-
## 4.3.0 (2018-08-12)
|
79
|
-
|
80
|
-
* Breaking Changes
|
81
|
-
* None
|
82
|
-
* Added
|
83
|
-
* None
|
84
|
-
* Fixed
|
85
|
-
* None
|
86
|
-
* Dependencies
|
87
|
-
* Drop support for ruby 2.2, which reached EoL on 2018-06-20
|
88
|
-
|
89
|
-
## 4.2.0 (2018-07-18)
|
90
|
-
|
91
|
-
* Breaking Changes
|
92
|
-
* None
|
93
|
-
* Added
|
94
|
-
* [#611](https://github.com/binarylogic/authlogic/pull/611) - Deprecate
|
95
|
-
AES256, guide users to choose a better crypto provider
|
96
|
-
* Fixed
|
97
|
-
* None
|
98
|
-
|
99
|
-
## 4.1.1 (2018-05-23)
|
100
|
-
|
101
|
-
* Breaking Changes
|
102
|
-
* None
|
103
|
-
* Added
|
104
|
-
* None
|
105
|
-
* Fixed
|
106
|
-
* [#606](https://github.com/binarylogic/authlogic/pull/606) - Interpreter
|
107
|
-
warnings about undefined instance variables
|
108
|
-
|
109
|
-
## 4.1.0 (2018-04-24)
|
110
|
-
|
111
|
-
* Breaking Changes
|
112
|
-
* None
|
113
|
-
* Added
|
114
|
-
* None
|
115
|
-
* Fixed
|
116
|
-
* None
|
117
|
-
* Deprecated
|
118
|
-
* crypto_providers/wordpress.rb, without replacement
|
119
|
-
* restful_authentication, without replacement
|
120
|
-
|
121
|
-
## 4.0.1 (2018-03-20)
|
122
|
-
|
123
|
-
* Breaking Changes
|
124
|
-
* None
|
125
|
-
* Added
|
126
|
-
* None
|
127
|
-
* Fixed
|
128
|
-
* [#590](https://github.com/binarylogic/authlogic/pull/590) -
|
129
|
-
Fix "cannot modify frozen gem" re: ActiveRecord.gem_version
|
130
|
-
|
131
|
-
## 4.0.0 (2018-03-18)
|
132
|
-
|
133
|
-
* Breaking Changes, Major
|
134
|
-
* Drop support for ruby < 2.2
|
135
|
-
* Drop support for rails < 4.2
|
136
|
-
* HTTP Basic Auth is now disabled by default (use allow_http_basic_auth to enable)
|
137
|
-
* 'httponly' and 'secure' cookie options are enabled by default now
|
138
|
-
* maintain_sessions config has been removed. It has been split into 2 new options:
|
139
|
-
log_in_after_create & log_in_after_password_change (@lucasminissale)
|
140
|
-
* [#558](https://github.com/binarylogic/authlogic/pull/558) Passing an
|
141
|
-
ActionController::Parameters into authlogic will now raise an error
|
142
|
-
|
143
|
-
* Breaking Changes, Minor
|
144
|
-
* Methods in Authlogic::Random are now module methods, and are no longer
|
145
|
-
instance methods. Previously, there were both. Do not use Authlogic::Random
|
146
|
-
as a mixin.
|
147
|
-
* Our mutable constants (e.g. arrays, hashes) are now frozen.
|
148
|
-
|
149
|
-
* Added
|
150
|
-
* `Authlogic.gem_version`
|
151
|
-
* [#586](https://github.com/binarylogic/authlogic/pull/586) Support for SameSite cookies
|
152
|
-
* [#581](https://github.com/binarylogic/authlogic/pull/581) Support for rails 5.2
|
153
|
-
* Support for ruby 2.4, specifically openssl gem 2.0
|
154
|
-
* [#98](https://github.com/binarylogic/authlogic/issues/98)
|
155
|
-
I18n for invalid session error message. (@eugenebolshakov)
|
156
|
-
|
157
|
-
* Fixed
|
158
|
-
* Random.friendly_token (used for e.g. perishable token) now returns strings
|
159
|
-
of consistent length, and conforms better to RFC-4648
|
160
|
-
* ensure that login field validation uses correct locale (@sskirby)
|
161
|
-
* add a respond_to_missing? in AbstractAdapter that also checks controller respond_to?
|
162
|
-
* [#561](https://github.com/binarylogic/authlogic/issues/561) authenticates_many now works with scope_cookies:true
|
163
|
-
* Allow tld up to 24 characters per https://data.iana.org/TLD/tlds-alpha-by-domain.txt
|
164
|
-
|
165
|
-
## 3.8.0 2018-02-07
|
166
|
-
|
167
|
-
* Breaking Changes
|
168
|
-
* None
|
169
|
-
|
170
|
-
* Added
|
171
|
-
* [#582](https://github.com/binarylogic/authlogic/pull/582) Support rails 5.2
|
172
|
-
* [#583](https://github.com/binarylogic/authlogic/pull/583) Support openssl gem 2.0
|
173
|
-
|
174
|
-
* Fixed
|
175
|
-
* None
|
176
|
-
|
177
|
-
## 3.7.0 2018-02-07
|
178
|
-
|
179
|
-
* Breaking Changes
|
180
|
-
* None
|
181
|
-
|
182
|
-
* Added
|
183
|
-
* [#580](https://github.com/binarylogic/authlogic/pull/580) Deprecated
|
184
|
-
`ActionController::Parameters`, will be removed in 4.0.0
|
185
|
-
|
186
|
-
* Fixed
|
187
|
-
* None
|
188
|
-
|
189
|
-
## 3.6.1 2017-09-30
|
190
|
-
|
191
|
-
* Breaking Changes
|
192
|
-
* None
|
193
|
-
|
194
|
-
* Added
|
195
|
-
* None
|
196
|
-
|
197
|
-
* Fixed
|
198
|
-
* Allow TLD up to 24 characters per
|
199
|
-
https://data.iana.org/TLD/tlds-alpha-by-domain.txt
|
200
|
-
* [#561](https://github.com/binarylogic/authlogic/issues/561)
|
201
|
-
authenticates_many now works with scope_cookies:true
|
202
|
-
|
203
|
-
## 3.6.0 2017-04-28
|
204
|
-
|
205
|
-
* Breaking Changes
|
206
|
-
* None
|
207
|
-
|
208
|
-
* Added
|
209
|
-
* Support rails 5.1
|
210
|
-
|
211
|
-
* Fixed
|
212
|
-
* ensure that login field validation uses correct locale (@sskirby)
|
213
|
-
|
214
|
-
## 3.5.0 2016-08-29
|
215
|
-
|
216
|
-
* new
|
217
|
-
* Rails 5.0 support! Thanks to all reporters and contributors.
|
218
|
-
|
219
|
-
* changes
|
220
|
-
* increased default minimum password length to 8 (@iainbeeston)
|
221
|
-
* bind parameters in where statement for rails 5 support
|
222
|
-
* change callback for rails 5 support
|
223
|
-
* converts the ActionController::Parameters to a Hash for rails 5 support
|
224
|
-
* check last_request_at_threshold even if last_request_at_update_allowed returns true (@rofreg)
|
225
|
-
|
226
|
-
## 3.4.6 2015
|
227
|
-
|
228
|
-
* changes
|
229
|
-
* add Regex.email_nonascii for validation of emails w/unicode (@rchekaluk)
|
230
|
-
* allow scrypt 2.x (@jaredbeck)
|
231
|
-
|
232
|
-
## 3.4.5 2015-03-01
|
233
|
-
|
234
|
-
* changes
|
235
|
-
* security-hardening fix and cleanup in persistence_token lookup
|
236
|
-
* security-hardening fix in perishable_token lookup (thx @tomekr)
|
237
|
-
|
238
|
-
## 3.4.4 2014-12-23
|
239
|
-
|
240
|
-
* changes
|
241
|
-
* extract rw_config into an Authlogic::Config module
|
242
|
-
* improved the way config changes are made in tests
|
243
|
-
* fix for Rails 4.2 by extending ActiveModel
|
244
|
-
|
245
|
-
## 3.4.3 2014-10-08
|
246
|
-
|
247
|
-
* changes
|
248
|
-
* backfill CHANGELOG
|
249
|
-
* better compatibility with jruby (thx @petergoldstein)
|
250
|
-
* added scrypt as a dependency
|
251
|
-
* cleanup some code (thx @roryokane)
|
252
|
-
* reference 'bcrypt' gem instead of 'bcrypt-ruby' (thx @roryokane)
|
253
|
-
* fixed typo (thx @chamini2)
|
254
|
-
* fixed magic column validations for Rails 4.2 (thx @tom-kuca)
|
255
|
-
|
256
|
-
## 3.4.2 2014-04-28
|
257
|
-
|
258
|
-
* changes
|
259
|
-
* fixed the missing scrypt/bcrypt gem errors introduced in 3.4.1
|
260
|
-
* implemented autoloading for providers
|
261
|
-
* added longer subdomain support in email regex
|
262
|
-
|
263
|
-
## 3.4.1 2014-04-04
|
264
|
-
|
265
|
-
* changes
|
266
|
-
* undid an accidental revert of some code
|
267
|
-
|
268
|
-
## 3.4.0 2014-03-03
|
269
|
-
|
270
|
-
* Breaking Changes
|
271
|
-
* made scrypt the default crypto provider from SHA512
|
272
|
-
(https://github.com/binarylogic/authlogic#upgrading-to-authlogic-340)
|
273
|
-
See UPGRADING.md.
|
274
|
-
|
275
|
-
* Added
|
276
|
-
* officially support rails 4 (still supporting rails 3)
|
277
|
-
* added cookie signing
|
278
|
-
* added request store for better concurency for threaded environments
|
279
|
-
* added a rack adapter for Rack middleware support
|
280
|
-
|
281
|
-
* Fixed
|
282
|
-
* ditched appraisal
|
283
|
-
* improved find_with_case default performance
|
284
|
-
* added travis ci support
|
285
|
-
|
286
|
-
## 3.3.0 2014-04-04
|
287
|
-
|
288
|
-
* changes
|
289
|
-
* added safeguard against a sqli that was also fixed in rails 3.2.10/3.1.9/3.0.18
|
290
|
-
* imposed the bcrypt gem's mincost
|
291
|
-
* removed shoulda macros
|
292
|
-
|
293
|
-
## 3.2.0 2012-12-07
|
294
|
-
|
295
|
-
* new
|
296
|
-
* scrypt support
|
297
|
-
|
298
|
-
* changes
|
299
|
-
* moved back to LOWER for find_with_case ci lookups
|
300
|
-
|
301
|
-
## 3.1.3 2012-06-13
|
302
|
-
|
303
|
-
* changes
|
304
|
-
* removed jeweler
|
305
|
-
|
306
|
-
## 3.1.2 2012-06-01
|
307
|
-
|
308
|
-
* changes
|
309
|
-
* mostly test fixes
|
310
|
-
|
311
|
-
## 3.1.1 2012-06-01
|
312
|
-
|
313
|
-
* changes
|
314
|
-
* mostly doc fixes
|
315
|
-
|
316
|
-
## 3.1.0 2011-10-19
|
317
|
-
|
318
|
-
* changes
|
319
|
-
* mostly small bug fixes
|
320
|
-
|
321
|
-
## 3.0.3 2011-05-17
|
322
|
-
|
323
|
-
* changes
|
324
|
-
* rails 3.1 support
|
325
|
-
|
326
|
-
* new
|
327
|
-
* http auth support
|
328
|
-
|
329
|
-
## 3.0.2 2011-04-30
|
330
|
-
|
331
|
-
* changes
|
332
|
-
* doc fixes
|
333
|
-
|
334
|
-
## 3.0.1 2011-04-30
|
335
|
-
|
336
|
-
* changes
|
337
|
-
* switch from LOWER to LIKE for find_with_case ci lookups
|
338
|
-
|
339
|
-
## 3.0.0 2011-04-30
|
340
|
-
|
341
|
-
* new
|
342
|
-
* ssl cookie support
|
343
|
-
* httponly cookie support
|
344
|
-
* added a session generator
|
345
|
-
|
346
|
-
* changes
|
347
|
-
* rails 3 support
|
348
|
-
* ruby 1.9.2 support
|
data/CONTRIBUTING.md
DELETED
@@ -1,91 +0,0 @@
|
|
1
|
-
# Contributing to Authlogic
|
2
|
-
|
3
|
-
## Issues
|
4
|
-
|
5
|
-
### Security Issues
|
6
|
-
|
7
|
-
**Do not disclose security issues in public.** Instead, please email:
|
8
|
-
|
9
|
-
```
|
10
|
-
Ben Johnson <bjohnson@binarylogic.com>,
|
11
|
-
Tieg Zaharia <tieg.zaharia@gmail.com>
|
12
|
-
Jared Beck <jared@jaredbeck.com>
|
13
|
-
```
|
14
|
-
|
15
|
-
We will review security issues promptly.
|
16
|
-
|
17
|
-
### Non-Security Issues
|
18
|
-
|
19
|
-
Please use github issues only for bug reports and feature suggestions.
|
20
|
-
|
21
|
-
### Usage Questions
|
22
|
-
|
23
|
-
Please ask usage questions on
|
24
|
-
[stackoverflow](http://stackoverflow.com/questions/tagged/authlogic).
|
25
|
-
|
26
|
-
## Development
|
27
|
-
|
28
|
-
Most local development should be done using the oldest supported version of
|
29
|
-
ruby. See `required_ruby_version` in the gemspec.
|
30
|
-
|
31
|
-
### Testing
|
32
|
-
|
33
|
-
Tests can be run against different versions of Rails like so:
|
34
|
-
|
35
|
-
```
|
36
|
-
BUNDLE_GEMFILE=gemfiles/Gemfile.rails-4.2.x bundle install
|
37
|
-
BUNDLE_GEMFILE=gemfiles/Gemfile.rails-4.2.x bundle exec rake
|
38
|
-
```
|
39
|
-
|
40
|
-
To run a single test:
|
41
|
-
|
42
|
-
```
|
43
|
-
BUNDLE_GEMFILE=gemfiles/Gemfile.rails-4.2.x \
|
44
|
-
bundle exec ruby -I test path/to/test.rb
|
45
|
-
```
|
46
|
-
|
47
|
-
Bundler can be omitted, and the latest installed version of a gem dependency
|
48
|
-
will be used. This is only suitable for certain unit tests.
|
49
|
-
|
50
|
-
```
|
51
|
-
ruby –I test path/to/test.rb
|
52
|
-
```
|
53
|
-
|
54
|
-
### Linting
|
55
|
-
|
56
|
-
Running `rake` also runs a linter, rubocop. Contributions must pass both
|
57
|
-
the linter and the tests. The linter can be run on its own.
|
58
|
-
|
59
|
-
```
|
60
|
-
BUNDLE_GEMFILE=gemfiles/Gemfile.rails-4.2.x bundle exec rubocop
|
61
|
-
```
|
62
|
-
|
63
|
-
To run the tests without linting, use `rake test`.
|
64
|
-
|
65
|
-
```
|
66
|
-
BUNDLE_GEMFILE=gemfiles/Gemfile.rails-4.2.x bundle exec rake test
|
67
|
-
```
|
68
|
-
|
69
|
-
### Version Control Branches
|
70
|
-
|
71
|
-
We've been trying to follow the rails way, stable branches, but have been
|
72
|
-
inconsistent. We should have one branche for each minor version, named like
|
73
|
-
`4-3-stable`. Releases should be done on those branches, not in master. So,
|
74
|
-
the "stable" branches should be the only branches with release tags.
|
75
|
-
|
76
|
-
### A normal release (no backport)
|
77
|
-
|
78
|
-
1. git checkout 4-3-stable # the latest "stable" branch (see above)
|
79
|
-
1. Update version number in lib/authlogic/version.rb
|
80
|
-
1. In the changelog,
|
81
|
-
- Add release date to entry
|
82
|
-
- Add a new "Unreleased" section at top
|
83
|
-
1. In the readme,
|
84
|
-
- Update version number in the docs table at the top
|
85
|
-
- For non-patch versions, update the compatibility table
|
86
|
-
1. Commit with message like "Release 4.3.0"
|
87
|
-
1. git tag -a -m "v4.3.0" "v4.3.0"
|
88
|
-
1. git push --tags origin 4-3-stable # or whatever branch (see above)
|
89
|
-
1. CI should pass
|
90
|
-
1. gem build authlogic.gemspec
|
91
|
-
1. gem push authlogic-4.3.0
|
data/Gemfile
DELETED
data/LICENSE
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
Copyright (c) 2011 Ben Johnson of Binary Logic
|
2
|
-
|
3
|
-
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
-
a copy of this software and associated documentation files (the
|
5
|
-
"Software"), to deal in the Software without restriction, including
|
6
|
-
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
-
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
-
permit persons to whom the Software is furnished to do so, subject to
|
9
|
-
the following conditions:
|
10
|
-
|
11
|
-
The above copyright notice and this permission notice shall be
|
12
|
-
included in all copies or substantial portions of the Software.
|
13
|
-
|
14
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
-
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
-
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
-
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
-
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
-
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
-
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|