Releases: pow-auth/pow_assent
Releases · pow-auth/pow_assent
v0.3.1
Changes
- Added Pow minimum requirement
~> 1.0.9#75 - Added repo
:prefixsupport #75 - User identities are now upserted on authorization so additional params can be updated on authorization request. Following methods has been deprecated: #76
PowAssent.Ecto.UserIdentities.Context.create/3in favor ofPowAssent.Ecto.UserIdentities.Context.upsert/3MyApp.UserIdentities.create/2in favor ofMyApp.UserIdentities.upsert/2MyApp.UserIdentities.pow_assent_create/2in favor ofMyApp.UserIdentities.upsert/2PowAssent.Operations.create/3in favor ofPowAssent.Operations.upsert/3PowAssent.Plug.create_identity/2in favor ofPowAssent.Plug.upsert_identity/2
- Use
Pow.Plug.get_plug/1instead of pulling:modfrom the config #74 - Fixed so
uidcan be an integer value inPowAssent.Ecto.UserIdentities.Context. Strategies are no longer expected to convert theuidvalue to binary. The following methods will accepts integeruid: #77PowAssent.Ecto.UserIdentities.Context.get_user_by_provider_uid/3PowAssent.Ecto.UserIdentities.Context.upsert/3PowAssent.Ecto.UserIdentities.Context.create_user/4
- Fixed bug where invited user was not signed in after succesful authorization #70
- Fixed bug where releases with Elixir 1.9.0 didn't have :httpc available #73
v0.3.0
Changes
- Added
PowAssent.Phoenix.ViewHelpers.authorization_link/2andPowAssent.Phoenix.ViewHelpers.deauthorization_link/2ce0d6da#diff-4ac32a78649ca5bdd8e0ba38b7006a1e - Removed
PowAssent.Phoenix.ViewHelpers.provider_link/3#66 - Rewritten plug methods and controller handling so they now pass through additional params such as access token. This makes it possible to e.g. capture access tokens. Now there is a clear distinction between user identity params and user params, and most methods now accepts or returns two separate params. Following methods updated: (#66)
MyApp.UserIdentities.create/3changed toMyApp.UserIdentities.create/2MyApp.UserIdentities.pow_assent_create/3changed toMyApp.UserIdentities.pow_assent_create/2PowAssent.Ecto.UserIdentities.Context.create/4changed toPowAssent.Ecto.UserIdentities.Context.create/3MyApp.UserIdentities.create_user/4changed toMyApp.UserIdentities.create_user/3MyApp.UserIdentities.pow_assent_create_user/4changed toMyApp.UserIdentities.pow_assent_create_user/3PowAssent.Ecto.UserIdentities.Context.create_user/5changed toPowAssent.Ecto.UserIdentities.Context.create_user/4PowAssent.Operations.create/4changed toPowAssent.Operations.create/3PowAssent.Operations.create_user/5changed toPowAssent.Operations.create_user/4PowAssent.Plug.callback/4now returns a tuple with{:ok, user_identity_params, user_params, conn}PowAssent.Plug.authenticate/3changed toPowAssent.Plug.authenticate/2PowAssent.Plug.create_identity/3changed toPowAssent.Plug.create_identity/2PowAssent.Plug.create_user/4now acceptsuser_identity_paramsinstead ofprovideras second argumentPowAssent.Plug.create_user/4now expectsuser_identity_paramsrather thanprovideras second argument
v0.2.4
v0.2.3
Changes
- Added
:authorization_paramsconfig option toPowAssent.Strategy.OAuth#54 - Plug and Phoenix controller now handles
:session_paramsrather than:statefor any params that needs to be stored temporarily during authorization #56 - Added handling of
oauth_token_secretto OAuth strategies #55 - Support any
:plugversion below2.0.0#59 - Fixed bug in
mix pow_assent.ecto.gen.migrationtask where--binary-idflag didn't generate correct migration #53 - Support
:powversion1.0.5#53
v0.2.2
v0.2.1
v0.2.0
Changes
- Detached
Plugfrom strategies - Moved callback registration/session logic from plug to controllers
- Allow for disabling registration by setting just
pow_assent_authorize_routes/0macro in router - Ensure only
:pow_assent_paramssession value only can be read with the same provider param used for the callback tokennow included inPowAssent.Strategy.OAuth.callback/2response- Use
account_already_bound_to_other_user/1message for already taken user identity inPowAssent.Phoenix.RegistrationController
Update your custom strategies
Strategies no longer has access to a Plug.Conn struct. If you use a custom strategy, please update it so it reflects this setup:
defmodule TestProvider do
@behaviour PowAssent.Strategy
@spec authorize_url(Keyword.t()) :: {:ok, %{url: binary()}} | {:error, term()}
def authorize_url(config) do
# Generate authorization url
end
@spec callback(Keyword.t(), map()) :: {:ok, %{user: map()}} | {:error, term()}
def callback(config, params) do
# Handle callback response
end
endv0.1.0
Changes
- Initial release