2.9.0-beta.0 (2024-07-05)
Added
2.8.0 (2024-06-19)
Added
- Add support for an authorize URL override #854 (erichoracek)
2.7.2 (2024-05-08)
Fixed
- fix: removed the possibility of concurrent webauth transactions to handle continuation misuse #848 (desusai7)
- fix: removed the validation of incoming redirect_uri once the webauth flow resumes back #850 (desusai7)
- fix: added url error code dataNotAllowed as a network error #847 (desusai7)
2.7.1 (2024-05-03)
Fixed
2.7.0 (2024-04-12)
Added
2.6.0 (2024-03-01)
Added
- Add support for HTTPS callbacks [SDK-4749] #832 (Widcket)
- Add new error type to AuthenticationError #820 (lordzsolt)
Changed
Deprecated
Fixed
2.5.0 (2023-07-18)
Added
- Add support for validating the
org_name
claim [SDK-4414] #782 (Widcket) - Add more error pairs to
isMultifactorCodeInvalid
[SDK-4195] #779 (Widcket)
2.4.0 (2023-06-15)
Added
- Add
renew()
to Credentials Manager [SDK-4300] #772 (Widcket) - Add hook for web view closing #754 (xavierLowmiller)
Changed
Fixed
Removed
2.3.2 (2022-10-28)
Fixed
- Fix login web page cannot be open by canceling the AS session #735 (hadiidbouk)
2.3.1 (2022-07-29)
Fixed
2.3.0 (2022-07-22)
Added
- Expose error when storing renewed credentials fails #724 (Widcket)
- Add
canRenew()
to the Credentials Manager #723 (Widcket)
Changed
Fixed
2.2.0 (2022-07-14)
Added
Changed
- Pin SimpleKeychain to v0.x #716 (Widcket)
- Append the cause to the parent error message #714 (Widcket)
- Apply recommended Xcode 14 settings #705 (Widcket)
2.1.0 (2022-05-26)
Added
2.0.1 (2022-04-29)
Fixed
2.0.0 (2022-03-14)
2.0.0-beta.1 (2022-01-26)
Added
2.0.0-beta.0 (2022-01-17)
- Make
UserPatchAttributes
class final #611 (Widcket) - Remove remaining
parameters
parameter #607 (Widcket) - Rename
realm
parameter torealmOrConnection
#602 (Widcket) - Make the
Challenge.CodingKeys
enum internal #601 (Widcket) - Rename
createUser
tosignup
#597 (Widcket) - Have
clearSession()
yield aResult
#584 (Widcket) - Have the
revoke()
method yield aResult
#582 (Widcket) - Lowercase the
PasswordlessType
enum cases #580 (Widcket) - Do not check for Refresh Token presence in
hasValid(minTTL:)
#574 (Widcket) - Remove parameterless
tokenExchange()
method #573 (Widcket) - Make AuthTransaction internal #570 (Widcket)
- Remove Web Auth method embedded in Authentication API client #560 (Widcket)
- Use strictly-typed result and error types [SDK-2977] #558 (Widcket)
- Migrate all errors to structs [SDK-2968] #552 (Widcket)
- Decouple Credentials Manager storage from SimpleKeychain [SDK-2936] #551 (adamjmcgrath)
- Replace
JSONObjectPayload
withCodable
onCredentials
[SDK-2958] #549 (Widcket) - Make credentials renewal thread-safe [SDK-2903] #548 (Widcket)
- Remove deprecated metods #543 (Widcket)
- Remove custom
Result
type [SDK-2901] #542 (Widcket) - Use
openid profile email
as the default scope value [SDK-2926] #540 (Widcket) - Drop support for Objective-C [SDK-2894] #539 (Widcket)
- Use only
code
response type and drop implicit grant [SDK-2899] #538 (Widcket) - Remove the
channel
parameter from MFA challenge method [SDK-2904] #536 (Widcket) - Enforce
openid
scope on Web Auth [SDK-2924] #535 (Widcket) - Make some
Credentials
properties non-optional [SDK-2900] #533 (Widcket) - Drop support for HS256 #532 (Widcket)
- Drop older Swift versions #531 (Widcket)
- Remove
parameters
from Authentication API client methods [SDK-2902] #530 (Widcket) - Drop platform versions [SDK-2895] #527 (Widcket)
Added
- Add wrappers with default values for MFA methods #583 (Widcket)
- Add support for async/await #572 (Widcket)
- Add custom description to
Credentials
#571 (Widcket) - Add support for Combine [SDK-2907] #566 (Widcket)
- Add a way to pass custom headers directly to the request [SDK-2908] #562 (adamjmcgrath)
- Add support for subpaths in Auth0 domain [SDK-2963] #557 (Widcket)
- Add support for custom URL sessions to Web Auth #556 (Widcket)
Changed
- Use
Auth0Error
for ID Token validation errors #569 (Widcket) - Migrate existing Objective-C code to Swift [SDK-2905] #547 (adamjmcgrath)
Fixed
- Fix version number reported by telemetry when using SPM #633 (Widcket)
- Fix auth time validation #626 (Widcket)
1.39.0 (2022-03-07)
Added
- [SDK-3145] Add
Auth0Client
parameter to logout and addview
totelemetry.env
for iOS #659 (adamjmcgrath)
1.38.1 (2022-02-02)
Fixed
- Fix
auth_time
validation #652 (Widcket) - Fix version number reported by telemetry when using SPM #651 (Widcket)
1.38.0 (2021-10-29)
Deprecated
1.37.1 (2021-10-15)
Fixed
- Add
Carthage/Build
to the frameworks search path #521 (Widcket) - Add
.macCatalyst
to Package.swift #518 (Widcket)
1.37.0 (2021-10-12)
Changed
Deprecated
1.36.0 (2021-09-01)
Added
- Add parameter option to
Request
#494 (konDeichmann)
Deprecated
1.35.0 (2021-07-19)
Added
- Expose recovery code [SDK-2661] #487 (Widcket)
- [FR-485] Add support for custom LAPolicy when evaluating biometry aut… #486 (krodak)
1.34.0 (2021-07-05)
Added
1.33.1 (2021-06-07)
Changed
1.33.0 (2021-04-23)
Changed
1.32.0 (2021-03-18)
Added
1.31.1 (2021-03-09)
Fixed
1.31.0 (2021-02-12)
Added
- Added support for OOB and Recovery code MFA challenges #442 (ejensen)
- Added support for a wider variety of primitive types for the Credentials expiration date #440 (seanmcneil)
Fixed
1.30.1 (2020-11-11)
Fixed
1.30.0 (2020-10-23)
Added
- Added clearSession to the Objective-C WebAuth wrapper #426 (Widcket)
- Added Swift Package Manager support [SDK-2014] #425 (Widcket)
1.29.0 (2020-10-08)
Changed
Fixed
1.28.0 (2020-08-21)
Added
- Added support for custom issuer for ID Token validation [SDK-1909] #411 (Widcket)
- Added CredentialsManager to watchOS target [SDK-1906] #409 (Widcket)
- Added isVerificationRequired error [SDK-1865] #408 (Widcket)
1.27.0 (2020-07-27)
Added
1.26.0 (2020-06-10)
Added
Changed
1.25.0 (2020-05-18)
Added
- Added support for ephemeral sessions [SDK-1559] #388 (Widcket)
- Bumped dependencies [SDK-1630] #386 (Widcket)
1.24.1 (2020-04-30)
Fixed
1.24.0 (2020-04-29)
Added
1.23.0 (2020-03-30)
Added
- Added support for Refresh Token Rotation [SDK-1420] #369 (Widcket)
- Added support for iOS extensions #365 (Widcket)
- Added Facebook token exchange method [SDK-1401] #358 (Widcket)
Deprecated
Fixed
Security
- [Snyk] Fix for 3 vulnerabilities #360 (crew-security)
1.22.1 (2020-02-28)
Fixed
1.22.0 (2020-02-19)
Added
Changed
1.21.0 (2020-02-04)
Added
- Added a Table of Contents to the README #338 (Widcket)
- Exposed additional Swift calls to Objective-C #342 (npalethorpe)
- Improved OIDC compliance [SDK-976] #346 (Widcket)
Fixed
1.20.0 (2020-01-03)
Added
1.19.3 (2019-11-27)
Fixed
1.19.2 (2019-11-14)
Added
1.19.1 (2019-10-31)
Added
Fixed
1.19.0 (2019-10-15)
Added
- CredentialsManager function to clear and revoke the refresh token #312 (stevehobbsdev)
1.18.0 (2019-09-20)
Added
- Default DismissButtonStyle when using SFSafariViewController iOS 11+ #305 (andrewfoghel)
- Added SIWA token exchange support #304 (cocojoe)
1.17.1 (2019-09-04)
Fixed
1.17.0 (2019-08-27)
Added
- Added support for iOS13 changes in ASWebAuthenticationSession #297 (cocojoe)
- Added authentication method for default directory login #296 (cocojoe)
Notes Behaviour changes in iOS 13 relating to Web Authentication require that in Xcode 11 this library must be compiled using Swift 5.x. This should be the default setting unless it has been manually changed.
1.16.1 (2019-07-29)
Fixed
1.16.0 (2019-07-17)
Added
Fixed
- Fix: Remove force unwrap in AuthSession handler #286 (cocojoe)
- Fix Dismiss AS/SF authentication sessions upon deep-link callback #281 (cysp)
- Update app configuration error message for PKCE #280 (lbalmaceda)
1.15.0 (2019-04-24)
Added
1.14.2 (2019-03-18)
Changed
- Ensure URL encoding of + as %2B Authorize URL [SDK-691] #259 (cocojoe)
- Updated Auth0 Telemetry Format #256 (cocojoe)
1.14.1 (2019-01-11)
Fixed
- Add Fix for Brew in Swift 3.0 CI #254 (cocojoe)
- Pods Fix - Move AuthenticationServices to weak_framework section #253 (ivabra)
1.14.0 (2018-12-06)
Added
- Added ASWebAuthenticationSession Support iOS12 #245 (cocojoe)
- Add Multiple Platform CI #242 (cocojoe)
Fixed
1.13.0 (2018-09-17)
Fixed
1.12.0 (2018-07-26)
Added
- Added support for custom Keychain key in Credentials Manager #208 (danielphillips)
- Enable Credentials Manager for tvOS and Mac Platforms #206 (cocojoe)
Fixed
1.11.1 (2018-06-08)
Added
1.11.0 (2018-05-11)
Added
Changed
1.10.1 (2018-03-08)
Fixed
- Fixed client ID and redirect URL query items not being passed in nonfederated clearSession() #188 (Rypac)
1.10.0 (2018-01-05)
Changed
1.9.2 (2017-11-17)
Fixed
1.9.1 (2017-10-20)
Fixed
1.9.0 (2017-10-19)
Added
1.8.0 (2017-09-15)
Changed
Fixed
1.7.2 (2017-09-11)
Added
Fixed
1.7.1 (2017-07-11)
Added
1.7.0 (2017-06-26)
Added
- Added OIDC Conformant UserInfo class and API Method #122 (cocojoe)
- Added scope property to Credentials #120 (cocojoe)
- Added Touch ID Utility #116 (cocojoe)
Changed
- Use new SFSafariViewController init for iOS11 #125 (cocojoe)
- Refactor deprecated Matcher protocol with Predicate protocol #117 (cocojoe)
Deprecated
1.6.0 (2017-06-06)
Added
- Added WebAuth Auth0 Session Clear #115 (cocojoe)
- Credentials support NSSecureCoding, CredentialsManager Utility, KeyChain Storage #113 (cocojoe)
- Added method to revoke refresh tokens #111 (cocojoe)
Changed
- Xcode 8.3 Compatibility #108 (cocojoe)
- Use built-in Carthage Cache system #107 (hzalaz)
- Update Dependencies #105 (cocojoe)
Fixed
1.5.0 (2017-03-27)
Added
1.4.0 (2017-03-16)
Added
1.3.0 (2017-03-13)
Added
- Authentication can now create WebAuth instances for given connection #98 (cocojoe)
- Added connection scopes to web auth #96 (hzalaz)
Changed
Fixed
1.2.0 (2017-02-06)
Added
- Native Authentication support #86 (cocojoe)
- Added SwiftLint to project #84 (cocojoe)
- Profile timestamp to expect epoch, fallback to ISO8601 #83 (cocojoe)
Fixed
1.1.1 (2017-01-02)
Fixed
1.1.0 (2016-12-16)
Closed issues
Added
- Credentials exposes expires_in if returned after auth #72 (cocojoe)
- Added grant type password realm support #71 (cocojoe)
- Support refresh token authentication #69 (cocojoe)
- Support for audience parameter for WebAuth #67 (cocojoe)
- Multiple respone_type support #65 (cocojoe)
- Support id_token response type #62 (cocojoe)
Changed
Deprecated
1.0.1 (2016-11-23)
Fixed
1.0.0 (2016-10-06)
Closed issues
- Facebook Login web page does not redirect to the application at the first login #51
Fixed
1.0.0-rc.4 (2016-09-18)
This version (and future ones) requires Xcode 8 and Swift 3. For Swift 2.3 please check the branch [email protected]
Closed issues:
Changed:
1.0.0-rc.3 (2016-09-14)
Closed issues:
- Xcode 8 Support? #44 (gbejarano01)
Changed:
1.0.0-rc.2 (2016-09-09)
Changed:
Breaking changes:
The function enableLogging()
was removed, so now to enable logging in the library you should enable it per-client instead of globally.
For Auth API
var auth = Auth0.authentication()
auth.logging(enabled: true)
For Users API
var users = Auth0.users(token: "token")
users.logging(enabled: true)
Also now you can provide a custom Logger to replace the default one (which just uses Swift print
). It only needs to implement the protocol Logger
let logger = MyCustomLogger()
var auth = Auth0.authentication()
auth.usingLogger(logger)
1.0.0-rc.1 (2016-08-17)
Added:
1.0.0-beta.7 (2016-07-29)
Added:
Changed:
- Improve error handling and Auth session management #39 (hzalaz)
- Avoid using global telemetry. #38 (hzalaz)
1.0.0-beta.6 (2016-07-26)
Added:
- Unlink method in ObjC bridge #36 (sebacancinos)
- Load Auth0 credentials from plist from ObjC #37 (hzalaz)
1.0.0-beta.5 (2016-06-30)
Changed:
Breaking changes:
The UserProfile
is not named Profile
(in Objective C is A0Profile
).
1.0.0-beta.4 (2016-06-30)
Added:
Fixed:
- Made
start()
ofConcatRequest
public #31 (pablolvillar) - Send Authorization header was sent for Users API #33 (hzalaz)
1.0.0-beta.3 (2016-06-20)
Added:
- Show better error when PKCE is not enabled in client #30 (hzalaz)
- Auth0 telemetry information #29 (hzalaz)
- Multifactor support for
/oauth/ro
#28 (hzalaz)
Changed:
- Added parameter labels in Authentication API methods #27 (hzalaz)
- Reworked Error handling #26 (hzalaz)
Breaking changes:
Most of the Authentication API methods first parameters labels are required so for example this call:
Auth0
.login("[email protected]", password: "secret", connection: "connection")
now needs to have the usernameOrEmail
parameter label
Auth0
.login(usernameOrEmail: "[email protected]", password: "secret", connection: "connection")
Now all Result
object return ErrorType
instead of a specific error, this means that OS errors like no network, or connection could not be established are not wrapped in any Auth0 error anymore.
Also the error types that Auth0.swift API clients can return are no longer an enum but a simple object:
- Authentication API:
AuthenticationError
- Management API:
ManagementError
Each of them has it's own values according at what each api returns when the request fails. Now to handle Auth0.swift errors in your callback, you can do the following:
Auth0
.login(usernameOrEmail: "[email protected]", password: "secret", connection: "connection")
.start { result in
switch result {
case .Success(let credentials):
print(credentials)
case .Failure(let cause as AuthenticationError):
print("Auth0 error was \(cause)")
case .Failure(let cause):
print("Unknown error: \(cause)")
}
}
Also, AuthenticationError
has some helper methods to check for common failures:
Auth0
.login(usernameOrEmail: "[email protected]", password: "secret", connection: "connection")
.start { result in
switch result {
case .Success(let credentials):
print(credentials)
case .Failure(let cause as AuthenticationError) where cause.isMultifactorRequired:
print("Need to ask the user for his mfa code!")
case .Failure(let cause):
print("Login failed with error: \(cause)")
}
}
1.0.0-beta.2 (2016-06-09)
Added:
- Authenticate a user using web-based authentication with Auth0, e.g. social authentication. (iOS Only) #19,#20 & #24 (hzalaz)
- Load Auth0 clientId & domain from a plist file #21 (hzalaz)
- Request Logging support #23 (hzalaz)
Fixed:
1.0.0-beta.1 (2016-05-25)
Added:
- Auth0 Authentication API endpoints, now you can use Auth0.swift to write your own login box.
Changed:
- Dropped support for iOS 8
- Reworked Swift API and updated to Swift 2.2
- Removed Alamofire as dependency, all networking is done with
NSURLSession
directly - Request callbacks, in Swift, have a single value of enum
Result<Payload,ErrorType>
- Improved code docs
0.3.0 (2016-04-25)
Closed issues:
- Alamofire dependency #5
Merged pull requests:
- Update dependencies and fix compile issues #7 (hzalaz)
- Load domain from Auth0.plist if not in main infoDictionary #4 (bradfol)
0.2.0 (2015-09-17)
Merged pull requests:
0.1.2 (2015-07-03)
Merged pull requests:
0.1.1 (2015-07-02)
0.1.0 (2015-07-02)
* This Change Log was automatically generated by github_changelog_generator