Releases: braintree/braintree_ios
Releases · braintree/braintree_ios
6.0.0-beta1
- Convert
BraintreeCore
module to Swift - Convert
BraintreeAmericanExpress
module to Swift - Convert
BraintreeDataCollector
module to Swift - Removed
PayPalDataCollector
module in favor of singleBraintreeDataCollector
- Kount is no longer supported through the SDK
- Breaking Changes
- Bump minimum supported deployment target to iOS 14+
- Require Carthage 0.38.0+ and xcframeworks via
carthage update --use-xcframeworks
- Require Xcode 14
- Bump Swift Tools Version to 5.7 for CocoaPods & SPM
- BraintreeCore
- Renamed
BTAppContextSwitchDriver
protocol to `BTAppContextSwitchClient BTViewControllerPresentingDelegate
protocol now takes in theclient
parameter instead ofdriver
- Renamed
BTClientMetadataSourceType
toBTClientMetadataSource
- Renamed
BTClientMetadataIntegrationType
toBTClientMetadataIntegration
- Removed static wrapper methods from
BTAppContextSwitcher
- Replaced
BTLogger
withBTLogLevel
andBTLogLevelDescription
- Remove
BTJSONErrorDomain
global constant - Remove
BTJSONErrorCode
- Remove
BTAPIClientErrorDomain
global constant - Add
BTClientTokenError
s.invalidAuthorizationFingerprint
.invalidConfigURL
.invalidFormat
.unsupportedVersion
.failedDecoding
- Add
BTHTTPErrorCode
s.httpResponseInvalid
.urlStringInvalid
.clientApiUrlInvalid
.invalidAuthorizationFingerprint
- Renamed
BTCardNetworkUKMaestro
toBTCardNetworkUkMaestro
inBTCardNetwork
enum
- Renamed
- BraintreeVenmo
- Renamed
BTVenmoDriver
toBTVenmoClient
- Renamed
BTVenmoDriverErrorDomain
toBTVenmoErrorDomain
- Renamed
BTVenmoDriverErrorType
toBTVenmoErrorType
- All errors are now prefixed with
BTVenmoError
instead ofBTVenmoDriverError
- Remove
.unspecified
case fromBTVenmoPaymentMethodUsage
enum - Require
paymentMethodUsage
param inBTVenmoRequest
initializer - Move category extension of
BTConfiguration
intoBraintreeCore
- Renamed
- BraintreePayPal
- Renamed
BTPayPalDriver
toBTPayPalClient
- Renamed
BTPayPalDriverErrorDomain
toBTPayPalErrorDomain
- Renamed
BTPayPalDriverErrorType
toBTPayPalErrorType
- All errors are now prefixed with
BTPayPalError
instead ofBTPayPalDriverError
- Remove
BTPayPalDriver.requestOneTimePayment
in favor ofBTPayPalClient.tokenizePayPalAccount
- Remove
BTPayPalDriver.requestBillingAgreement
in favor ofBTPayPalClient.tokenizePayPalAccount
- Move category extension of
BTConfiguration
intoBraintreeCore
- Renamed
- BraintreeAmericanExpress
- Remove
BTAmericanExpressErrorDomain
global constant - Remove
BTAmericanExpressErrorType
- Make
BTAmericanExpressRewardsBalance
initializer private
- Remove
- BraintreePaymentFlow
- Renamed
BTPaymentFlowDriver
toBTPaymentFlowClient
- Renamed
BTPaymentFlowDriverErrorDomain
toBTPaymentFlowErrorDomain
- Renamed
BTPaymentFlowDriverErrorType
toBTPaymentFlowErrorType
- All errors are now prefixed with
BTPaymentFlowError
instead ofBTPaymentFlowDriverError
- Renamed
BTPaymentFlowDriverDelegate
protocol toBTPaymentFlowClientDelegate
handleRequest
in delegate protocol now takes inpaymentClientDelegate
parameter instead ofpaymentDriverDelegate
- Move category extension of
BTConfiguration
intoBraintreeCore
- Renamed
- PayPalDataCollector
- Removed
PayPalDataCollector
module in favor of singleBraintreeDataCollector
- Removed
- BraintreeDataCollector
- Kount is no longer supported through the SDK
- Combine
PayPalDataCollector
andBraintreeDataCollector
into one module to create single entrypoint for data collection - Merchants should use the new
collectDeviceData
function for data collection which will now return a completion with either device data or an error
- BraintreeApplePay
- Move category extension of
BTConfiguration
intoBraintreeCore
- Move category extension of
- BraintreeUnionPay
- Move category extension of
BTConfiguration
intoBraintreeCore
- Move category extension of
- BraintreeThreeDSecure
- Move category extension of
BTConfiguration
intoBraintreeCore
- Move category extension of
5.18.0
- Deprecate Kount Custom integrations
- Deprecate the
BraintreeUnionPay
module and containing classes- UnionPay cards can now be processed as regular cards (through the
BraintreeCard
module) due to their partnership with Discover
- UnionPay cards can now be processed as regular cards (through the
5.17.0
- BraintreePayPalNativeCheckout (BETA)
- Fix CocoaPods bug emitting "Cannot find interface declaration" error (CocoaPods issue #11672)
- Rename
riskCorrelationId
toriskCorrelationID
- Rename
nativeRequest
torequest
internally intokenizePayPalAccount
tokenizePayPalAccount
now takes in arequest
of typeBTPayPalNativeRequest
instead of anativeRequest
of typeBTPayPalRequest
5.16.0
- BraintreePayPalDataCollector
- Update PPRiskMagnes with a version of 5.4.0 with
ENABLE_BITCODE
removed- The App Store no longer accepts bitcode submissions from Xcode 14
- This version of PPRiskMagnes drops support for Xcode 12 and requires Swift 5.5+
- This version of the PPRiskMagnes framework is dynamic. This reverts a breaking change that was introduced in minor version 5.8.0 (See GitHub issue #920).
- Update PPRiskMagnes with a version of 5.4.0 with
5.15.0
- BraintreePayPalNativeCheckout (BETA)
- Fix
merchant_account_id
andcorrelation_id
keys to be nested at the top level of the internal create order request - Update Package.swift to fetch
PayPalCheckout
binary dependency directly instead of hosting copy inbraintree_ios
repo
- Fix
- BraintreePayPal
- Resolve depreciation warning with
UIApplication.sharedApplication
for iOS 15+ targets (fixes #884)
- Resolve depreciation warning with
5.14.0
- Remove
ENABLE_BITCODE
from framework target build settings- The App Store no longer accepts bitcode submissions from Xcode 14
- BraintreePayPalNativeCheckout (BETA)
- Update NativeCheckout version from 0.106.0 to 0.108.0
- Fixes an issue where merchants with multiple client IDs would fallback to web on subsequent checkout sessions
- Remove exit survey when canceling Native Checkout flow
- BraintreeSEPADirectDebit
- Resolve Invalid Bundle error when uploading to the App Store
5.13.0
- BraintreePayPalNativeCheckout (BETA)
- Fix CocoaPods integrations to pin exact
PayPalCheckout
version - Update NativeCheckout version from 0.100.0 to 0.106.0
- This version update allows US based customers with a confirmed phone number to log into their PayPal account using a one time passcode sent via SMS without needing to authenticate through a webview.
- Update Package.swift to use local
PayPalCheckout
dependency instead of fetching remotely.- Fixes a bug where all Braintree merchants using SPM (including those not using the
BraintreePayPalNativeCheckout
module), would getPayPalCheckout
in their projects.
- Fixes a bug where all Braintree merchants using SPM (including those not using the
- Fix CocoaPods integrations to pin exact
5.12.0
5.11.0
- BraintreeSEPADirectDebit
- Add support for SEPA Direct Debit for approved merchants through the Braintree SDK
- SEPA Direct Debit is only available to select merchants, please contact your Customer Support Manager or Sales to start processing SEPA bank payments
- Merchants should use the
BTSepaDirectDebitClient.tokenize
method while passing in theBTSEPADirectDebitRequest
andcontext
while conforming toASWebAuthenticationPresentationContextProviding
- BraintreePayPalNativeCheckout (BETA)
- This module can handle the same flows as the existing
BraintreePayPal
module, but will present the end user with an in-context checkout flow using native UI components. - To get started, create a
BTPayPalNativeCheckoutClient
, and calltokenizePayPalAccount
with either aBTPayPalNativeCheckoutRequest
(for one time payment transactions), or aBTPayPalNativeVaultRequest
(for vaulted flows)
- This module can handle the same flows as the existing
5.10.0
- Fix potential crash when http request fails with no error but empty data (thanks @cltnschlosser)
- Update Cardinal SDK to version 2.2.5-3