View Source Changelog

v1.0.36 (2024-02-07)

Bug fixes

  • [Pow.Phoenix.ViewHelpers] Now ensures format for layouts in Phoenix 1.7 is conformed to prevent conflicting layouts found warnings

v1.0.35 (2024-01-04)

Handles Elixir 1.16 deprecations.

Enhancements

Deprecations

v1.0.34 (2023-09-18)

Note: This release contains an important security fix. It is recommended to update immediately if you are using the Pow.Store.Backend.MnesiaCache.

Bug fixes

v1.0.33 (2023-09-05)

Bug fixes

v1.0.32 (2023-08-30)

Removed deprecation warnings for Elixir 1.15.

Bug fixes

  • [Pow.Phoenix.Controller] Now uses Phoenix.View when it's available with :namespace option to prevent upgrade issues

v1.0.31 (2023-06-09)

Bug fixes

v1.0.30 (2023-04-28)

Bug fixes

  • [Pow] Ensure the dependency is loaded before matching version in Pow.dependency_vsn_match?/2

v1.0.29 (2023-03-21)

This version is updated to work with Phoenix 1.7, in particular using the new template components structure. All views have been removed, and Pow no longer requires the phoenix_view dependency.

Now requires Elixir 1.12+.

Enhancements

Deprecations

v1.0.28 (2023-03-17)

Enhancements

Bug fixes

  • :phoenix removed from the compilers

Documentation

  • Updated api guide to correctly return updated conn for delete calls

v1.0.27 (2022-04-27)

Now supports ecto_sql 3.8.x and requires Elixir 1.11+.

Enhancements

  • [Pow.Ecto.Schema] has been refactored to conform the @pow_fields and @pow_assocs attributes with separate migration options

v1.0.26 (2021-11-06)

Enhancemnets

Bug fixes

Documentation

v1.0.25 (2021-09-26)

Now supports Phoenix 1.6.x, and phoenix_html 3.x.x.

Enhancements

Bug fixes

Documentation

  • Updated redis guide to use synchronous writes unless writes: :async is passed in config options
  • Updated redis guide to use optimized lookups with sorted keys

v1.0.24 (2021-05-27)

Enhancements

Bug fixes

v1.0.23 (2021-03-22)

Enhancements

Bug fixes

v1.0.22 (2021-01-27)

This release introduces a deprecation for the default API guide implementation. Please check migration section below.

Enhancements

Documentation

  • Updated the API guide as it's no longer necessary to load the user struct

Migration

If you've used an API setup for previous version, you'll see the warning PowPersistentSession.Store.PersistentSessionCache.get/2 call without `:pow_config` in second argument is deprecated, refer to the API guide.. It's recommended to replace your APIAuthPlug with the updated version in the API guide.

The larger refactor of cache setup in Pow v1.0.22 means that user struct is always expected to be passed in and returned by the stores, so it is no longer necessary to load the user in the API plug. The PowPersistentSession.Store.PersistentSessionCache has fallback logic to handle the deprecated clauses keyword list, and will load the user correctly.

v1.0.21 (2020-09-13)

Enhancements

  • [Pow.Plug.Base] Will now use the existing :pow_config in the conn when no plug options has been set
  • [PowInvitation.Phoenix.InvitationController] Fixed bug where user was incorrectly redirected to the show action with unsigned token when user struct has no e-mail
  • [Pow.Ecto.Schema] Now only emits warning for primitive Ecto types

Bug fixes

v1.0.20 (2020-04-22)

Now supports Phoenix 1.5, and requires Elixir 1.7 or higher.

Enhancements

v1.0.19 (2020-03-13)

Warning: This release will now sign and verify all tokens, causing previous tokens to no longer work. Any sessions and persistent sessions will be invalidated.

Enhancements

Deprecations

Documentation

v1.0.18 (2020-02-14)

Bug fixes

v1.0.17 (2020-02-04)

Enhancements

Removed

  • [PowResetPassword.Phoenix.ResetPasswordController] Will no longer prevent information leak by checking if PowEmailConfirmation or registration routes are enabled; instead it'll by default prevent user enumeration, but can be disabled if pow_prevent_user_enumeration: false is set in conn.private

Bug fixes

  • [PowPersistentSession.Plug.Base] With custom :persistent_session_store now falls back to :cache_store_backend configuration option
  • [PowResetPassword.Plug] With custom :reset_password_token_store now falls back to :cache_store_backend configuration option
  • [Pow.Plug.Base] With custom :credentials_cache_store now falls back to :cache_store_backend configuration option

Deprecations

v1.0.16 (2020-01-07)

Note: This release contains an important security fix.

Enhancements

Bug fixes

Documentation

v1.0.15 (2019-11-20)

Enhancements

Bug fixes

  • [Router.Phoenix.Router] Fixed bug where resource routes were not filtered correctly according to the path bindings

Deprecations

v1.0.14 (2019-10-29)

Changes

Bug fixes

Deprecations

  • Deprecated Pow.Store.Backend.EtsCache.keys/1
  • Deprecated Pow.Store.Backend.EtsCache.put/3
  • Deprecated Pow.Store.Backend.MnesiaCache.keys/1
  • Deprecated Pow.Store.Backend.MnesiaCache.put/3
  • Deprecated Pow.Store.Base.keys/2
  • Deprecated Pow.Store.Base.put/4
  • Deprecated Pow.Store.CredentialsCache.user_session_keys/3
  • Deprecated Pow.Store.CredentialsCache.sessions/3

v1.0.13 (2019-08-25)

v1.0.12 (2019-08-16)

v1.0.11 (2019-06-13)

  • Fixed bug in router filters with Phoenix 1.4.7

v1.0.10 (2019-06-09)

  • Prevent browser cache of Pow.Phoenix.SessionController.new/2, Pow.Phoenix.RegistrationController.new/2 and PowInvitation.Phoenix.InvitationController.edit/2 by setting "Cache-Control" header unless it already has been customized
  • All links in docs generated with mix docs and on hexdocs.pm now works
  • Generated docs now uses lower case file name except for README, CONTRIBUTING and CHANGELOG
  • Removed duplicate call for Pow.Plug.Session.delete/2 in Pow.Plug.Sesssion.create/3

v1.0.9 (2019-06-04)

Changes

Bug fixes

Deprecations

v1.0.8 (2019-05-24)

Changes

  • Added support for layout in mails with Pow.Phoenix.Mailer.Mail by setting conn.private[:pow_mailer_layout] same way as the Phoenix layout with conn.private[:phoenix_layout]
  • Added :prefix repo opts support to use in multitenant apps
  • Removed @changeset.data.__struct__.pow_user_id_field() in template in favor of using Pow.Ecto.Schema.user_id_field/1

Bug fixes

Deprecations

v1.0.7 (2019-05-01)

  • Fixed bug with Phoenix 1.4.4 scoped routes

v1.0.6 (2019-04-19)

  • Fixed bug where custom layout setting raised exception in Pow.Phoenix.ViewHelpers.layout/1
  • Prevent users from changing their email to one already taken when the PowEmailConfirmation extension has been enabled

v1.0.5 (2019-04-09)

v1.0.4 (2019-03-13)

  • Added PowInvitation to the mix pow.extension.phoenix.gen.templates and mix pow.extension.phoenix.mailer.gen.templates tasks
  • Fixed issue in umbrella projects where extensions wasn't found in environment configuration
  • Fixed so :namespace environment config can be used as web app module name
  • Shell instructions will only be printed if the configuration is missing
  • Now requires that :ecto or :phoenix are included in the dependency list for the app to run respective mix tasks
  • Deprecated Mix.Pow.context_app/0
  • Deprecated Mix.Pow.ensure_dep!/3
  • Deprecated Mix.Pow.context_base/1

v1.0.3 (2019-03-09)

Changes

  • Added PowInvitation extension
  • Added support in Pow.Ecto.Schema for Ecto associations fields
  • Added support for adding custom methods with Pow.Extension.Ecto.Schema through __using__/1 macro in extension ecto schema module
  • Help information raised with invalid schema arguments for pow.install, pow.ecto.install, pow.ecto.gen.migration, and pow.ecto.gen.schema mix tasks
  • PowEmailConfirmation now redirects unconfirmed users to after_registration_path/1 or after_sign_in_path/1 rather than pow_session_path(conn, :new)

Bug fixes

Deprecations

v1.0.2 (2019-02-28)

  • Added flash error message about e-mail confirmation for when user changes e-mail with PowEmailConfirmation enabled
  • Added new_password_changeset/3 and confirm_password_changeset/3 to Pow.Ecto.Schema.Changeset
  • Redis cache store backend guide
  • Correct shell instructions for mix pow.phoenix.gen.templates task
  • Only load environment config in Pow.Config.get/3 when no key is set in the provided config
  • Fixed issue in Pow.Store.Backend.MnesiaCache.keys/1 and Pow.Store.Backend.EtsCache.keys/1 so they now return keys without namespace
  • Pow.Store.Backend.MnesiaCache.put/3 now raises an error if TTL is not provided

Breaking changes

  • PowResetPassword.Plug.reset_password_token/1 has been removed

v1.0.1 (2019-01-27)

  • pow.extension.ecto.gen.migrations mix task will output warning when a migration file won't be generated for any particular extension
  • Leading and trailing whitespace is removed from the user id field value (in addition to forced lower case)
  • An exception is raised when pow_routes/0 or pow_extension_routes/0 are used inside router scopes with aliases
  • Mail view templates assigns now has [user: user, conn: conn] along with the template specific assigns
  • Mail view subject methods now gets the same assigns passed as mail view template assigns instead of only [conn: conn]
  • Added pow_registration_routes/0, pow_session_routes/0 and pow_scope/1 macros to the router module
  • Added guide on how to disable registration

v1.0.0 (2018-11-18)

  • Phoenix 1.4 support
  • Ecto 3.0 support