devise-otp 0.8.0 → 1.1.0

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.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +14 -3
  3. data/.gitignore +3 -3
  4. data/Appraisals +22 -0
  5. data/CHANGELOG.md +34 -1
  6. data/Gemfile +3 -1
  7. data/README.md +22 -7
  8. data/Rakefile +0 -11
  9. data/app/assets/stylesheets/devise-otp.css +4 -0
  10. data/app/controllers/devise_otp/devise/otp_credentials_controller.rb +4 -6
  11. data/app/controllers/devise_otp/devise/otp_tokens_controller.rb +1 -2
  12. data/config/locales/en.yml +0 -2
  13. data/devise-otp.gemspec +9 -5
  14. data/gemfiles/rails_7.1.gemfile +21 -0
  15. data/gemfiles/rails_7.2.gemfile +17 -0
  16. data/gemfiles/rails_8.0.gemfile +17 -0
  17. data/lib/devise-otp/version.rb +1 -1
  18. data/lib/devise_otp_authenticatable/controllers/helpers.rb +5 -28
  19. data/lib/devise_otp_authenticatable/hooks/refreshable.rb +3 -1
  20. data/test/dummy/app/assets/javascripts/application.js +0 -1
  21. data/test/dummy/app/assets/stylesheets/application.css +1 -0
  22. data/test/dummy/app/controllers/admin_posts_controller.rb +0 -72
  23. data/test/dummy/app/controllers/non_otp_posts_controller.rb +13 -0
  24. data/test/dummy/app/controllers/posts_controller.rb +8 -2
  25. data/test/dummy/app/models/admin.rb +1 -13
  26. data/test/dummy/app/models/non_otp_user.rb +4 -0
  27. data/test/dummy/app/models/post.rb +1 -1
  28. data/test/dummy/app/models/user.rb +1 -13
  29. data/test/dummy/app/views/admin_posts/index.html.erb +0 -7
  30. data/test/dummy/app/views/layouts/application.html.erb +7 -1
  31. data/test/dummy/app/views/non_otp_posts/index.html.erb +18 -0
  32. data/test/dummy/config/application.rb +0 -7
  33. data/test/dummy/config/database.yml +20 -13
  34. data/test/dummy/config/routes.rb +2 -0
  35. data/test/dummy/db/migrate/20240604000001_create_admins.rb +1 -1
  36. data/test/dummy/db/migrate/20250718092451_create_non_otp_users.rb +9 -0
  37. data/test/dummy/db/migrate/20250718092536_add_devise_to_non_otp_users.rb +52 -0
  38. data/test/dummy/db/schema.rb +118 -0
  39. data/test/dummy/db/seeds.rb +24 -0
  40. data/test/integration/disable_token_test.rb +3 -0
  41. data/test/integration/enable_otp_form_test.rb +17 -0
  42. data/test/integration/non_otp_user_models_test.rb +21 -0
  43. data/test/integration/persistence_test.rb +3 -0
  44. data/test/integration/refresh_test.rb +9 -0
  45. data/test/integration/reset_token_test.rb +3 -0
  46. data/test/integration/sign_in_test.rb +30 -0
  47. data/test/integration_tests_helper.rb +11 -0
  48. data/test/test_helper.rb +0 -5
  49. metadata +39 -23
  50. data/app/assets/javascripts/devise-otp.js +0 -1
  51. data/app/assets/javascripts/qrcode.js +0 -609
  52. data/docs/QR_CODES.md +0 -9
  53. data/test/dummy/app/views/admin_posts/_form.html.erb +0 -25
  54. data/test/dummy/app/views/admin_posts/edit.html.erb +0 -6
  55. data/test/dummy/app/views/admin_posts/new.html.erb +0 -5
  56. data/test/dummy/app/views/admin_posts/show.html.erb +0 -15
  57. data/test/orm/active_record.rb +0 -11
metadata CHANGED
@@ -1,15 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: devise-otp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lele Forzani
8
8
  - Josef Strzibny
9
+ - Laney Stroup
9
10
  autorequire:
10
11
  bindir: bin
11
12
  cert_chain: []
12
- date: 2024-09-04 00:00:00.000000000 Z
13
+ date: 2025-07-20 00:00:00.000000000 Z
13
14
  dependencies:
14
15
  - !ruby/object:Gem::Dependency
15
16
  name: rails
@@ -17,20 +18,14 @@ dependencies:
17
18
  requirements:
18
19
  - - ">="
19
20
  - !ruby/object:Gem::Version
20
- version: '7.0'
21
- - - "<"
22
- - !ruby/object:Gem::Version
23
- version: '8.0'
21
+ version: '7.1'
24
22
  type: :runtime
25
23
  prerelease: false
26
24
  version_requirements: !ruby/object:Gem::Requirement
27
25
  requirements:
28
26
  - - ">="
29
27
  - !ruby/object:Gem::Version
30
- version: '7.0'
31
- - - "<"
32
- - !ruby/object:Gem::Version
33
- version: '8.0'
28
+ version: '7.1'
34
29
  - !ruby/object:Gem::Dependency
35
30
  name: devise
36
31
  requirement: !ruby/object:Gem::Requirement
@@ -65,23 +60,38 @@ dependencies:
65
60
  - - ">="
66
61
  - !ruby/object:Gem::Version
67
62
  version: 2.0.0
68
- description: Time Based OTP/rfc6238 compatible authentication for Devise
63
+ - !ruby/object:Gem::Dependency
64
+ name: rqrcode
65
+ requirement: !ruby/object:Gem::Requirement
66
+ requirements:
67
+ - - "~>"
68
+ - !ruby/object:Gem::Version
69
+ version: '2.0'
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - "~>"
75
+ - !ruby/object:Gem::Version
76
+ version: '2.0'
77
+ description: OTP authentication for Devise
69
78
  email:
70
79
  - lele@windmill.it
71
80
  - strzibny@strzibny.name
81
+ - laney@stroupsolutions.com
72
82
  executables: []
73
83
  extensions: []
74
84
  extra_rdoc_files: []
75
85
  files:
76
86
  - ".github/workflows/ci.yml"
77
87
  - ".gitignore"
88
+ - Appraisals
78
89
  - CHANGELOG.md
79
90
  - Gemfile
80
91
  - LICENSE.txt
81
92
  - README.md
82
93
  - Rakefile
83
- - app/assets/javascripts/devise-otp.js
84
- - app/assets/javascripts/qrcode.js
94
+ - app/assets/stylesheets/devise-otp.css
85
95
  - app/controllers/devise_otp/devise/otp_credentials_controller.rb
86
96
  - app/controllers/devise_otp/devise/otp_tokens_controller.rb
87
97
  - app/views/devise/otp_credentials/refresh.html.erb
@@ -94,7 +104,9 @@ files:
94
104
  - app/views/devise/otp_tokens/show.html.erb
95
105
  - config/locales/en.yml
96
106
  - devise-otp.gemspec
97
- - docs/QR_CODES.md
107
+ - gemfiles/rails_7.1.gemfile
108
+ - gemfiles/rails_7.2.gemfile
109
+ - gemfiles/rails_8.0.gemfile
98
110
  - lib/devise-otp.rb
99
111
  - lib/devise-otp/version.rb
100
112
  - lib/devise/strategies/database_authenticatable.rb
@@ -118,20 +130,19 @@ files:
118
130
  - test/dummy/app/controllers/admin_posts_controller.rb
119
131
  - test/dummy/app/controllers/application_controller.rb
120
132
  - test/dummy/app/controllers/base_controller.rb
133
+ - test/dummy/app/controllers/non_otp_posts_controller.rb
121
134
  - test/dummy/app/controllers/posts_controller.rb
122
135
  - test/dummy/app/helpers/application_helper.rb
123
136
  - test/dummy/app/helpers/posts_helper.rb
124
137
  - test/dummy/app/mailers/.gitkeep
125
138
  - test/dummy/app/models/admin.rb
139
+ - test/dummy/app/models/non_otp_user.rb
126
140
  - test/dummy/app/models/post.rb
127
141
  - test/dummy/app/models/user.rb
128
- - test/dummy/app/views/admin_posts/_form.html.erb
129
- - test/dummy/app/views/admin_posts/edit.html.erb
130
142
  - test/dummy/app/views/admin_posts/index.html.erb
131
- - test/dummy/app/views/admin_posts/new.html.erb
132
- - test/dummy/app/views/admin_posts/show.html.erb
133
143
  - test/dummy/app/views/base/home.html.erb
134
144
  - test/dummy/app/views/layouts/application.html.erb
145
+ - test/dummy/app/views/non_otp_posts/index.html.erb
135
146
  - test/dummy/app/views/posts/_form.html.erb
136
147
  - test/dummy/app/views/posts/edit.html.erb
137
148
  - test/dummy/app/views/posts/index.html.erb
@@ -161,6 +172,10 @@ files:
161
172
  - test/dummy/db/migrate/20240604000001_create_admins.rb
162
173
  - test/dummy/db/migrate/20240604000002_add_devise_to_admins.rb
163
174
  - test/dummy/db/migrate/20240604000003_devise_otp_add_to_admins.rb
175
+ - test/dummy/db/migrate/20250718092451_create_non_otp_users.rb
176
+ - test/dummy/db/migrate/20250718092536_add_devise_to_non_otp_users.rb
177
+ - test/dummy/db/schema.rb
178
+ - test/dummy/db/seeds.rb
164
179
  - test/dummy/lib/assets/.gitkeep
165
180
  - test/dummy/public/404.html
166
181
  - test/dummy/public/422.html
@@ -169,6 +184,7 @@ files:
169
184
  - test/dummy/script/rails
170
185
  - test/integration/disable_token_test.rb
171
186
  - test/integration/enable_otp_form_test.rb
187
+ - test/integration/non_otp_user_models_test.rb
172
188
  - test/integration/persistence_test.rb
173
189
  - test/integration/refresh_test.rb
174
190
  - test/integration/reset_token_test.rb
@@ -177,10 +193,10 @@ files:
177
193
  - test/integration_tests_helper.rb
178
194
  - test/model_tests_helper.rb
179
195
  - test/models/otp_authenticatable_test.rb
180
- - test/orm/active_record.rb
181
196
  - test/test_helper.rb
182
- homepage: http://git.windmill.it/wm/devise-otp
183
- licenses: []
197
+ homepage: https://github.com/wmlele/devise-otp
198
+ licenses:
199
+ - MIT
184
200
  metadata: {}
185
201
  post_install_message:
186
202
  rdoc_options: []
@@ -190,14 +206,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
190
206
  requirements:
191
207
  - - ">="
192
208
  - !ruby/object:Gem::Version
193
- version: '0'
209
+ version: 3.2.0
194
210
  required_rubygems_version: !ruby/object:Gem::Requirement
195
211
  requirements:
196
212
  - - ">="
197
213
  - !ruby/object:Gem::Version
198
214
  version: '0'
199
215
  requirements: []
200
- rubygems_version: 3.3.7
216
+ rubygems_version: 3.5.22
201
217
  signing_key:
202
218
  specification_version: 4
203
219
  summary: Time Based OTP/rfc6238 compatible authentication for Devise
@@ -1 +0,0 @@
1
- //= require_tree .