devise-warbler 2.2.3

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 (208) hide show
  1. data/.gitignore +10 -0
  2. data/.travis.yml +35 -0
  3. data/CHANGELOG.rdoc +923 -0
  4. data/CONTRIBUTING.md +14 -0
  5. data/Gemfile +32 -0
  6. data/Gemfile.lock +156 -0
  7. data/MIT-LICENSE +20 -0
  8. data/README.md +396 -0
  9. data/Rakefile +34 -0
  10. data/app/controllers/devise/confirmations_controller.rb +43 -0
  11. data/app/controllers/devise/omniauth_callbacks_controller.rb +30 -0
  12. data/app/controllers/devise/passwords_controller.rb +65 -0
  13. data/app/controllers/devise/registrations_controller.rb +119 -0
  14. data/app/controllers/devise/sessions_controller.rb +48 -0
  15. data/app/controllers/devise/unlocks_controller.rb +44 -0
  16. data/app/controllers/devise_controller.rb +184 -0
  17. data/app/helpers/devise_helper.rb +25 -0
  18. data/app/mailers/devise/mailer.rb +15 -0
  19. data/app/views/devise/_links.erb +3 -0
  20. data/app/views/devise/confirmations/new.html.erb +12 -0
  21. data/app/views/devise/mailer/confirmation_instructions.html.erb +5 -0
  22. data/app/views/devise/mailer/reset_password_instructions.html.erb +8 -0
  23. data/app/views/devise/mailer/unlock_instructions.html.erb +7 -0
  24. data/app/views/devise/passwords/edit.html.erb +16 -0
  25. data/app/views/devise/passwords/new.html.erb +12 -0
  26. data/app/views/devise/registrations/edit.html.erb +29 -0
  27. data/app/views/devise/registrations/new.html.erb +18 -0
  28. data/app/views/devise/sessions/new.html.erb +17 -0
  29. data/app/views/devise/shared/_links.erb +25 -0
  30. data/app/views/devise/unlocks/new.html.erb +12 -0
  31. data/config/locales/en.yml +59 -0
  32. data/devise.gemspec +24 -0
  33. data/gemfiles/Gemfile.rails-3.1.x +35 -0
  34. data/gemfiles/Gemfile.rails-3.1.x.lock +167 -0
  35. data/lib/devise.rb +451 -0
  36. data/lib/devise/controllers/helpers.rb +285 -0
  37. data/lib/devise/controllers/rememberable.rb +56 -0
  38. data/lib/devise/controllers/scoped_views.rb +17 -0
  39. data/lib/devise/controllers/url_helpers.rb +67 -0
  40. data/lib/devise/delegator.rb +16 -0
  41. data/lib/devise/failure_app.rb +187 -0
  42. data/lib/devise/hooks/activatable.rb +11 -0
  43. data/lib/devise/hooks/forgetable.rb +9 -0
  44. data/lib/devise/hooks/lockable.rb +7 -0
  45. data/lib/devise/hooks/rememberable.rb +6 -0
  46. data/lib/devise/hooks/timeoutable.rb +25 -0
  47. data/lib/devise/hooks/trackable.rb +9 -0
  48. data/lib/devise/mailers/helpers.rb +95 -0
  49. data/lib/devise/mapping.rb +172 -0
  50. data/lib/devise/models.rb +128 -0
  51. data/lib/devise/models/authenticatable.rb +276 -0
  52. data/lib/devise/models/confirmable.rb +267 -0
  53. data/lib/devise/models/database_authenticatable.rb +126 -0
  54. data/lib/devise/models/lockable.rb +193 -0
  55. data/lib/devise/models/omniauthable.rb +27 -0
  56. data/lib/devise/models/recoverable.rb +140 -0
  57. data/lib/devise/models/registerable.rb +25 -0
  58. data/lib/devise/models/rememberable.rb +125 -0
  59. data/lib/devise/models/timeoutable.rb +49 -0
  60. data/lib/devise/models/token_authenticatable.rb +89 -0
  61. data/lib/devise/models/trackable.rb +35 -0
  62. data/lib/devise/models/validatable.rb +66 -0
  63. data/lib/devise/modules.rb +29 -0
  64. data/lib/devise/omniauth.rb +28 -0
  65. data/lib/devise/omniauth/config.rb +45 -0
  66. data/lib/devise/omniauth/url_helpers.rb +18 -0
  67. data/lib/devise/orm/active_record.rb +3 -0
  68. data/lib/devise/orm/mongoid.rb +3 -0
  69. data/lib/devise/param_filter.rb +40 -0
  70. data/lib/devise/rails.rb +51 -0
  71. data/lib/devise/rails/routes.rb +448 -0
  72. data/lib/devise/rails/warden_compat.rb +43 -0
  73. data/lib/devise/strategies/authenticatable.rb +176 -0
  74. data/lib/devise/strategies/base.rb +20 -0
  75. data/lib/devise/strategies/database_authenticatable.rb +20 -0
  76. data/lib/devise/strategies/rememberable.rb +55 -0
  77. data/lib/devise/strategies/token_authenticatable.rb +56 -0
  78. data/lib/devise/test_helpers.rb +131 -0
  79. data/lib/devise/time_inflector.rb +14 -0
  80. data/lib/devise/version.rb +3 -0
  81. data/lib/generators/active_record/devise_generator.rb +79 -0
  82. data/lib/generators/active_record/templates/migration.rb +19 -0
  83. data/lib/generators/active_record/templates/migration_existing.rb +26 -0
  84. data/lib/generators/devise/devise_generator.rb +24 -0
  85. data/lib/generators/devise/install_generator.rb +24 -0
  86. data/lib/generators/devise/orm_helpers.rb +32 -0
  87. data/lib/generators/devise/views_generator.rb +122 -0
  88. data/lib/generators/mongoid/devise_generator.rb +57 -0
  89. data/lib/generators/templates/README +35 -0
  90. data/lib/generators/templates/devise.rb +240 -0
  91. data/lib/generators/templates/markerb/confirmation_instructions.markerb +5 -0
  92. data/lib/generators/templates/markerb/reset_password_instructions.markerb +8 -0
  93. data/lib/generators/templates/markerb/unlock_instructions.markerb +7 -0
  94. data/lib/generators/templates/simple_form_for/confirmations/new.html.erb +16 -0
  95. data/lib/generators/templates/simple_form_for/passwords/edit.html.erb +19 -0
  96. data/lib/generators/templates/simple_form_for/passwords/new.html.erb +15 -0
  97. data/lib/generators/templates/simple_form_for/registrations/edit.html.erb +27 -0
  98. data/lib/generators/templates/simple_form_for/registrations/new.html.erb +17 -0
  99. data/lib/generators/templates/simple_form_for/sessions/new.html.erb +15 -0
  100. data/lib/generators/templates/simple_form_for/unlocks/new.html.erb +16 -0
  101. data/test/controllers/custom_strategy_test.rb +62 -0
  102. data/test/controllers/helpers_test.rb +253 -0
  103. data/test/controllers/internal_helpers_test.rb +110 -0
  104. data/test/controllers/sessions_controller_test.rb +85 -0
  105. data/test/controllers/url_helpers_test.rb +59 -0
  106. data/test/delegator_test.rb +19 -0
  107. data/test/devise_test.rb +83 -0
  108. data/test/failure_app_test.rb +221 -0
  109. data/test/generators/active_record_generator_test.rb +75 -0
  110. data/test/generators/devise_generator_test.rb +39 -0
  111. data/test/generators/install_generator_test.rb +13 -0
  112. data/test/generators/mongoid_generator_test.rb +23 -0
  113. data/test/generators/views_generator_test.rb +67 -0
  114. data/test/helpers/devise_helper_test.rb +51 -0
  115. data/test/integration/authenticatable_test.rb +687 -0
  116. data/test/integration/confirmable_test.rb +299 -0
  117. data/test/integration/database_authenticatable_test.rb +84 -0
  118. data/test/integration/http_authenticatable_test.rb +97 -0
  119. data/test/integration/lockable_test.rb +242 -0
  120. data/test/integration/omniauthable_test.rb +133 -0
  121. data/test/integration/recoverable_test.rb +334 -0
  122. data/test/integration/registerable_test.rb +347 -0
  123. data/test/integration/rememberable_test.rb +165 -0
  124. data/test/integration/timeoutable_test.rb +140 -0
  125. data/test/integration/token_authenticatable_test.rb +161 -0
  126. data/test/integration/trackable_test.rb +92 -0
  127. data/test/mailers/confirmation_instructions_test.rb +106 -0
  128. data/test/mailers/reset_password_instructions_test.rb +87 -0
  129. data/test/mailers/unlock_instructions_test.rb +82 -0
  130. data/test/mapping_test.rb +127 -0
  131. data/test/models/authenticatable_test.rb +13 -0
  132. data/test/models/confirmable_test.rb +398 -0
  133. data/test/models/database_authenticatable_test.rb +207 -0
  134. data/test/models/lockable_test.rb +273 -0
  135. data/test/models/omniauthable_test.rb +7 -0
  136. data/test/models/recoverable_test.rb +205 -0
  137. data/test/models/registerable_test.rb +7 -0
  138. data/test/models/rememberable_test.rb +174 -0
  139. data/test/models/serializable_test.rb +49 -0
  140. data/test/models/timeoutable_test.rb +46 -0
  141. data/test/models/token_authenticatable_test.rb +55 -0
  142. data/test/models/trackable_test.rb +13 -0
  143. data/test/models/validatable_test.rb +117 -0
  144. data/test/models_test.rb +158 -0
  145. data/test/omniauth/config_test.rb +57 -0
  146. data/test/omniauth/url_helpers_test.rb +51 -0
  147. data/test/orm/active_record.rb +9 -0
  148. data/test/orm/mongoid.rb +13 -0
  149. data/test/rails_app/Rakefile +10 -0
  150. data/test/rails_app/app/active_record/admin.rb +6 -0
  151. data/test/rails_app/app/active_record/shim.rb +2 -0
  152. data/test/rails_app/app/active_record/user.rb +6 -0
  153. data/test/rails_app/app/controllers/admins/sessions_controller.rb +6 -0
  154. data/test/rails_app/app/controllers/admins_controller.rb +11 -0
  155. data/test/rails_app/app/controllers/application_controller.rb +9 -0
  156. data/test/rails_app/app/controllers/home_controller.rb +25 -0
  157. data/test/rails_app/app/controllers/publisher/registrations_controller.rb +2 -0
  158. data/test/rails_app/app/controllers/publisher/sessions_controller.rb +2 -0
  159. data/test/rails_app/app/controllers/users/omniauth_callbacks_controller.rb +14 -0
  160. data/test/rails_app/app/controllers/users_controller.rb +23 -0
  161. data/test/rails_app/app/helpers/application_helper.rb +3 -0
  162. data/test/rails_app/app/mailers/users/mailer.rb +8 -0
  163. data/test/rails_app/app/mongoid/admin.rb +29 -0
  164. data/test/rails_app/app/mongoid/shim.rb +24 -0
  165. data/test/rails_app/app/mongoid/user.rb +42 -0
  166. data/test/rails_app/app/views/admins/index.html.erb +1 -0
  167. data/test/rails_app/app/views/admins/sessions/new.html.erb +2 -0
  168. data/test/rails_app/app/views/home/admin_dashboard.html.erb +1 -0
  169. data/test/rails_app/app/views/home/index.html.erb +1 -0
  170. data/test/rails_app/app/views/home/join.html.erb +1 -0
  171. data/test/rails_app/app/views/home/private.html.erb +1 -0
  172. data/test/rails_app/app/views/home/user_dashboard.html.erb +1 -0
  173. data/test/rails_app/app/views/layouts/application.html.erb +24 -0
  174. data/test/rails_app/app/views/users/index.html.erb +1 -0
  175. data/test/rails_app/app/views/users/mailer/confirmation_instructions.erb +1 -0
  176. data/test/rails_app/app/views/users/sessions/new.html.erb +1 -0
  177. data/test/rails_app/config.ru +4 -0
  178. data/test/rails_app/config/application.rb +41 -0
  179. data/test/rails_app/config/boot.rb +8 -0
  180. data/test/rails_app/config/database.yml +18 -0
  181. data/test/rails_app/config/environment.rb +5 -0
  182. data/test/rails_app/config/environments/development.rb +18 -0
  183. data/test/rails_app/config/environments/production.rb +33 -0
  184. data/test/rails_app/config/environments/test.rb +33 -0
  185. data/test/rails_app/config/initializers/backtrace_silencers.rb +7 -0
  186. data/test/rails_app/config/initializers/devise.rb +178 -0
  187. data/test/rails_app/config/initializers/inflections.rb +2 -0
  188. data/test/rails_app/config/initializers/secret_token.rb +2 -0
  189. data/test/rails_app/config/routes.rb +100 -0
  190. data/test/rails_app/db/migrate/20100401102949_create_tables.rb +74 -0
  191. data/test/rails_app/db/schema.rb +52 -0
  192. data/test/rails_app/lib/shared_admin.rb +14 -0
  193. data/test/rails_app/lib/shared_user.rb +26 -0
  194. data/test/rails_app/public/404.html +26 -0
  195. data/test/rails_app/public/422.html +26 -0
  196. data/test/rails_app/public/500.html +26 -0
  197. data/test/rails_app/public/favicon.ico +0 -0
  198. data/test/rails_app/script/rails +10 -0
  199. data/test/routes_test.rb +248 -0
  200. data/test/support/assertions.rb +40 -0
  201. data/test/support/helpers.rb +91 -0
  202. data/test/support/integration.rb +92 -0
  203. data/test/support/locale/en.yml +4 -0
  204. data/test/support/webrat/integrations/rails.rb +24 -0
  205. data/test/test_helper.rb +27 -0
  206. data/test/test_helpers_test.rb +151 -0
  207. data/test/test_models.rb +27 -0
  208. metadata +423 -0
data/.gitignore ADDED
@@ -0,0 +1,10 @@
1
+ test/rails_app/log/*
2
+ test/rails_app/tmp/*
3
+ *~
4
+ coverage/*
5
+ *.sqlite3
6
+ .bundle
7
+ rdoc/*
8
+ pkg
9
+ log
10
+ test/tmp/*
data/.travis.yml ADDED
@@ -0,0 +1,35 @@
1
+ language: ruby
2
+ script: "bundle exec rake test"
3
+ rvm:
4
+ - 1.8.7
5
+ - 1.9.2
6
+ - 1.9.3
7
+ env:
8
+ - DEVISE_ORM=mongoid
9
+ - DEVISE_ORM=active_record
10
+ matrix:
11
+ exclude:
12
+ - rvm: 1.8.7
13
+ env: DEVISE_ORM=mongoid
14
+ gemfile: Gemfile
15
+ - rvm: 1.8.7
16
+ env: DEVISE_ORM=mongoid
17
+ gemfile: gemfiles/Gemfile.rails-3.1.x
18
+ - rvm: 1.9.2
19
+ env: DEVISE_ORM=mongoid
20
+ gemfile: Gemfile
21
+ - rvm: 1.9.2
22
+ env: DEVISE_ORM=mongoid
23
+ gemfile: gemfiles/Gemfile.rails-3.1.x
24
+ gemfile:
25
+ - gemfiles/Gemfile.rails-3.1.x
26
+ - Gemfile
27
+ services:
28
+ - mongodb
29
+ notifications:
30
+ email: false
31
+ campfire:
32
+ on_success: change
33
+ on_failure: always
34
+ rooms:
35
+ - secure: "TRiqvuM4i/QmRDWjUSNitE5/P91BOzDkNl53+bZjjtxcISCswZtmECWBR7n9\n3xwqCOU1o2lfohxZ32OHOj/Nj7o+90zWJfWxcv+if0hIXRiil62M5pg0lZUd\nyJ4M5VQ0lSWo5he1OUrXhSabPJeaK3B8yT/tdh+qO5yzR+vb/jc="
data/CHANGELOG.rdoc ADDED
@@ -0,0 +1,923 @@
1
+ == master
2
+
3
+ * enhancements
4
+ * allow_unconfirmed_access_for config from `:confirmable` module can be set to `nil` that means unconfirmed access for unlimited time. (by @nashby)
5
+
6
+ * bug fix
7
+ * Generating scoped devise views now uses the correct scoped shared links partial instead of the default devise one (by @nashby)
8
+ * Fix inheriting mailer templates from `Devise::Mailer`
9
+
10
+ == 2.2.3
11
+
12
+ Security announcement: http://blog.plataformatec.com.br/2013/01/security-announcement-devise-v2-2-3-v2-1-3-v2-0-5-and-v1-5-3-released/
13
+
14
+ * bug fix
15
+ * Require string conversion for all values
16
+
17
+ == 2.2.2
18
+
19
+ * bug fix
20
+ * Fix bug when checking for reconfirmable in templates
21
+
22
+ == 2.2.1
23
+
24
+ * bug fix
25
+ * Fix regression with case_insensitive_keys
26
+ * Fix regression when password is blank when it is invalid
27
+
28
+ == 2.2.0
29
+
30
+ * backwards incompatible changes
31
+ * `headers_for` is deprecated, customize the mailer directly instead
32
+ * All mailer methods now expect a second argument with delivery options
33
+ * Default minimum password length is now 8 (by @carlosgaldino)
34
+ * Support alternate sign in error message when email record does not exist (this adds a new I18n key to the locale file) (by @gabetax)
35
+ * DeviseController responds only to HTML requests by default (call `DeviseController.respond_to` or `ApplicationController.respond_to` to add new formats)
36
+ * Support Mongoid 3 onwards (by @durran)
37
+
38
+ * enhancements
39
+ * Fix unlockable which could leak account existence on paranoid mode (by @latortuga)
40
+ * Confirmable now has a confirm_within option to set a period while the confirmation token is still valid (by @promisedlandt)
41
+ * Flash messages in controller now respects `resource_name` (by @latortuga)
42
+ * Separate `sign_in` and `sign_up` on RegistrationsController (by @rubynortheast)
43
+ * Add autofocus to default views (by @Radagaisus)
44
+ * Unlock user on password reset (by @marcinb)
45
+ * Allow validation callbacks to apply to virtual attributes (by @latortuga)
46
+
47
+ * bug fix
48
+ * unconfirmed_email now uses the proper e-mail on salutation
49
+ * Fix default email_regexp config to not allow spaces (by @kukula)
50
+ * Fix a regression introduced on warden 1.2.1 (by @ejfinneran)
51
+ * Properly camelize omniauth strategies (by @saizai)
52
+ * Do not set flash messages for non navigational requests on session sign out (by @mathieul)
53
+ * Set the proper fields as required on the lockable module (by @nickhoffman)
54
+ * Respects Devise mailer default's reply_to (by @mrchrisadams)
55
+ * Properly assign resource on `sign_in` related action (by @adammcnamara)
56
+ * `update_with_password` doesn't change encrypted password when it is invalid (by @nashby)
57
+ * Properly handle namespaced models on Active Record generator (by @nashby)
58
+
59
+ == 2.1.2
60
+
61
+ * enhancements
62
+ * Handle backwards incompatibility between Rails 3.2.6 and Thor 0.15.x
63
+
64
+ * bug fix
65
+ * Fix regression on strategy validation on previous release
66
+
67
+ == 2.1.1 (yanked)
68
+
69
+ * enhancements
70
+ * `sign_out_all_scopes` now locks warden and does not allow new logins in the same action
71
+ * `Devise.omniauth_path_prefix` is available to configure omniauth path prefix
72
+ * Redirect to sign in page when trying to access password#edit without a token (by @gbataille)
73
+ * Allow a lambda in authenticate(d) routes helpers to further select the scope
74
+ * Removed warnings on Rails 3.2.6 (by @nashby)
75
+
76
+ * bug fix
77
+ * `update_with_password` now relies on assign_attributes and forwards the :as option (by @wtn)
78
+ * Do not trigger timeout on sign in related actions
79
+ * Timeout does not explode when reset_authentication_token! is accidentally defined by Active Model (by @remomueller)
80
+
81
+ * deprecations
82
+ * Strategy#validate() no longer validates nil resources
83
+
84
+ == 2.1.0
85
+
86
+ * enhancements
87
+ * Add `check_fields!(model_class)` method on Devise::Models to check if the model includes the fields that Devise uses
88
+ * Add `skip_reconfirmation!` to skip reconfirmation
89
+ * Devise model generator now works with engines
90
+ * Devise encryptable was moved to its new gem (http://github.com/plataformatec/devise-encryptable)
91
+
92
+ * deprecations
93
+ * Deprecations warnings added on Devise 2.0 are now removed with their features
94
+ * All devise modules should now have a `required_fields(klass)` module method to help gathering missing attributes
95
+ * `use_salt_as_remember_token` and `apply_schema` does not have any effect since 2.0 and are now deprecated
96
+ * `valid_for_authentication?` must now return a boolean
97
+
98
+ * bug fix
99
+ * Ensure after sign in hook is not called without a resource
100
+ * Fix a term: now on Omniauth related flash messages, we say that we're authenticating from an omniauth provider instead of authorizing
101
+ * Fixed redirect when authenticated mounted apps (by @hakanensari)
102
+ * Ensure the failure app still respects config.relative_url_root
103
+ * `/users/sign_in` doesn't choke on protected attributes used to select sign in scope (by @Paymium)
104
+ * `failed_attempts` is set to zero after any sign in (including via reset password) (by @rodrigoflores)
105
+ * Added token expiration on timeout (by @antiarchitect)
106
+ * Do not accidentally mark `_prefixes` as private
107
+ * Better support for custom strategies on test helpers (by @mattconnolly)
108
+ * Return `head :no_content` in SessionsController now that most JS libraries handle it (by @julianvargasalvarez)
109
+
110
+ == 2.0.4
111
+
112
+ Notes: https://github.com/plataformatec/devise/wiki/How-To:-Upgrade-to-Devise-2.0
113
+
114
+ * bug fix
115
+ * Fix when :host is used with devise_for (by @mreinsch)
116
+ * Fix a regression that caused Warden to be initialized too late
117
+
118
+ == 2.0.3 (yanked)
119
+
120
+ * bug fix
121
+ * Ensure warning is not shown by mistake on apps with mounted engines
122
+ * Fixes related to remember_token and rememberable_options
123
+ * Ensure serializable_hash does not depend on accessible attributes
124
+ * Ensure that timeout callback does not run on sign out action
125
+
126
+ == 2.0.2
127
+
128
+ * enhancements
129
+ * Add devise_i18n_options to customize I18n message
130
+
131
+ * bug fix
132
+ * Ensure Devise.available_router_name defaults to :main_app
133
+ * Set autocomplete to off for password on edit forms
134
+ * Better error messages in case a trackable model can't be saved
135
+ * Show a warning in case someone gives a pluralized name to devise generator
136
+ * Fix test behavior for rspec subject requests (by @sj26)
137
+
138
+ == 2.0.1
139
+
140
+ * enhancements
141
+ * Improved error messages on deprecation warnings
142
+ * Hide Devise's internal generators from `rails g` command
143
+
144
+ * bug fix
145
+ * Removed tmp and log files from gem
146
+
147
+ == 2.0.0
148
+
149
+ * enhancements
150
+ * Add support for e-mail reconfirmation on change (by @Mandaryn and @heimidal)
151
+ * Redirect users to sign in page after unlock (by @nashby)
152
+ * Redirect to the previous URL on timeout
153
+ * Inherit from the same Devise parent controller (by @sj26)
154
+ * Allow parent_controller to be customizable via Devise.parent_controller, useful for engines
155
+ * Allow router_name to be customizable via Devise.router_name, useful for engines
156
+ * Allow alternate ORMs to run compatibility setup code before Authenticatable is included (by @jm81)
157
+
158
+ * deprecation
159
+ * Devise now only supports Rails 3.1 forward
160
+ * Devise.confirm_within was deprecated in favor Devise.allow_unconfirmed_access_for
161
+ * Devise.stateless_token= is deprecated in favor of appending :token_auth to Devise.skip_session_storage
162
+ * Usage of Devise.apply_schema is deprecated
163
+ * Usage of Devise migration helpers are deprecated
164
+ * Usage of Devise.remember_across_browsers was deprecated
165
+ * Usage of rememberable with remember_token was removed
166
+ * Usage of recoverable without reset_password_sent_at was removed
167
+ * Usage of Devise.case_insensitive_keys equals to false was removed
168
+ * Move devise/shared/_links.erb to devise/_links.erb
169
+ * Deprecated support of nested devise_for blocks
170
+ * Deprecated support to devise.registrations.reasons and devise.registrations.inactive_signed_up in favor of devise.registrations.signed_up_but_*
171
+ * Protected method render_with_scope was removed.
172
+
173
+ == 1.5.3
174
+
175
+ * bug fix
176
+ * Ensure delegator converts scope to symbol (by @dmitriy-kiriyenko)
177
+ * Ensure passing :format => false to devise_for is not permanent
178
+ * Ensure path checker does not check invalid routes
179
+
180
+ == 1.5.2
181
+
182
+ * enhancements
183
+ * Add support for Rails 3.1 new mass assignment conventions (by @kirs)
184
+ * Add timeout_in method to Timeoutable, it can be overridden in a model (by @lest)
185
+
186
+ * bug fix
187
+ * OmniAuth error message now shows the proper option (:strategy_class instead of :klass)
188
+
189
+ == 1.5.1
190
+
191
+ * bug fix
192
+ * Devise should not attempt to load OmniAuth strategies. Strategies should be loaded before hand by the developer or explicitly given to Devise.
193
+
194
+ == 1.5.0
195
+
196
+ * enhancements
197
+ * Timeoutable also skips tracking if skip_trackable is given
198
+ * devise_for now accepts :failure_app as an option
199
+ * Models can select the proper mailer via devise_mailer method (by @locomotivecms)
200
+ * Migration generator now uses the change method (by @nashby)
201
+ * Support to markerb templates on the mailer generator (by @sbounmy)
202
+ * Support for Omniauth 1.0 (older versions are no longer supported) (by @TamiasSibiricus)
203
+
204
+ * bug fix
205
+ * Allow idempotent API requests
206
+ * Fix bug where logs did not show 401 as status code
207
+ * Change paranoid settings to behave as success instead of as failure
208
+ * Fix bug where activation messages were shown first than the credentials error message
209
+ * Instance variables are expired after sign out
210
+
211
+ * deprecation
212
+ * redirect_location is deprecated, please use after_sign_in_path_for
213
+ * after_sign_in_path_for now redirects to session[scope_return_to] if any value is stored in it
214
+
215
+ == 1.4.9
216
+
217
+ * bug fix
218
+ * url helpers were not being set under some circumstances
219
+
220
+ == 1.4.8
221
+
222
+ * enhancements
223
+ * Add docs for assets pipeline and Heroku
224
+
225
+ * bug fix
226
+ * confirmation_url was not being set under some circumstances
227
+
228
+ == 1.4.7
229
+
230
+ * bug fix
231
+ * Fix backward incompatible change from 1.4.6 for those using custom controllers
232
+
233
+ == 1.4.6 (yanked)
234
+
235
+ * enhancements
236
+ * Allow devise_for :skip => :all
237
+ * Allow options to be passed to authenticate_user!
238
+ * Allow --skip-routes to devise generator
239
+ * Add allow_params_authentication! to make it explicit when params authentication is allowed in a controller
240
+
241
+ == 1.4.5
242
+
243
+ * bug fix
244
+ * Failure app tries the root path if a session one does not exist
245
+ * No need to finalize Devise helpers all the time (by @bradleypriest)
246
+ * Reset password shows proper message if user is not active
247
+ * `clean_up_passwords` sets the accessors to nil to skip validations
248
+
249
+ == 1.4.4
250
+
251
+ * bug fix
252
+ * Do not always skip helpers, instead provide :skip_helpers as option to trigger it manually
253
+
254
+ == 1.4.3
255
+
256
+ * enhancements
257
+ * Improve Rails 3.1 compatibility
258
+ * Use serialize_into_session and serialize_from_session in Warden serialize to improve extensibility
259
+
260
+ * bug fix
261
+ * Generator properly generates a change_table migration if a model already exists
262
+ * Properly deprecate setup_mail
263
+ * Fix encoding issues with email regexp
264
+ * Only generate helpers for the used mappings
265
+ * Wrap :action constraints in the proper hash
266
+
267
+ * deprecations
268
+ * Loosened the used email regexp to simply assert the existent of "@". If someone relies on a more strict regexp, they may use https://github.com/SixArm/sixarm_ruby_email_address_validation
269
+
270
+ == 1.4.2
271
+
272
+ * bug fix
273
+ * Provide a more robust behavior to serializers and add :force_except option
274
+
275
+ == 1.4.1
276
+
277
+ * enhancements
278
+ * Add :defaults and :format support on router
279
+ * Add simple form generators
280
+ * Better localization for devise_error_messages! (by @zedtux)
281
+
282
+ * bug fix
283
+ * Ensure to_xml is properly white listened
284
+ * Ensure handle_unverified_request clean up any cached signed-in user
285
+
286
+ == 1.4.0
287
+
288
+ * enhancements
289
+ * Added authenticated and unauthenticated to the router to route the used based on his status (by @sj26)
290
+ * Improve e-mail regexp (by @rodrigoflores)
291
+ * Add strip_whitespace_keys and default to e-mail (by @swrobel)
292
+ * Do not run format and uniqueness validations on e-mail if it hasn't changed (by @Thibaut)
293
+ * Added update_without_password to update models but not allowing the password to change (by @fschwahn)
294
+ * Added config.paranoid, check the generator for more information (by @rodrigoflores)
295
+
296
+ * bug fix
297
+ * password_required? should not affect length validation
298
+ * User cannot access sign up and similar pages if he is already signed in through a cookie or token
299
+ * Do not convert booleans to strings on finders (by @xavier)
300
+ * Run validations even if current_password fails (by @crx)
301
+ * Devise now honors routes constraints (by @macmartine)
302
+ * Do not return the user resource when requesting instructions (by @rodrigoflores)
303
+
304
+ == 1.3.4
305
+
306
+ * bug fix
307
+ * Do not add formats if html or "*/*"
308
+
309
+ == 1.3.3
310
+
311
+ * bug fix
312
+ * Explicitly mark the token as expired if so
313
+
314
+ == 1.3.2
315
+
316
+ * bug fix
317
+ * Fix another regression related to reset_password_sent_at (by @alexdreher)
318
+
319
+ == 1.3.1
320
+
321
+ * enhancements
322
+ * Improve failure_app responses (by @indirect)
323
+ * sessions/new and registrations/new also respond to xml and json now
324
+
325
+ * bug fix
326
+ * Fix a regression that occurred if reset_password_sent_at is not present (by @stevehodgkiss)
327
+
328
+ == 1.3.0
329
+
330
+ * enhancements
331
+ * All controllers can now handle different mime types than html using Responders (by @sikachu)
332
+ * Added reset_password_within as configuration option to send the token for recovery (by @jdguyot)
333
+ * Bump password length to 128 characters (by @k33l0r)
334
+ * Add :only as option to devise_for (by @timoschilling)
335
+ * Allow to override path after sending password instructions (by @irohiroki)
336
+ * require_no_authentication has its own flash message (by @jackdempsey)
337
+
338
+ * bug fix
339
+ * Fix a bug where configuration options were being included too late
340
+ * Ensure Devise::TestHelpers can be used to tests Devise internal controllers (by @jwilger)
341
+ * valid_password? should not choke on empty passwords (by @mikel)
342
+ * Calling devise more than once does not include previously added modules anymore
343
+ * downcase_keys before validation
344
+
345
+ * backward incompatible changes
346
+ * authentication_keys are no longer considered when creating the e-mail validations, the previous behavior was buggy. You must double check if you were relying on such behavior.
347
+
348
+ == 1.2.1
349
+
350
+ * enhancements
351
+ * Improve update path messages
352
+
353
+ == 1.2.0
354
+
355
+ * bug fix
356
+ * Properly ignore path prefix on omniauthable
357
+ * Faster uniqueness queries
358
+ * Rename active? to active_for_authentication? to avoid conflicts
359
+
360
+ == 1.2.rc2
361
+
362
+ * enhancements
363
+ * Make friendly_token 20 chars long
364
+ * Use secure_compare
365
+
366
+ * bug fix
367
+ * Fix an issue causing infinite redirects in production
368
+ * rails g destroy works properly with devise generators (by @andmej)
369
+ * before_failure callbacks should work on test helpers (by @twinge)
370
+ * rememberable cookie now is httponly by default (by @JamesFerguson)
371
+ * Add missing confirmation_keys (by @JohnPlummer)
372
+ * Ensure after_* hooks are called on RegistrationsController
373
+ * When using database_authenticatable Devise will now only create an email field when appropriate (if using default authentication_keys or custom authentication_keys with email included)
374
+ * Ensure stateless token does not trigger timeout (by @pixelauthority)
375
+ * Implement handle_unverified_request for Rails 3.0.4 compatibility and improve FailureApp reliance on symbols
376
+ * Consider namespaces while generating routes
377
+ * Custom failure apps no longer ignored in test mode (by @jaghion)
378
+ * Do not depend on ActiveModel::Dirty
379
+ * Manual sign_in now triggers remember token
380
+ * Be sure to halt strategies on failures
381
+ * Consider SCRIPT_NAME on Omniauth paths
382
+ * Reset failed attempts when lock is expired
383
+ * Ensure there is no Mongoid injection
384
+
385
+ * deprecations
386
+ * Deprecated anybody_signed_in? in favor of signed_in? (by @gavinhughes)
387
+ * Removed --haml and --slim view templates
388
+ * Devise::OmniAuth helpers were deprecated and removed in favor of Omniauth.config.test_mode
389
+
390
+ == 1.2.rc
391
+
392
+ * deprecations
393
+ * cookie_domain is deprecated in favor of cookie_options
394
+ * after_update_path_for can no longer be defined in ApplicationController
395
+
396
+ * enhancements
397
+ * Added OmniAuth support
398
+ * Added ORM adapter to abstract ORM iteraction
399
+ * sign_out_via is available in the router to configure the method used for sign out (by @martinrehfeld)
400
+ * Improved Ajax requests handling in failure app (by @spastorino)
401
+ * Added request_keys to easily use request specific values (like subdomain) in authentication
402
+ * Increased the size of friendly_token to 60 characters (reduces the chances of a successful brute attack)
403
+ * Ensure the friendly token does not include "_" or "-" since some e-mails may not autolink it properly (by @rymai)
404
+ * Extracted encryptors into :encryptable for better bcrypt support
405
+ * :rememberable is now able to use salt as token if no remember_token is provided
406
+ * Store the salt in session and expire the session if the user changes his password
407
+ * Allow :stateless_token to be set to true avoiding users to be stored in session through token authentication
408
+ * cookie_options uses session_options values by default
409
+ * Sign up now check if the user is active or not and redirect him accordingly setting the inactive_signed_up message
410
+ * Use ActiveModel#to_key instead of #id
411
+ * sign_out_all_scopes now destroys the whole session
412
+ * Added case_insensitive_keys that automatically downcases the given keys, by default downcases only e-mail (by @adahl)
413
+
414
+ * default behavior changes
415
+ * sign_out_all_scopes defaults to true as security measure
416
+ * http authenticatable is disabled by default
417
+ * Devise does not intercept 401 returned from applications
418
+
419
+ * bugfix
420
+ * after_sign_in_path_for always receives a resource
421
+ * Do not execute Warden::Callbacks on Devise::TestHelpers (by @sgronblo)
422
+ * Allow password recovery and account unlocking to change used keys (by @RStankov)
423
+ * FailureApp now properly handles nil request.format
424
+ * Fix a bug causing FailureApp to return with HTTP Auth Headers for IE7
425
+ * Ensure namespaces has proper scoped views
426
+ * Ensure Devise does not set empty flash messages (by @sxross)
427
+
428
+ == 1.1.6
429
+
430
+ * Use a more secure e-mail regexp
431
+ * Implement Rails 3.0.4 handle unverified request
432
+ * Use secure_compare to compare passwords
433
+
434
+ == 1.1.5
435
+
436
+ * bugfix
437
+ * Ensure to convert keys on indifferent hash
438
+
439
+ * defaults
440
+ * Set config.http_authenticatable to false to avoid confusion
441
+
442
+ == 1.1.4
443
+
444
+ * bugfix
445
+ * Avoid session fixation attacks
446
+
447
+ == 1.1.3
448
+
449
+ * bugfix
450
+ * Add reply-to to e-mail headers by default
451
+ * Updated the views generator to respect the rails :template_engine option (by @fredwu)
452
+ * Check the type of HTTP Authentication before using Basic headers
453
+ * Avoid invalid_salt errors by checking salt presence (by @thibaudgg)
454
+ * Forget user deletes the right cookie before logout, not remembering the user anymore (by @emtrane)
455
+ * Fix for failed first-ever logins on PostgreSQL where column default is nil (by @bensie)
456
+ * :default options is now honored in migrations
457
+
458
+ == 1.1.2
459
+
460
+ * bugfix
461
+ * Compatibility with latest Rails routes schema
462
+
463
+ == 1.1.1
464
+
465
+ * bugfix
466
+ * Fix a small bug where generated locale file was empty on devise:install
467
+
468
+ == 1.1.0
469
+
470
+ * enhancements
471
+ * Rememberable module allows user to be remembered across browsers and is enabled by default (by @trevorturk)
472
+ * Rememberable module allows you to activate the period the remember me token is extended (by @trevorturk)
473
+ * devise_for can now be used together with scope method in routes but with a few limitations (check the documentation)
474
+ * Support `as` or `devise_scope` in the router to specify controller access scope
475
+ * HTTP Basic Auth can now be disabled/enabled for xhr(ajax) requests using http_authenticatable_on_xhr option (by @pellja)
476
+
477
+ * bug fix
478
+ * Fix a bug in Devise::TestHelpers where current_user was returning a Response object for non active accounts
479
+ * Devise should respect script_name and path_info contracts
480
+ * Fix a bug when accessing a path with (.:format) (by @klacointe)
481
+ * Do not add unlock routes unless unlock strategy is email or both
482
+ * Email should be case insensitive
483
+ * Store classes as string in session, to avoid serialization and stale data issues
484
+
485
+ * deprecations
486
+ * use_default_scope is deprecated and has no effect. Use :as or :devise_scope in the router instead
487
+
488
+ == 1.1.rc2
489
+
490
+ * enhancements
491
+ * Allow to set cookie domain for the remember token. (by @mantas)
492
+ * Added navigational formats to specify when it should return a 302 and when a 401.
493
+ * Added authenticate(scope) support in routes (by @wildchild)
494
+ * Added after_update_path_for to registrations controller (by @thedelchop)
495
+ * Allow the mailer object to be replaced through config.mailer = "MyOwnMailer"
496
+
497
+ * bug fix
498
+ * Fix a bug where session was timing out on sign out
499
+
500
+ * deprecations
501
+ * bcrypt is now the default encryptor
502
+ * devise.mailer.confirmations_instructions now should be devise.mailer.confirmations_instructions.subject
503
+ * devise.mailer.user.confirmations_instructions now should be devise.mailer.confirmations_instructions.user_subject
504
+ * Generators now use Rails 3 syntax (devise:install) instead of devise_install
505
+
506
+ == 1.1.rc1
507
+
508
+ * enhancements
509
+ * Rails 3 compatibility
510
+ * All controllers and views are namespaced, for example: Devise::SessionsController and "devise/sessions"
511
+ * Devise.orm is deprecated. This reduces the required API to hook your ORM with devise
512
+ * Use metal for failure app
513
+ * HTML e-mails now have proper formatting
514
+ * Allow to give :skip and :controllers in routes
515
+ * Move trackable logic to the model
516
+ * E-mails now use any template available in the filesystem. Easy to create multipart e-mails
517
+ * E-mails asks headers_for in the model to set the proper headers
518
+ * Allow to specify haml in devise_views
519
+ * Compatibility with Mongoid
520
+ * Make config.devise available on config/application.rb
521
+ * TokenAuthenticatable now works with HTTP Basic Auth
522
+ * Allow :unlock_strategy to be :none and add :lock_strategy which can be :failed_attempts or none. Setting those values to :none means that you want to handle lock and unlocking by yourself
523
+ * No need to append ?unauthenticated=true in URLs anymore since Flash was moved to a middleware in Rails 3
524
+ * :activatable is included by default in your models
525
+
526
+ * bug fix
527
+ * Fix a bug with STI
528
+
529
+ * deprecations
530
+ * Rails 3 compatible only
531
+ * Removed support for MongoMapper
532
+ * Scoped views are no longer "sessions/users/new". Now use "users/sessions/new"
533
+ * Devise.orm is deprecated, just require "devise/orm/YOUR_ORM" instead
534
+ * Devise.default_url_options is deprecated, just modify ApplicationController.default_url_options
535
+ * All messages under devise.sessions, except :signed_in and :signed_out, should be moved to devise.failure
536
+ * :as and :scope in routes is deprecated. Use :path and :singular instead
537
+
538
+ == 1.0.8
539
+
540
+ * enhancements
541
+ * Support for latest MongoMapper
542
+ * Added anybody_signed_in? helper (by @SSDany)
543
+
544
+ * bug fix
545
+ * confirmation_required? is properly honored on active? calls. (by @paulrosania)
546
+
547
+ == 1.0.7
548
+
549
+ * bug fix
550
+ * Ensure password confirmation is always required
551
+
552
+ * deprecations
553
+ * authenticatable was deprecated and renamed to database_authenticatable
554
+ * confirmable is not included by default on generation
555
+
556
+ == 1.0.6
557
+
558
+ * bug fix
559
+ * Do not allow unlockable strategies based on time to access a controller.
560
+ * Do not send unlockable email several times.
561
+ * Allow controller to upstram custom! failures to Warden.
562
+
563
+ == 1.0.5
564
+
565
+ * bug fix
566
+ * Use prepend_before_filter in require_no_authentication.
567
+ * require_no_authentication on unlockable.
568
+ * Fix a bug when giving an association proxy to devise.
569
+ * Do not use lock! on lockable since it's part of ActiveRecord API.
570
+
571
+ == 1.0.4
572
+
573
+ * bug fix
574
+ * Fixed a bug when deleting an account with rememberable
575
+ * Fixed a bug with custom controllers
576
+
577
+ == 1.0.3
578
+
579
+ * enhancements
580
+ * HTML e-mails now have proper formatting
581
+ * Do not remove MongoMapper options in find
582
+
583
+ == 1.0.2
584
+
585
+ * enhancements
586
+ * Allows you set mailer content type (by @glennr)
587
+
588
+ * bug fix
589
+ * Uses the same content type as request on http authenticatable 401 responses
590
+
591
+ == 1.0.1
592
+
593
+ * enhancements
594
+ * HttpAuthenticatable is not added by default automatically.
595
+ * Avoid mass assignment error messages with current password.
596
+
597
+ * bug fix
598
+ * Fixed encryptors autoload
599
+
600
+ == 1.0.0
601
+
602
+ * deprecation
603
+ * :old_password in update_with_password is deprecated, use :current_password instead
604
+
605
+ * enhancements
606
+ * Added Registerable
607
+ * Added Http Basic Authentication support
608
+ * Allow scoped_views to be customized per controller/mailer class
609
+ * [#99] Allow authenticatable to used in change_table statements
610
+
611
+ == 0.9.2
612
+
613
+ * bug fix
614
+ * Ensure inactive user cannot sign in
615
+ * Ensure redirect to proper url after sign up
616
+
617
+ * enhancements
618
+ * Added gemspec to repo
619
+ * Added token authenticatable (by @grimen)
620
+
621
+ == 0.9.1
622
+
623
+ * bug fix
624
+ * Allow bigger salt size (by @jgeiger)
625
+ * Fix relative url root
626
+
627
+ == 0.9.0
628
+
629
+ * deprecation
630
+ * devise :all is deprecated
631
+ * :success and :failure flash messages are now :notice and :alert
632
+
633
+ * enhancements
634
+ * Added devise lockable (by @mhfs)
635
+ * Warden 0.9.0 compatibility
636
+ * Mongomapper 0.6.10 compatibility
637
+ * Added Devise.add_module as hooks for extensions (by @grimen)
638
+ * Ruby 1.9.1 compatibility (by @grimen)
639
+
640
+ * bug fix
641
+ * Accept path prefix not starting with slash
642
+ * url helpers should rely on find_scope!
643
+
644
+ == 0.8.2
645
+
646
+ * enhancements
647
+ * Allow Devise.mailer_sender to be a proc (by @grimen)
648
+
649
+ * bug fix
650
+ * Fix bug with passenger, update is required to anyone deploying on passenger (by @dvdpalm)
651
+
652
+ == 0.8.1
653
+
654
+ * enhancements
655
+ * Move salt to encryptors
656
+ * Devise::Lockable
657
+ * Moved view links into partial and I18n'ed them
658
+
659
+ * bug fix
660
+ * Bcrypt generator was not being loaded neither setting the proper salt
661
+
662
+ == 0.8.0
663
+
664
+ * enhancements
665
+ * Warden 0.8.0 compatibility
666
+ * Add an easy for map.connect "sign_in", :controller => "sessions", :action => "new" to work
667
+ * Added :bcrypt encryptor (by @capotej)
668
+
669
+ * bug fix
670
+ * sign_in_count is also increased when user signs in via password change, confirmation, etc..
671
+ * More DataMapper compatibility (by @lancecarlson)
672
+
673
+ * deprecation
674
+ * Removed DeviseMailer.sender
675
+
676
+ == 0.7.5
677
+
678
+ * enhancements
679
+ * Set a default value for mailer to avoid find_template issues
680
+ * Add models configuration to MongoMapper::EmbeddedDocument as well
681
+
682
+ == 0.7.4
683
+
684
+ * enhancements
685
+ * Extract Activatable from Confirmable
686
+ * Decouple Serializers from Devise modules
687
+
688
+ == 0.7.3
689
+
690
+ * bug fix
691
+ * Give scope to the proper model validation
692
+
693
+ * enhancements
694
+ * Mail views are scoped as well
695
+ * Added update_with_password for authenticatable
696
+ * Allow render_with_scope to accept :controller option
697
+
698
+ == 0.7.2
699
+
700
+ * deprecation
701
+ * Renamed reset_confirmation! to resend_confirmation!
702
+ * Copying locale is part of the installation process
703
+
704
+ * bug fix
705
+ * Fixed render_with_scope to work with all controllers
706
+ * Allow sign in with two different users in Devise::TestHelpers
707
+
708
+ == 0.7.1
709
+
710
+ * enhancements
711
+ * Small enhancements for other plugins compatibility (by @grimen)
712
+
713
+ == 0.7.0
714
+
715
+ * deprecations
716
+ * :authenticatable is not included by default anymore
717
+
718
+ * enhancements
719
+ * Improve loading process
720
+ * Extract SessionSerializer from Authenticatable
721
+
722
+ == 0.6.3
723
+
724
+ * bug fix
725
+ * Added trackable to migrations
726
+ * Allow inflections to work
727
+
728
+ == 0.6.2
729
+
730
+ * enhancements
731
+ * More DataMapper compatibility
732
+ * Devise::Trackable - track sign in count, timestamps and ips
733
+
734
+ == 0.6.1
735
+
736
+ * enhancements
737
+ * Devise::Timeoutable - timeout sessions without activity
738
+ * DataMapper now accepts conditions
739
+
740
+ == 0.6.0
741
+
742
+ * deprecations
743
+ * :authenticatable is still included by default, but yields a deprecation warning
744
+
745
+ * enhancements
746
+ * Added DataMapper support
747
+ * Remove store_location from authenticatable strategy and add it to failure app
748
+ * Allow a strategy to be placed after authenticatable
749
+ * [#45] Do not rely attribute? methods, since they are not added on Datamapper
750
+
751
+ == 0.5.6
752
+
753
+ * enhancements
754
+ * [#42] Do not send nil to build (DataMapper compatibility)
755
+ * [#44] Allow to have scoped views
756
+
757
+ == 0.5.5
758
+
759
+ * enhancements
760
+ * Allow overwriting find for authentication method
761
+ * [#38] Remove Ruby 1.8.7 dependency
762
+
763
+ == 0.5.4
764
+
765
+ * deprecations
766
+ * Deprecate :singular in devise_for and use :scope instead
767
+
768
+ * enhancements
769
+ * [#37] Create after_sign_in_path_for and after_sign_out_path_for hooks to be
770
+ overwriten in ApplicationController
771
+ * Create sign_in_and_redirect and sign_out_and_redirect helpers
772
+ * Warden::Manager.default_scope is automatically configured to the first given scope
773
+
774
+ == 0.5.3
775
+
776
+ * bug fix
777
+ * MongoMapper now converts DateTime to Time
778
+ * Ensure all controllers are unloadable
779
+
780
+ * enhancements
781
+ * [#35] Moved friendly_token to Devise
782
+ * Added Devise.all, so you can freeze your app strategies
783
+ * Added Devise.apply_schema, so you can turn it to false in Datamapper or MongoMapper
784
+ in cases you don't want it be handlded automatically
785
+
786
+ == 0.5.2
787
+
788
+ * enhancements
789
+ * [#28] Improved sign_in and sign_out helpers to accepts resources
790
+ * [#28] Added stored_location_for as a helper
791
+ * [#20] Added test helpers
792
+
793
+ == 0.5.1
794
+
795
+ * enhancements
796
+ * Added serializers based on Warden ones
797
+ * Allow authentication keys to be set
798
+
799
+ == 0.5.0
800
+
801
+ * bug fix
802
+ * Fixed a bug where remember me module was not working properly
803
+
804
+ * enhancements
805
+ * Moved encryption strategy into the Encryptors module to allow several algorithms (by @mhfs)
806
+ * Implemented encryptors for Clearance, Authlogic and Restful-Authentication (by @mhfs)
807
+ * Added support for MongoMapper (by @shingara)
808
+
809
+ == 0.4.3
810
+
811
+ * bug fix
812
+ * [#29] Authentication just fails if user cannot be serialized from session, without raising errors;
813
+ * Default configuration values should not overwrite user values;
814
+
815
+ == 0.4.2
816
+
817
+ * deprecations
818
+ * Renamed mail_sender to mailer_sender
819
+
820
+ * enhancements
821
+ * skip_before_filter added in Devise controllers
822
+ * Use home_or_root_path on require_no_authentication as well
823
+ * Added devise_controller?, useful to select or reject filters in ApplicationController
824
+ * Allow :path_prefix to be given to devise_for
825
+ * Allow default_url_options to be configured through devise (:path_prefix => "/:locale" is now supported)
826
+
827
+ == 0.4.1
828
+
829
+ * bug fix
830
+ * [#21] Ensure options can be set even if models were not loaded
831
+
832
+ == 0.4.0
833
+
834
+ * deprecations
835
+ * Notifier is deprecated, use DeviseMailer instead. Remember to rename
836
+ app/views/notifier to app/views/devise_mailer and I18n key from
837
+ devise.notifier to devise.mailer
838
+ * :authenticable calls are deprecated, use :authenticatable instead
839
+
840
+ * enhancements
841
+ * [#16] Allow devise to be more agnostic and do not require ActiveRecord to be loaded
842
+ * Allow Warden::Manager to be configured through Devise
843
+ * Created a generator which creates an initializer
844
+
845
+ == 0.3.0
846
+
847
+ * bug fix
848
+ * [#15] Allow yml messages to be configured by not using engine locales
849
+
850
+ * deprecations
851
+ * Renamed confirm_in to confirm_within
852
+ * [#14] Do not send confirmation messages when user changes his e-mail
853
+ * [#13] Renamed authenticable to authenticatable and added deprecation warnings
854
+
855
+ == 0.2.3
856
+
857
+ * enhancements
858
+ * Ensure fail! works inside strategies
859
+ * [#12] Make unauthenticated message (when you haven't signed in) different from invalid message
860
+
861
+ * bug fix
862
+ * Do not redirect on invalid authenticate
863
+ * Allow model configuration to be set to nil
864
+
865
+ == 0.2.2
866
+
867
+ * bug fix
868
+ * [#9] Fix a bug when using customized resources
869
+
870
+ == 0.2.1
871
+
872
+ * refactor
873
+ * Clean devise_views generator to use devise existing views
874
+
875
+ * enhancements
876
+ * [#7] Create instance variables (like @user) for each devise controller
877
+ * Use Devise::Controller::Helpers only internally
878
+
879
+ * bug fix
880
+ * [#6] Fix a bug with Mongrel and Ruby 1.8.6
881
+
882
+ == 0.2.0
883
+
884
+ * enhancements
885
+ * [#4] Allow option :null => true in authenticable migration
886
+ * [#3] Remove attr_accessible calls from devise modules
887
+ * Customizable time frame for rememberable with :remember_for config
888
+ * Customizable time frame for confirmable with :confirm_in config
889
+ * Generators for creating a resource and copy views
890
+
891
+ * optimize
892
+ * Do not load hooks or strategies if they are not used
893
+
894
+ * bug fixes
895
+ * [#2] Fixed requiring devise strategies
896
+
897
+ == 0.1.1
898
+
899
+ * bug fixes
900
+ * [#1] Fixed requiring devise mapping
901
+
902
+ == 0.1.0
903
+
904
+ * Devise::Authenticable
905
+ * Devise::Confirmable
906
+ * Devise::Recoverable
907
+ * Devise::Validatable
908
+ * Devise::Migratable
909
+ * Devise::Rememberable
910
+
911
+ * SessionsController
912
+ * PasswordsController
913
+ * ConfirmationsController
914
+
915
+ * Create an example app
916
+ * devise :all, :except => :rememberable
917
+ * Use sign_in and sign_out in SessionsController
918
+
919
+ * Mailer subjects namespaced by model
920
+ * Allow stretches and pepper per model
921
+
922
+ * Store session[:return_to] in session
923
+ * Sign user in automatically after confirming or changing it's password