Releases: privy-io/privy-ios
Releases · privy-io/privy-ios
2.9.2
2.9.1
Fixes
- Circular dependency during SDK init
2.9.0
Note: Do not use this release
This release has a known SDK crash, which is fixed in 2.9.1. Please use 2.9.1 or higher.
Added
- Embedded wallets now have an
importedboolean field. - Added a new config field:
PrivyConfig.PrivyEmbeddedWalletConfig.disableAutomaticmigration. - Supports embedded wallet migration onto TEE execution (automatically or manually via
user.migrateWalletsIfNeeded()) - Add OAuth account linking.
- Operations on wallets that need MFA now throw
.embeddedWalletFailure(reason: .missingOrInvalidMfa)if MFA is not provided. - Add support for verifying TOTP MFA codes via
user.mfa.totp.verify.submit(code: String). - Add support for sending SMS MFA codes via
user.mfa.sms.verify.sendCode(). - Add support for verifying SMS MFA codes via
user.mfa.sms.verify.submit(code: String). - Add support for verifying passkey MFA codes via
user.mfa.passkeys.verify.submit(relyingParty: String). - Add support for enrolling TOTP MFA via:
user.mfa.totp.enroll.generateSecret().user.mfa.totp.enroll.submit(code: String).
- Add support for enrolling SMS MFA via:
user.mfa.sms.enroll.sendCode(to phoneNumber: String).user.mfa.sms.enroll.submit(code: String, sentTo phoneNumber: String).
- Add support for enrolling passkey MFA via:
user.mfa.passkeys.enroll.submit(credentialIds: [String])
- Add support for unenrolling TOTP MFA via
user.mfa.totp.unenroll(). - Add support for unenrolling SMS MFA via
user.mfa.sms.unenroll(). - Add support for unenrolling passkey MFA via
user.mfa.passkeys.unenroll(removeForLogin:). WhenremoveForLoginistrue(the default), the passkey is also unlinked from login. - Add support for keeping unlinked passkeys as a valid MFA method via
privy.passkey.unlink(credentialId:, removeAsMfa: false). - Add support for automatic MFA prompting via
PrivyMFAConfig(delegate:)inPrivyConfig, or at runtime viaprivy.mfa.setConfig(_:). When a delegate is set, the SDK automatically callsonMfaRequired(for:)when wallet operations require MFA verification. - Add
.embeddedWalletFailure(reason: .timeoutOnMfa)error thrown when MFA verification times out. - Add
privy.mfa.resumeBlockedActions()to unblock pending wallet operations after MFA verification. - Add
privy.user.generateAuthorizationSignature
2.9.0-beta.1
Added
- Added support for OAuth account linking.
- Operations on wallets that need MFA now throw
.embeddedWalletFailure(reason: .missingOrInvalidMfa)if MFA is not provided. - Added support for verifying TOTP MFA codes via
user.mfa.totp.verify.submit(code: String). - Added support for sending SMS MFA codes via
user.mfa.sms.verify.sendCode(). - Added support for verifying SMS MFA codes via
user.mfa.sms.verify.submit(code: String). - Added support for verifying passkey MFA codes via
user.mfa.passkeys.verify.submit(relyingParty: String). - Added support for enrolling TOTP MFA via:
user.mfa.totp.enroll.generateSecret().user.mfa.totp.enroll.submit(code: String).
- Added support for enrolling SMS MFA via:
user.mfa.sms.enroll.sendCode(to phoneNumber: String).user.mfa.sms.enroll.submit(code: String, sentTo phoneNumber: String).
- Added support for enrolling passkey MFA via:
user.mfa.passkeys.enroll.submit(credentialIds: [String])
- Added support for unenrolling TOTP MFA via
user.mfa.totp.unenroll(). - Added support for unenrolling SMS MFA via
user.mfa.sms.unenroll(). - Added support for unenrolling passkey MFA via
user.mfa.passkeys.unenroll(removeForLogin:). WhenremoveForLoginistrue(the default), the passkey is also unlinked from login. - Added support for keeping unlinked passkeys as a valid MFA method via
privy.passkey.unlink(credentialId:, removeAsMfa: false). - Added support for automatic MFA prompting via
PrivyMFAConfig(delegate:)inPrivyConfig, or at runtime viaprivy.mfa.setConfig(_:). When a delegate is set, the SDK automatically callsonMfaRequired(for:)when wallet operations require MFA verification. .embeddedWalletFailure(reason: .timeoutOnMfa)error now thrown when MFA verification times out.- Added
privy.mfa.resumeBlockedActions()to unblock pending wallet operations after MFA verification. - Added
privy.user.generateAuthorizationSignature- Experimental Generates a cryptographic signature for an API request payload using the authenticated user's signing key.
2.8.0
2.7.1
Added
- Expose MFA methods on the PrivyUser object
2.7.0
Added
- Passkey login
- Passkey signup
- Passkey link
- Passkey unlink
2.6.0
Added
- Adds support for
signTransactionto the Solana provider - Adds support for
signAndSendTransactionto the Solana provider - Adds support for login and linking through Sign in with Solana
- Adds support for unlinking an external Solana wallet
Deprecated
The following methods have been deprecated in favor of new names, which have identical functionality:
.siwe.generateSiweMessage→.siwe.generateMessage.siwe.loginWithSiwe→.siwe.login.siwe.linkWithSiwe→.siwe.link
Changed
- Minimum iOS version is now 17.0
- Minimum macOS version is now 14.0
- Bumps internal dependencies to latest versions
2.5.3
Fixes
- Add some additional guard rails to webview timeout issues
2.5.2
- Adds some safeguards to flows to prevent timeouts