devise-multi_email 3.0.0 → 3.1.5

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 (263) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +17 -0
  3. data/.github/workflows/ruby_spec.yml +41 -0
  4. data/.gitignore +5 -0
  5. data/.travis.yml +8 -1
  6. data/CHANGELOG.md +3 -0
  7. data/Gemfile +1 -2
  8. data/README.md +9 -9
  9. data/devise-multi-email.code-workspace +8 -0
  10. data/devise-multi_email.gemspec +14 -13
  11. data/examples/{rails5_app → rails7_app}/Gemfile +5 -5
  12. data/examples/rails7_app/Gemfile.lock +442 -0
  13. data/examples/rails8_0_app/.gitignore +21 -0
  14. data/examples/rails8_0_app/Gemfile +55 -0
  15. data/examples/rails8_0_app/Gemfile.lock +442 -0
  16. data/examples/rails8_0_app/README.md +24 -0
  17. data/examples/rails8_0_app/Rakefile +6 -0
  18. data/examples/rails8_0_app/app/assets/config/manifest.js +3 -0
  19. data/examples/rails8_0_app/app/assets/images/.keep +0 -0
  20. data/examples/rails8_0_app/app/assets/javascripts/application.js +16 -0
  21. data/examples/rails8_0_app/app/assets/javascripts/cable.js +13 -0
  22. data/examples/rails8_0_app/app/assets/javascripts/channels/.keep +0 -0
  23. data/examples/rails8_0_app/app/assets/stylesheets/application.css +15 -0
  24. data/examples/rails8_0_app/app/channels/application_cable/channel.rb +4 -0
  25. data/examples/rails8_0_app/app/channels/application_cable/connection.rb +4 -0
  26. data/examples/rails8_0_app/app/controllers/application_controller.rb +3 -0
  27. data/examples/rails8_0_app/app/controllers/concerns/.keep +0 -0
  28. data/examples/rails8_0_app/app/helpers/application_helper.rb +2 -0
  29. data/examples/rails8_0_app/app/jobs/application_job.rb +2 -0
  30. data/examples/rails8_0_app/app/mailers/application_mailer.rb +4 -0
  31. data/examples/rails8_0_app/app/models/application_record.rb +3 -0
  32. data/examples/rails8_0_app/app/models/concerns/.keep +0 -0
  33. data/examples/rails8_0_app/app/models/email.rb +5 -0
  34. data/examples/rails8_0_app/app/models/user.rb +9 -0
  35. data/examples/rails8_0_app/app/views/layouts/application.html.erb +14 -0
  36. data/examples/rails8_0_app/app/views/layouts/mailer.html.erb +13 -0
  37. data/examples/rails8_0_app/app/views/layouts/mailer.text.erb +1 -0
  38. data/examples/rails8_0_app/bin/bundle +3 -0
  39. data/examples/rails8_0_app/bin/rails +4 -0
  40. data/examples/rails8_0_app/bin/rake +4 -0
  41. data/examples/rails8_0_app/bin/setup +34 -0
  42. data/examples/rails8_0_app/bin/update +29 -0
  43. data/examples/rails8_0_app/config/application.rb +15 -0
  44. data/examples/rails8_0_app/config/boot.rb +3 -0
  45. data/examples/rails8_0_app/config/cable.yml +9 -0
  46. data/examples/rails8_0_app/config/database.yml +25 -0
  47. data/examples/rails8_0_app/config/environment.rb +5 -0
  48. data/examples/rails8_0_app/config/environments/development.rb +56 -0
  49. data/examples/rails8_0_app/config/environments/production.rb +86 -0
  50. data/examples/rails8_0_app/config/environments/test.rb +42 -0
  51. data/examples/rails8_0_app/config/initializers/application_controller_renderer.rb +6 -0
  52. data/examples/rails8_0_app/config/initializers/assets.rb +11 -0
  53. data/examples/rails8_0_app/config/initializers/backtrace_silencers.rb +7 -0
  54. data/examples/rails8_0_app/config/initializers/cookies_serializer.rb +5 -0
  55. data/examples/rails8_0_app/config/initializers/devise.rb +274 -0
  56. data/examples/rails8_0_app/config/initializers/filter_parameter_logging.rb +4 -0
  57. data/examples/rails8_0_app/config/initializers/inflections.rb +16 -0
  58. data/examples/rails8_0_app/config/initializers/mime_types.rb +4 -0
  59. data/examples/rails8_0_app/config/initializers/new_framework_defaults.rb +24 -0
  60. data/examples/rails8_0_app/config/initializers/session_store.rb +3 -0
  61. data/examples/rails8_0_app/config/initializers/wrap_parameters.rb +14 -0
  62. data/examples/rails8_0_app/config/locales/devise.en.yml +62 -0
  63. data/examples/rails8_0_app/config/locales/en.yml +23 -0
  64. data/examples/rails8_0_app/config/puma.rb +47 -0
  65. data/examples/rails8_0_app/config/routes.rb +4 -0
  66. data/examples/rails8_0_app/config/secrets.yml +22 -0
  67. data/examples/rails8_0_app/config/spring.rb +6 -0
  68. data/examples/rails8_0_app/config.ru +5 -0
  69. data/examples/rails8_0_app/db/migrate/20170307140813_devise_create_users.rb +49 -0
  70. data/examples/rails8_0_app/db/migrate/20170307145547_add_password_salt_to_users.rb +5 -0
  71. data/examples/rails8_0_app/db/schema.rb +44 -0
  72. data/examples/rails8_0_app/db/seeds.rb +7 -0
  73. data/examples/rails8_0_app/lib/assets/.keep +0 -0
  74. data/examples/rails8_0_app/lib/tasks/.keep +0 -0
  75. data/examples/rails8_0_app/log/.keep +0 -0
  76. data/examples/rails8_0_app/public/404.html +67 -0
  77. data/examples/rails8_0_app/public/422.html +67 -0
  78. data/examples/rails8_0_app/public/500.html +66 -0
  79. data/examples/rails8_0_app/public/apple-touch-icon-precomposed.png +0 -0
  80. data/examples/rails8_0_app/public/apple-touch-icon.png +0 -0
  81. data/examples/rails8_0_app/public/favicon.ico +0 -0
  82. data/examples/rails8_0_app/public/robots.txt +5 -0
  83. data/examples/rails8_0_app/test/controllers/.keep +0 -0
  84. data/examples/rails8_0_app/test/fixtures/.keep +0 -0
  85. data/examples/rails8_0_app/test/fixtures/files/.keep +0 -0
  86. data/examples/rails8_0_app/test/helpers/.keep +0 -0
  87. data/examples/rails8_0_app/test/integration/.keep +0 -0
  88. data/examples/rails8_0_app/test/mailers/.keep +0 -0
  89. data/examples/rails8_0_app/test/models/.keep +0 -0
  90. data/examples/rails8_0_app/test/test_helper.rb +10 -0
  91. data/examples/rails8_0_app/tmp/.keep +0 -0
  92. data/examples/rails8_0_app/vendor/assets/javascripts/.keep +0 -0
  93. data/examples/rails8_0_app/vendor/assets/stylesheets/.keep +0 -0
  94. data/examples/rails8_1_app/.gitignore +21 -0
  95. data/examples/rails8_1_app/Gemfile +55 -0
  96. data/examples/rails8_1_app/Gemfile.lock +442 -0
  97. data/examples/rails8_1_app/README.md +24 -0
  98. data/examples/rails8_1_app/Rakefile +6 -0
  99. data/examples/rails8_1_app/app/assets/config/manifest.js +3 -0
  100. data/examples/rails8_1_app/app/assets/images/.keep +0 -0
  101. data/examples/rails8_1_app/app/assets/javascripts/application.js +16 -0
  102. data/examples/rails8_1_app/app/assets/javascripts/cable.js +13 -0
  103. data/examples/rails8_1_app/app/assets/javascripts/channels/.keep +0 -0
  104. data/examples/rails8_1_app/app/assets/stylesheets/application.css +15 -0
  105. data/examples/rails8_1_app/app/channels/application_cable/channel.rb +4 -0
  106. data/examples/rails8_1_app/app/channels/application_cable/connection.rb +4 -0
  107. data/examples/rails8_1_app/app/controllers/application_controller.rb +3 -0
  108. data/examples/rails8_1_app/app/controllers/concerns/.keep +0 -0
  109. data/examples/rails8_1_app/app/helpers/application_helper.rb +2 -0
  110. data/examples/rails8_1_app/app/jobs/application_job.rb +2 -0
  111. data/examples/rails8_1_app/app/mailers/application_mailer.rb +4 -0
  112. data/examples/rails8_1_app/app/models/application_record.rb +3 -0
  113. data/examples/rails8_1_app/app/models/concerns/.keep +0 -0
  114. data/examples/rails8_1_app/app/models/email.rb +5 -0
  115. data/examples/rails8_1_app/app/models/user.rb +9 -0
  116. data/examples/rails8_1_app/app/views/layouts/application.html.erb +14 -0
  117. data/examples/rails8_1_app/app/views/layouts/mailer.html.erb +13 -0
  118. data/examples/rails8_1_app/app/views/layouts/mailer.text.erb +1 -0
  119. data/examples/rails8_1_app/bin/bundle +3 -0
  120. data/examples/rails8_1_app/bin/rails +4 -0
  121. data/examples/rails8_1_app/bin/rake +4 -0
  122. data/examples/rails8_1_app/bin/setup +34 -0
  123. data/examples/rails8_1_app/bin/update +29 -0
  124. data/examples/rails8_1_app/config/application.rb +15 -0
  125. data/examples/rails8_1_app/config/boot.rb +3 -0
  126. data/examples/rails8_1_app/config/cable.yml +9 -0
  127. data/examples/rails8_1_app/config/database.yml +25 -0
  128. data/examples/rails8_1_app/config/environment.rb +5 -0
  129. data/examples/rails8_1_app/config/environments/development.rb +56 -0
  130. data/examples/rails8_1_app/config/environments/production.rb +86 -0
  131. data/examples/rails8_1_app/config/environments/test.rb +42 -0
  132. data/examples/rails8_1_app/config/initializers/application_controller_renderer.rb +6 -0
  133. data/examples/rails8_1_app/config/initializers/assets.rb +11 -0
  134. data/examples/rails8_1_app/config/initializers/backtrace_silencers.rb +7 -0
  135. data/examples/rails8_1_app/config/initializers/cookies_serializer.rb +5 -0
  136. data/examples/rails8_1_app/config/initializers/devise.rb +274 -0
  137. data/examples/rails8_1_app/config/initializers/filter_parameter_logging.rb +4 -0
  138. data/examples/rails8_1_app/config/initializers/inflections.rb +16 -0
  139. data/examples/rails8_1_app/config/initializers/mime_types.rb +4 -0
  140. data/examples/rails8_1_app/config/initializers/new_framework_defaults.rb +24 -0
  141. data/examples/rails8_1_app/config/initializers/session_store.rb +3 -0
  142. data/examples/rails8_1_app/config/initializers/wrap_parameters.rb +14 -0
  143. data/examples/rails8_1_app/config/locales/devise.en.yml +62 -0
  144. data/examples/rails8_1_app/config/locales/en.yml +23 -0
  145. data/examples/rails8_1_app/config/puma.rb +47 -0
  146. data/examples/rails8_1_app/config/routes.rb +4 -0
  147. data/examples/rails8_1_app/config/secrets.yml +22 -0
  148. data/examples/rails8_1_app/config/spring.rb +6 -0
  149. data/examples/rails8_1_app/config.ru +5 -0
  150. data/examples/rails8_1_app/db/migrate/20170307140813_devise_create_users.rb +49 -0
  151. data/examples/rails8_1_app/db/migrate/20170307145547_add_password_salt_to_users.rb +5 -0
  152. data/examples/rails8_1_app/db/schema.rb +44 -0
  153. data/examples/rails8_1_app/db/seeds.rb +7 -0
  154. data/examples/rails8_1_app/lib/assets/.keep +0 -0
  155. data/examples/rails8_1_app/lib/tasks/.keep +0 -0
  156. data/examples/rails8_1_app/log/.keep +0 -0
  157. data/examples/rails8_1_app/public/404.html +67 -0
  158. data/examples/rails8_1_app/public/422.html +67 -0
  159. data/examples/rails8_1_app/public/500.html +66 -0
  160. data/examples/rails8_1_app/public/apple-touch-icon-precomposed.png +0 -0
  161. data/examples/rails8_1_app/public/apple-touch-icon.png +0 -0
  162. data/examples/rails8_1_app/public/favicon.ico +0 -0
  163. data/examples/rails8_1_app/public/robots.txt +5 -0
  164. data/examples/rails8_1_app/test/controllers/.keep +0 -0
  165. data/examples/rails8_1_app/test/fixtures/.keep +0 -0
  166. data/examples/rails8_1_app/test/fixtures/files/.keep +0 -0
  167. data/examples/rails8_1_app/test/helpers/.keep +0 -0
  168. data/examples/rails8_1_app/test/integration/.keep +0 -0
  169. data/examples/rails8_1_app/test/mailers/.keep +0 -0
  170. data/examples/rails8_1_app/test/models/.keep +0 -0
  171. data/examples/rails8_1_app/test/test_helper.rb +10 -0
  172. data/examples/rails8_1_app/tmp/.keep +0 -0
  173. data/examples/rails8_1_app/vendor/assets/javascripts/.keep +0 -0
  174. data/examples/rails8_1_app/vendor/assets/stylesheets/.keep +0 -0
  175. data/gemfiles/{rails_5_1.gemfile → rails_7_0.gemfile} +1 -1
  176. data/gemfiles/{rails_4_2.gemfile → rails_8_0.gemfile} +1 -1
  177. data/lib/devise/multi_email/models/confirmable.rb +6 -1
  178. data/lib/devise/multi_email/models/validatable.rb +7 -8
  179. data/lib/devise/multi_email/version.rb +1 -1
  180. data/mise.toml +2 -0
  181. metadata +288 -126
  182. data/examples/rails5_app/Gemfile.lock +0 -189
  183. data/gemfiles/rails_5_0.gemfile +0 -6
  184. data/gemfiles/rails_5_2.gemfile +0 -5
  185. /data/examples/{rails5_app → rails7_app}/.gitignore +0 -0
  186. /data/examples/{rails5_app → rails7_app}/README.md +0 -0
  187. /data/examples/{rails5_app → rails7_app}/Rakefile +0 -0
  188. /data/examples/{rails5_app → rails7_app}/app/assets/config/manifest.js +0 -0
  189. /data/examples/{rails5_app → rails7_app}/app/assets/images/.keep +0 -0
  190. /data/examples/{rails5_app → rails7_app}/app/assets/javascripts/application.js +0 -0
  191. /data/examples/{rails5_app → rails7_app}/app/assets/javascripts/cable.js +0 -0
  192. /data/examples/{rails5_app → rails7_app}/app/assets/javascripts/channels/.keep +0 -0
  193. /data/examples/{rails5_app → rails7_app}/app/assets/stylesheets/application.css +0 -0
  194. /data/examples/{rails5_app → rails7_app}/app/channels/application_cable/channel.rb +0 -0
  195. /data/examples/{rails5_app → rails7_app}/app/channels/application_cable/connection.rb +0 -0
  196. /data/examples/{rails5_app → rails7_app}/app/controllers/application_controller.rb +0 -0
  197. /data/examples/{rails5_app → rails7_app}/app/controllers/concerns/.keep +0 -0
  198. /data/examples/{rails5_app → rails7_app}/app/helpers/application_helper.rb +0 -0
  199. /data/examples/{rails5_app → rails7_app}/app/jobs/application_job.rb +0 -0
  200. /data/examples/{rails5_app → rails7_app}/app/mailers/application_mailer.rb +0 -0
  201. /data/examples/{rails5_app → rails7_app}/app/models/application_record.rb +0 -0
  202. /data/examples/{rails5_app → rails7_app}/app/models/concerns/.keep +0 -0
  203. /data/examples/{rails5_app → rails7_app}/app/models/email.rb +0 -0
  204. /data/examples/{rails5_app → rails7_app}/app/models/user.rb +0 -0
  205. /data/examples/{rails5_app → rails7_app}/app/views/layouts/application.html.erb +0 -0
  206. /data/examples/{rails5_app → rails7_app}/app/views/layouts/mailer.html.erb +0 -0
  207. /data/examples/{rails5_app → rails7_app}/app/views/layouts/mailer.text.erb +0 -0
  208. /data/examples/{rails5_app → rails7_app}/bin/bundle +0 -0
  209. /data/examples/{rails5_app → rails7_app}/bin/rails +0 -0
  210. /data/examples/{rails5_app → rails7_app}/bin/rake +0 -0
  211. /data/examples/{rails5_app → rails7_app}/bin/setup +0 -0
  212. /data/examples/{rails5_app → rails7_app}/bin/update +0 -0
  213. /data/examples/{rails5_app → rails7_app}/config/application.rb +0 -0
  214. /data/examples/{rails5_app → rails7_app}/config/boot.rb +0 -0
  215. /data/examples/{rails5_app → rails7_app}/config/cable.yml +0 -0
  216. /data/examples/{rails5_app → rails7_app}/config/database.yml +0 -0
  217. /data/examples/{rails5_app → rails7_app}/config/environment.rb +0 -0
  218. /data/examples/{rails5_app → rails7_app}/config/environments/development.rb +0 -0
  219. /data/examples/{rails5_app → rails7_app}/config/environments/production.rb +0 -0
  220. /data/examples/{rails5_app → rails7_app}/config/environments/test.rb +0 -0
  221. /data/examples/{rails5_app → rails7_app}/config/initializers/application_controller_renderer.rb +0 -0
  222. /data/examples/{rails5_app → rails7_app}/config/initializers/assets.rb +0 -0
  223. /data/examples/{rails5_app → rails7_app}/config/initializers/backtrace_silencers.rb +0 -0
  224. /data/examples/{rails5_app → rails7_app}/config/initializers/cookies_serializer.rb +0 -0
  225. /data/examples/{rails5_app → rails7_app}/config/initializers/devise.rb +0 -0
  226. /data/examples/{rails5_app → rails7_app}/config/initializers/filter_parameter_logging.rb +0 -0
  227. /data/examples/{rails5_app → rails7_app}/config/initializers/inflections.rb +0 -0
  228. /data/examples/{rails5_app → rails7_app}/config/initializers/mime_types.rb +0 -0
  229. /data/examples/{rails5_app → rails7_app}/config/initializers/new_framework_defaults.rb +0 -0
  230. /data/examples/{rails5_app → rails7_app}/config/initializers/session_store.rb +0 -0
  231. /data/examples/{rails5_app → rails7_app}/config/initializers/wrap_parameters.rb +0 -0
  232. /data/examples/{rails5_app → rails7_app}/config/locales/devise.en.yml +0 -0
  233. /data/examples/{rails5_app → rails7_app}/config/locales/en.yml +0 -0
  234. /data/examples/{rails5_app → rails7_app}/config/puma.rb +0 -0
  235. /data/examples/{rails5_app → rails7_app}/config/routes.rb +0 -0
  236. /data/examples/{rails5_app → rails7_app}/config/secrets.yml +0 -0
  237. /data/examples/{rails5_app → rails7_app}/config/spring.rb +0 -0
  238. /data/examples/{rails5_app → rails7_app}/config.ru +0 -0
  239. /data/examples/{rails5_app → rails7_app}/db/migrate/20170307140813_devise_create_users.rb +0 -0
  240. /data/examples/{rails5_app → rails7_app}/db/migrate/20170307145547_add_password_salt_to_users.rb +0 -0
  241. /data/examples/{rails5_app → rails7_app}/db/schema.rb +0 -0
  242. /data/examples/{rails5_app → rails7_app}/db/seeds.rb +0 -0
  243. /data/examples/{rails5_app → rails7_app}/lib/assets/.keep +0 -0
  244. /data/examples/{rails5_app → rails7_app}/lib/tasks/.keep +0 -0
  245. /data/examples/{rails5_app → rails7_app}/log/.keep +0 -0
  246. /data/examples/{rails5_app → rails7_app}/public/404.html +0 -0
  247. /data/examples/{rails5_app → rails7_app}/public/422.html +0 -0
  248. /data/examples/{rails5_app → rails7_app}/public/500.html +0 -0
  249. /data/examples/{rails5_app → rails7_app}/public/apple-touch-icon-precomposed.png +0 -0
  250. /data/examples/{rails5_app → rails7_app}/public/apple-touch-icon.png +0 -0
  251. /data/examples/{rails5_app → rails7_app}/public/favicon.ico +0 -0
  252. /data/examples/{rails5_app → rails7_app}/public/robots.txt +0 -0
  253. /data/examples/{rails5_app → rails7_app}/test/controllers/.keep +0 -0
  254. /data/examples/{rails5_app → rails7_app}/test/fixtures/.keep +0 -0
  255. /data/examples/{rails5_app → rails7_app}/test/fixtures/files/.keep +0 -0
  256. /data/examples/{rails5_app → rails7_app}/test/helpers/.keep +0 -0
  257. /data/examples/{rails5_app → rails7_app}/test/integration/.keep +0 -0
  258. /data/examples/{rails5_app → rails7_app}/test/mailers/.keep +0 -0
  259. /data/examples/{rails5_app → rails7_app}/test/models/.keep +0 -0
  260. /data/examples/{rails5_app → rails7_app}/test/test_helper.rb +0 -0
  261. /data/examples/{rails5_app → rails7_app}/tmp/.keep +0 -0
  262. /data/examples/{rails5_app → rails7_app}/vendor/assets/javascripts/.keep +0 -0
  263. /data/examples/{rails5_app → rails7_app}/vendor/assets/stylesheets/.keep +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e1f6c20540e06ef03d433a86d14ee5f7300b94146a1b9019b2c81a88edc72925
4
- data.tar.gz: 3e14cce59ae14f024bba1213c11b91bf90f839cfe0c01ed4f9fcf0bbdbdd1e12
3
+ metadata.gz: c394efaff65c8f809f5928486d36529350e0c8ce11ade1305713767c540233c5
4
+ data.tar.gz: f9fb103bcd1e175677b2201de90e4c7cd1cff17fa6bdf6b959870fcbe38134a6
5
5
  SHA512:
6
- metadata.gz: 3595bdad371be1ca01a2fc6563b8aaba6da01e9c8bca8cf7bec9933d5fb58a8b045cf7b2cddd3440aa7dd623cd64e1d11cc53d8bce1e874d14bed0f54cc39fdd
7
- data.tar.gz: 7b75589a85f83282eacdaf95911ac75572e0bc2336fe8f1bcf46e700cab71ffdeb470d36a59c5db55ed132ee6f07449ba57d5a11d4f2efb455c749f127eeb8d3
6
+ metadata.gz: 1292c698e3da57bbd0aad9dbba295853836dbe309e7ce6bb85d043bed1a17aa746cc586d50a692aea705f0027c99539c1c25977f5f0f411597a68b803898451a
7
+ data.tar.gz: 50d699bdd938bea0eb326e25e90beeeeb8e665c7a0b5d7f7c06cab074e93acabea901afa1388898b2dc6809fb97b5e223b5d831c72946c7af11df003048e11d3
@@ -0,0 +1,17 @@
1
+ # To get started with Dependabot version updates, you'll need to specify which
2
+ # package ecosystems to update and where the package manifests are located.
3
+ # Please see the documentation for all configuration options:
4
+ # https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
5
+
6
+ version: 2
7
+ updates:
8
+ - package-ecosystem: "bundler" # See documentation for possible values
9
+ directories: # Location of package manifests
10
+ - "/examples/rails7_app"
11
+ - "/examples/rails8_0_app"
12
+ - "/examples/rails8_1_app"
13
+ - "/gemfiles/"
14
+ schedule:
15
+ interval: "weekly"
16
+ open-pull-requests-limit: 5
17
+ target-branch: "master"
@@ -0,0 +1,41 @@
1
+ # This workflow uses actions that are not certified by GitHub.
2
+ # They are provided by a third-party and are governed by
3
+ # separate terms of service, privacy policy, and support
4
+ # documentation.
5
+ # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
6
+ # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
7
+
8
+ name: rspec tests
9
+
10
+ on:
11
+ push:
12
+ branches: [ "master" ]
13
+ pull_request:
14
+ branches: [ "master" ]
15
+
16
+ permissions:
17
+ contents: read
18
+
19
+ jobs:
20
+ test:
21
+
22
+ runs-on: ubuntu-22.04
23
+ strategy:
24
+ matrix:
25
+ ruby-version: ['3.0.6','3.1.4','3.2.2' ]
26
+
27
+ environment: test
28
+ steps:
29
+ - uses: actions/checkout@v4
30
+ - name: Set up Ruby
31
+ # To automatically get bug fixes and new Ruby versions for ruby/setup-ruby,
32
+ # change this to (see https://github.com/ruby/setup-ruby#versioning):
33
+ # uses: ruby/setup-ruby@v1
34
+ uses: ruby/setup-ruby@55283cc23133118229fd3f97f9336ee23a179fcf # v1.146.0
35
+ with:
36
+ ruby-version: ${{ matrix.ruby-version }}
37
+ bundler-cache: true # runs 'bundle install' and caches installed gems automatically
38
+ - name: Run tests
39
+ run: bundle exec rspec
40
+ env:
41
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
data/.gitignore CHANGED
@@ -10,3 +10,8 @@
10
10
  /spec/rails_app/log/*
11
11
  /.ruby-version
12
12
  /.idea/
13
+ /gemfiles/*gemfile.lock
14
+ **/*.DS_Store
15
+ **/*.swp
16
+ *.gem
17
+ .rake_tasks
data/.travis.yml CHANGED
@@ -1,4 +1,5 @@
1
1
  language: ruby
2
+
2
3
  rvm:
3
4
  - 2.4
4
5
  - 2.5
@@ -6,4 +7,10 @@ rvm:
6
7
  gemfile:
7
8
  - gemfiles/rails_5_2.gemfile
8
9
  - gemfiles/rails_5_1.gemfile
9
- before_install: gem install bundler
10
+ - gemfiles/rails_6_0.gemfile
11
+
12
+ jobs:
13
+ exclude:
14
+ - rvm: 2.4
15
+ gemfile: gemfiles/rails_6_0.gemfile
16
+
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ### Unreleased
2
+ * Fix ActiveModel::Errors#keys deprecation in Rails 6.1
3
+
1
4
  ### 3.0.0 - 2019-11-06
2
5
  * Deprecate the support of Rails 4 (although it might still work)
3
6
  * Fix warnings in Rails 6
data/Gemfile CHANGED
@@ -2,6 +2,5 @@ source 'https://rubygems.org'
2
2
 
3
3
  gem 'rails'
4
4
 
5
- # Specify your gem's dependencies in devise-multi_email.gemspec
5
+ # Specify your gem's dependencies in devise-multi-email.gemspec
6
6
  gemspec
7
-
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Devise::MultiEmail [![Build Status](https://travis-ci.org/allenwq/devise-multi_email.svg?branch=master)](https://travis-ci.org/allenwq/devise-multi_email) [![Coverage Status](https://coveralls.io/repos/allenwq/devise-multi_email/badge.svg?branch=master&service=github)](https://coveralls.io/github/allenwq/devise-multi_email?branch=master)
1
+ # Devise::MultiEmail [![Build Tests](https://github.com/mgmodell/devise-multi_email/actions/workflows/ruby_spec.yml/badge.svg)](https://github.com/mgmodell/devise-multi_email/actions/workflows/ruby_spec.yml) [![Coverage # Status](https://coveralls.io/repos/mgmodell/devise-multi_email/badge.svg?branch=master&service=github)](https://coveralls.io/github/mgmodell/devise-multi_email?branch=master) [![Dependabot Updates](https://github.com/mgmodell/devise-multi_email/actions/workflows/dependabot/dependabot-updates/badge.svg)](https://github.com/mgmodell/devise-multi_email/actions/workflows/dependabot/dependabot-updates)
2
2
 
3
3
  Letting [Devise](https://github.com/plataformatec/devise) support multiple emails, allows you to:
4
4
  - Login with multiple emails
@@ -6,14 +6,14 @@ Letting [Devise](https://github.com/plataformatec/devise) support multiple email
6
6
  - Recover the password with any of the emails
7
7
  - Validations for multiple emails
8
8
 
9
- `:multi_email_authenticatable`, `:multi_email_confirmable` and `:multi_email_validatable` are provided by _devise-multi_email_.
9
+ `:multi_email_authenticatable`, `:multi_email_confirmable` and `:multi_email_validatable` are provided by _devise-multi-email_.
10
10
 
11
11
  ## Getting Started
12
12
 
13
- Add this line to your application's `Gemfile`, _devise-multi_email_ has been tested with Devise 4.0 and rails 4.2:
13
+ Add this line to your application's `Gemfile`:
14
14
 
15
15
  ```ruby
16
- gem 'devise-multi_email'
16
+ gem 'devise-multi_email`
17
17
  ```
18
18
 
19
19
  Suppose you have already setup Devise, your `User` model might look like this:
@@ -24,7 +24,7 @@ class User < ActiveRecord::Base
24
24
  end
25
25
  ```
26
26
 
27
- In order to let your `User` support multiple emails, with _devise-multi_email_ what you need to do is just:
27
+ In order to let your `User` support multiple emails, with _devise-multi-email_ what you need to do is just:
28
28
 
29
29
  ```ruby
30
30
  class User < ActiveRecord::Base
@@ -176,17 +176,17 @@ You can do `email.send_confirmation_instructions` for each email individually, b
176
176
 
177
177
  ## Wiki
178
178
 
179
- [Migrating exiting user records](https://github.com/allenwq/devise-multi_email/wiki/Migrating-existing-user-records)
179
+ [Migrating existing user records](https://github.com/allenwq/devise-multi_email/wiki/Migrating-existing-user-records)
180
180
 
181
181
  ## Development
182
182
 
183
- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
183
+ After checking out the repo, run `bundle install` to install dependencies.
184
184
 
185
- To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).
185
+ Then, run `bundle exec rake` to run the RSpec test suite.
186
186
 
187
187
  ## Contributing
188
188
 
189
- Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/devise-multi_email. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
189
+ Bug reports and pull requests are welcome on GitHub at https://github.com/allenwq/devise-multi_email. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.
190
190
 
191
191
 
192
192
  ## License
@@ -0,0 +1,8 @@
1
+ {
2
+ "folders": [
3
+ {
4
+ "path": "."
5
+ }
6
+ ],
7
+ "settings": {}
8
+ }
@@ -1,16 +1,15 @@
1
- # coding: utf-8
2
- lib = File.expand_path('../lib', __FILE__)
1
+ lib = File.expand_path('lib', __dir__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require 'devise/multi_email/version'
5
4
 
6
5
  Gem::Specification.new do |spec|
7
6
  spec.name = 'devise-multi_email'
8
7
  spec.version = Devise::MultiEmail::VERSION
9
- spec.authors = ['ALLEN WANG QIANG', 'Joel Van Horn']
10
- spec.email = ['rovingbreeze@gmail.com', 'joel@joelvanhorn.com']
8
+ spec.authors = ['ALLEN WANG QIANG', 'Joel Van Horn', 'Micah Gideon Modell']
9
+ spec.email = ['rovingbreeze@gmail.com', 'joel@joelvanhorn.com', 'micah.modell@gmail.com']
11
10
 
12
- spec.summary = %q{Let devise support multiple emails.}
13
- spec.description = %q{Devise authenticatable, confirmable and validatable with multiple emails.}
11
+ spec.summary = 'Let devise support multiple emails.'
12
+ spec.description = 'Devise authenticatable, confirmable and validatable with multiple emails.'
14
13
  spec.homepage = 'https://github.com/allenwq/devise-multi_email.git'
15
14
  spec.license = 'MIT'
16
15
 
@@ -19,12 +18,14 @@ Gem::Specification.new do |spec|
19
18
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
20
19
  spec.require_paths = ['lib']
21
20
 
22
- spec.add_runtime_dependency 'devise'
21
+ spec.required_ruby_version = '>= 3.0'
23
22
 
24
- spec.add_development_dependency 'bundler'
25
- spec.add_development_dependency 'rake', '~> 10.0'
26
- spec.add_development_dependency 'rspec'
27
- spec.add_development_dependency 'sqlite3'
28
- spec.add_development_dependency 'capybara'
29
- spec.add_development_dependency 'coveralls'
23
+ spec.add_runtime_dependency 'devise', '<6.0'
24
+
25
+ spec.add_development_dependency 'bundler', '<5.0'
26
+ spec.add_development_dependency 'capybara', '<4.0'
27
+ spec.add_development_dependency 'coveralls_reborn', '<=0.29.0'
28
+ spec.add_development_dependency 'rake', '<14.0'
29
+ spec.add_development_dependency 'rspec', '<4.0'
30
+ spec.add_development_dependency 'sqlite3', '<=2.9.0'
30
31
  end
@@ -7,13 +7,13 @@ end
7
7
 
8
8
 
9
9
  # Bundle edge Rails instead: gem 'rails', github: 'rails/rails'
10
- gem 'rails', '~> 5.0.2'
10
+ gem 'rails', '~> 8.1'
11
11
  # Use sqlite3 as the database for Active Record
12
12
  gem 'sqlite3'
13
13
  # Use Puma as the app server
14
- gem 'puma', '~> 3.0'
14
+ gem 'puma', '~> 7.2'
15
15
  # Use SCSS for stylesheets
16
- gem 'sass-rails', '~> 5.0'
16
+ gem 'sass-rails', '~> 6.0'
17
17
  # Use Uglifier as compressor for JavaScript assets
18
18
  gem 'uglifier', '>= 1.3.0'
19
19
  # See https://github.com/rails/execjs#readme for more supported runtimes
@@ -41,10 +41,10 @@ end
41
41
  group :development do
42
42
  # Access an IRB console on exception pages or by using <%= console %> anywhere in the code.
43
43
  gem 'web-console', '>= 3.3.0'
44
- gem 'listen', '~> 3.0.5'
44
+ gem 'listen', '~> 3.10.0'
45
45
  # Spring speeds up development by keeping your application running in the background. Read more: https://github.com/rails/spring
46
46
  gem 'spring'
47
- gem 'spring-watcher-listen', '~> 2.0.0'
47
+ gem 'spring-watcher-listen', '~> 2.1.0'
48
48
  end
49
49
 
50
50
  # Windows does not include zoneinfo files, so bundle the tzinfo-data gem