Releases: ueberauth/oauth2
v0.8.3
- Fix compile-time warnings for Elixir 1.4
- Fix dialyzer warnings on
@type params
- Fix
content-type
resolving when there are multiple params - Return the same refresh token unless a new one is provided
- Raise an exception when missing serializer configuration
Diff: v0.8.2...v0.8.3
v0.8.2
v0.8.1
v0.8.0
Improvements
- Added
OAuth2.Client.basic_auth/1
convenience function.
Bug Fixes
- Fixed broken
RefreshToken
strategy reported in #66 - Fixed an issue where checking the
content-type
was defaulting to
application/json
causing Poison to explode.
Diff: v0.7.0...v0.8.0
v0.7.0
v0.7.0 (2016-08-16)
Improvements
- Add support for custom serializers based on MIME types.
- Remove dependency on
HTTPoison
in favor of usinghackney
directly. - Remove dependency on
mimetype_parser
. Poison
is now only atest
dependency.
Bug Fixes
expires_in
values that are returned as strings are now properly parsed into integers forexpires_at
.
Backward Incompatible Changes
Prior to version v0.7.0
OAuth2.Client
was primarily used for the purpose
of interfacing with the OAuth server to retrieve a token. OAuth2.Token
was
then responsible for using that token to make authenticated requests.
In v0.7.0
this interface has been refactored so that an OAuth2.Client
struct
now references an OAuth2.Token
directly and many of the action methods have
been moved so that they are called on OAuth2.Client
, with an instance of the
client struct as their first argument.
Please consult the README for an example of general usage to retrieve a token and make a request.
The following methods have been moved and adjusted so that they take a OAuth2.Client.t
which contains a token, rather than a token directly:
OAuth2.AccessToken.get
->OAuth2.Client.get
OAuth2.AccessToken.get!
->OAuth2.Client.get!
OAuth2.AccessToken.put
->OAuth2.Client.put
OAuth2.AccessToken.put!
->OAuth2.Client.put!
OAuth2.AccessToken.patch
->OAuth2.Client.patch
OAuth2.AccessToken.patch!
->OAuth2.Client.patch!
OAuth2.AccessToken.post
->OAuth2.Client.post
OAuth2.AccessToken.post!
->OAuth2.Client.post!
OAuth2.AccessToken.delete
->OAuth2.Client.delete
OAuth2.AccessToken.delete!
->OAuth2.Client.delete!
OAuth2.AccessToken.refresh
->OAuth2.Client.refresh_token
OAuth2.AccessToken.refresh!
->OAuth2.Client.refresh_token!
Additionally, the following methods have been moved to OAuth2.Request
OAuth2.AccessToken.request
->OAuth2.Request.request
OAuth2.AccessToken.request!
->OAuth2.Request.request!
Diff: v0.6.0...v0.7.0
v0.6.0
v0.5.0
Improvements
- You can now request a refresh token with
OAuth2.AccessToken.refresh
. The!
alternative is also available. - Added
Bypass
for improved testability. Plug
is no longer a direct dependency. It is only included as a test dependency through theBypass
library.OAuth2.AccessToken
now supportsDELETE
requests withdelete
anddelete!
- More tests!
Bug Fixes
- Params are no longer sent in both the body and as a query string for
POST
requests withOAuth2.Client.get_token
- Responses will no longer be parsed automatically if the
content-type
is not supported by this lib. Registering custom parsers is a future goal for this library. - Errors are now properly raised when they occur.
Backwards Incompatible Changes
OAuth2.new/1
has been removed. UseOAuth2.Client.new/1
instead.
Diff: v0.4.0...v0.5.0
v0.4.0
Additions/Improvements
OAuth2.AccessToken
now supports:post
,post!
,put
,put!
,patch
, andpatch!
.- Better documentation
- Test coverage improved
Bug fixes
- Empty response bodies are no longer decoded
Breaking changes
OAuth2.AccessToken.get!/4
now returnsOAuth2.Response{}
instead of just the parsed body.
Aknowledgements
Thanks to @meatherly, @dejanstrbac, and @optikfluffel for their contributions!
Diff: v0.3.0...v0.4.0
v0.3.0
Bump Plug
dependency to 1.0
.
Diff: v0.2.0...v0.3.0
v0.2.0
:erlang.now
was replaced with:os.timestamp
for compatibility with Erlang 18- You can now pass options to the
HTTPoison
library withOAuth2.Client.get_token/4
andOAuth2.Client.get_token!/4
Diff: v0.1.1...v0.2.0