devise-two-factor 4.0.2 → 4.1.1

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.

Potentially problematic release.


This version of devise-two-factor might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 976317c79975d3526dea8a30d6b7ded62de0d218bc89add6db0cac627b75e057
4
- data.tar.gz: 758d0b728bdda8132be4c2f3459cce4bd61a42e548b36b34c5ee07fc8c38f4d8
3
+ metadata.gz: 787116f2d8fd1e2ef5a6e663c0a3ed5a65ca6110a491f44d2de5eb1a985da516
4
+ data.tar.gz: f379bef9da0239c3697fe14dad33ba6c662ecfd2b6bcc3ab54fb184f75a970d4
5
5
  SHA512:
6
- metadata.gz: 510c99d55da2f9c66533c968c4d7c4681a14bb81a3ba4624fb3c5f61c542ff5bf68683e5234d618a12aeb5398a2016144b8b5222b01a812e8ab6e48332b75264
7
- data.tar.gz: 7e68943b8d191f0b0b27f05f51a55b1a47ae85d487b44db22e4d74810eab29faffac01f6b9f6a8afa9c158eede9286611d2e8eafcf138f0ce0292a3cb2d4895a
6
+ metadata.gz: 23b55432e9df42fa8723db98cd38abe641656ed05ce6f5d9e5d7ee1a1179624ba7212209c460a7ff4b16d4f14347b11c69750d795e7ff9f56513e93af651c619
7
+ data.tar.gz: ce784140d65f12c6e46a51d86ed8e97edc6b98e706f276160e67f95bccf615c308a5cf273bd54ad71788b61e5dac92f9676c4e67ebfdd81c83584fa71e0bb509
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -2,6 +2,11 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 4.0.2
6
+ - Add Rails 7.0 support
7
+ - Renew signing certificate
8
+ - Use `after` option of TOTP#verify for additional timestamp verification
9
+
5
10
  ## 4.0.1
6
11
  - Convert CI from Travis CI to Github Actions ([#198](https://github.com/tinfoil/devise-two-factor/pull/198))
7
12
  - Fix ActiveSupport::Testing::TimeHelpers require in shared examples ([#191](https://github.com/tinfoil/devise-two-factor/pull/191))
@@ -21,9 +21,9 @@ Gem::Specification.new do |s|
21
21
  s.test_files = `git ls-files -- spec/*`.split("\n")
22
22
  s.require_paths = ['lib']
23
23
 
24
- s.add_runtime_dependency 'railties', '< 7.1'
25
- s.add_runtime_dependency 'activesupport', '< 7.1'
26
- s.add_runtime_dependency 'attr_encrypted', '>= 1.3', '< 4', '!= 2'
24
+ s.add_runtime_dependency 'railties', '~> 7.0'
25
+ s.add_runtime_dependency 'activesupport', '~> 7.0'
26
+ s.add_runtime_dependency 'attr_encrypted', '>= 1.3', '< 5', '!= 2'
27
27
  s.add_runtime_dependency 'devise', '~> 4.0'
28
28
  s.add_runtime_dependency 'rotp', '~> 6.0'
29
29
 
@@ -1,3 +1,3 @@
1
1
  module DeviseTwoFactor
2
- VERSION = '4.0.2'.freeze
2
+ VERSION = '4.1.1'.freeze
3
3
  end
@@ -64,15 +64,31 @@ describe ::Devise::Models::TwoFactorAuthenticatable do
64
64
 
65
65
  describe 'otp_secret options' do
66
66
  it 'should be of the key' do
67
- expect(subject.encrypted_attributes[:otp_secret][:key]).to eq('test-key'*8)
67
+ if attr_encrypted_is_rails_seven_compatible?
68
+ expect(subject.attr_encrypted_encrypted_attributes[:otp_secret][:key]).to eq('test-key'*8)
69
+ else
70
+ expect(subject.encrypted_attributes[:otp_secret][:key]).to eq('test-key'*8)
71
+ end
68
72
  end
69
73
 
70
74
  it 'should be of the mode' do
71
- expect(subject.encrypted_attributes[:otp_secret][:mode]).to eq(:per_attribute_iv_and_salt)
75
+ if attr_encrypted_is_rails_seven_compatible?
76
+ expect(subject.attr_encrypted_encrypted_attributes[:otp_secret][:mode]).to eq(:per_attribute_iv_and_salt)
77
+ else
78
+ expect(subject.encrypted_attributes[:otp_secret][:mode]).to eq(:per_attribute_iv_and_salt)
79
+ end
72
80
  end
73
81
 
74
82
  it 'should be of the mode' do
75
- expect(subject.encrypted_attributes[:otp_secret][:algorithm]).to eq('aes-256-cbc')
83
+ if attr_encrypted_is_rails_seven_compatible?
84
+ expect(subject.attr_encrypted_encrypted_attributes[:otp_secret][:algorithm]).to eq('aes-256-cbc')
85
+ else
86
+ expect(subject.encrypted_attributes[:otp_secret][:algorithm]).to eq('aes-256-cbc')
87
+ end
88
+ end
89
+
90
+ def attr_encrypted_is_rails_seven_compatible?
91
+ Gem::Version.new(AttrEncrypted::Version.string) >= Gem::Version.new('4.0.0')
76
92
  end
77
93
  end
78
94
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,11 +1,11 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devise-two-factor
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.2
4
+ version: 4.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shane Wilton
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain:
11
11
  - |
@@ -86,36 +86,36 @@ cert_chain:
86
86
  vqIDv6JBG9I16h/HhchntKfM58MI1bNZFBSdZqYOJiL8JIjP8HNIk76Y366ppG29
87
87
  EhBYYg==
88
88
  -----END CERTIFICATE-----
89
- date: 2022-03-24 00:00:00.000000000 Z
89
+ date: 2023-10-12 00:00:00.000000000 Z
90
90
  dependencies:
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: railties
93
93
  requirement: !ruby/object:Gem::Requirement
94
94
  requirements:
95
- - - "<"
95
+ - - "~>"
96
96
  - !ruby/object:Gem::Version
97
- version: '7.1'
97
+ version: '7.0'
98
98
  type: :runtime
99
99
  prerelease: false
100
100
  version_requirements: !ruby/object:Gem::Requirement
101
101
  requirements:
102
- - - "<"
102
+ - - "~>"
103
103
  - !ruby/object:Gem::Version
104
- version: '7.1'
104
+ version: '7.0'
105
105
  - !ruby/object:Gem::Dependency
106
106
  name: activesupport
107
107
  requirement: !ruby/object:Gem::Requirement
108
108
  requirements:
109
- - - "<"
109
+ - - "~>"
110
110
  - !ruby/object:Gem::Version
111
- version: '7.1'
111
+ version: '7.0'
112
112
  type: :runtime
113
113
  prerelease: false
114
114
  version_requirements: !ruby/object:Gem::Requirement
115
115
  requirements:
116
- - - "<"
116
+ - - "~>"
117
117
  - !ruby/object:Gem::Version
118
- version: '7.1'
118
+ version: '7.0'
119
119
  - !ruby/object:Gem::Dependency
120
120
  name: attr_encrypted
121
121
  requirement: !ruby/object:Gem::Requirement
@@ -123,12 +123,12 @@ dependencies:
123
123
  - - ">="
124
124
  - !ruby/object:Gem::Version
125
125
  version: '1.3'
126
- - - "<"
127
- - !ruby/object:Gem::Version
128
- version: '4'
129
126
  - - "!="
130
127
  - !ruby/object:Gem::Version
131
128
  version: '2'
129
+ - - "<"
130
+ - !ruby/object:Gem::Version
131
+ version: '5'
132
132
  type: :runtime
133
133
  prerelease: false
134
134
  version_requirements: !ruby/object:Gem::Requirement
@@ -136,12 +136,12 @@ dependencies:
136
136
  - - ">="
137
137
  - !ruby/object:Gem::Version
138
138
  version: '1.3'
139
- - - "<"
140
- - !ruby/object:Gem::Version
141
- version: '4'
142
139
  - - "!="
143
140
  - !ruby/object:Gem::Version
144
141
  version: '2'
142
+ - - "<"
143
+ - !ruby/object:Gem::Version
144
+ version: '5'
145
145
  - !ruby/object:Gem::Dependency
146
146
  name: devise
147
147
  requirement: !ruby/object:Gem::Requirement
@@ -301,7 +301,7 @@ homepage: https://github.com/tinfoil/devise-two-factor
301
301
  licenses:
302
302
  - MIT
303
303
  metadata: {}
304
- post_install_message:
304
+ post_install_message:
305
305
  rdoc_options: []
306
306
  require_paths:
307
307
  - lib
@@ -316,8 +316,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
316
316
  - !ruby/object:Gem::Version
317
317
  version: '0'
318
318
  requirements: []
319
- rubygems_version: 3.2.32
320
- signing_key:
319
+ rubygems_version: 3.0.3.1
320
+ signing_key:
321
321
  specification_version: 4
322
322
  summary: Barebones two-factor authentication with Devise
323
323
  test_files:
metadata.gz.sig CHANGED
Binary file