Devise v4.8.1 Release Notes
Release Date: 2021-12-16 // over 2 years ago-
- ✨ enhancements
- Add support for Rails 7.0. Please note that Turbo integration is not fully supported by Devise yet.
- ✨ enhancements
Previous changes from v4.8.0
-
✨ enhancements
- Devise now enables the upgrade of OmniAuth 2+. Previously Devise would raise an error if you'd try to upgrade. Please note that OmniAuth 2 is considered a security upgrade and recommended to everyone. You can read more about the details (and possible necessary changes to your app as part of the upgrade) in their release notes. Devise's OmniAuth Overview wiki was also updated to cover OmniAuth 2.0 requirements.
- Note that the upgrade required Devise shared links that initiate the OmniAuth flow to be changed to
method: :post
, which is now a requirement for OmniAuth, part of the security improvement. If you have copied and customized the Devise shared links partial to your app, or if you have other links in your app that initiate the OmniAuth flow, they will have to be updated to usemethod: :post
, or changed to use buttons (e.g.button_to
) to work with OmniAuth 2. (if you're using links withmethod: :post
, make sure your app hasrails-ujs
orjquery-ujs
included in order for these links to work properly.) - As part of the OmniAuth 2.0 upgrade you might also need to add the
omniauth-rails_csrf_protection
gem to your app if you don't have it already. (and you don't want to roll your own code to verify requests.) Check the OmniAuth v2 release notes for more info. - Introduce
Lockable#reset_failed_attempts!
model method to reset failed attempts counter to 0 after the user signs in. - This logic existed inside the lockable warden hook and is triggered automatically after the user signs in. The new model method is an extraction to allow you to override it in the application to implement things like switching to a write database if you're using the new multi-DB infrastructure from Rails for example, similar to how it's already possible with
Trackable#update_tracked_fields!
. - Add support for Ruby 3.
- Add support for Rails 6.1.
- Move CI to GitHub Actions.
🗄 deprecations
Devise::Models::Authenticatable::BLACKLIST_FOR_SERIALIZATION
is deprecated in favor ofDevise::Models::Authenticatable::UNSAFE_ATTRIBUTES_FOR_SERIALIZATION
(@hanachin)