Skip to content

Commit

Permalink
Merge pull request #1555 from Adyen/develop
Browse files Browse the repository at this point in the history
Release 5.3.1
  • Loading branch information
jreij authored Apr 10, 2024
2 parents c8705d4 + b334959 commit ba2264f
Show file tree
Hide file tree
Showing 170 changed files with 3,433 additions and 9,707 deletions.
12 changes: 9 additions & 3 deletions .github/workflows/generate_dependency_graph.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,15 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v4

# Setup Java 17
# https://github.com/marketplace/actions/setup-java-jdk
- name: Set up JDK
uses: actions/setup-java@v4
with:
ref: ${{ github.head_ref }}
fetch-depth: 0
distribution: 'zulu'
java-version: 17
cache: 'gradle'

- name: Setup Graphviz
uses: ts-graphviz/setup-graphviz@v1
Expand All @@ -30,4 +36,4 @@ jobs:
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
branch: ${{ github.head_ref }}
branch: ${{ github.ref }}
8 changes: 3 additions & 5 deletions 3ds2/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.adyen3ds2'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ fun CheckoutConfiguration.adyen3DS2(
return this
}

fun CheckoutConfiguration.getAdyen3DS2Configuration(): Adyen3DS2Configuration? {
internal fun CheckoutConfiguration.getAdyen3DS2Configuration(): Adyen3DS2Configuration? {
return getActionConfiguration(Adyen3DS2Configuration::class.java)
}

Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,23 +31,23 @@ Import the corresponding module in your `build.gradle` file.

For Drop-in:
```groovy
implementation "com.adyen.checkout:drop-in-compose:5.3.0"
implementation "com.adyen.checkout:drop-in-compose:5.3.1"
```
For the Credit Card component:
```groovy
implementation "com.adyen.checkout:card:5.3.0"
implementation "com.adyen.checkout:components-compose:5.3.0"
implementation "com.adyen.checkout:card:5.3.1"
implementation "com.adyen.checkout:components-compose:5.3.1"
```

### Without Jetpack Compose

For Drop-in:
```groovy
implementation "com.adyen.checkout:drop-in:5.3.0"
implementation "com.adyen.checkout:drop-in:5.3.1"
```
For the Credit Card component:
```groovy
implementation "com.adyen.checkout:card:5.3.0"
implementation "com.adyen.checkout:card:5.3.1"
```

The library is available on [Maven Central][mavenRepo].
Expand Down
75 changes: 11 additions & 64 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,71 +8,18 @@
[//]: # (## Deprecated)
[//]: # ( - Configurations public constructor are deprecated, please use each Configuration's builder to make a Configuration object)

## New
- A new way to create a configuration using DSL to be more declarative and concise:
```Kotlin
CheckoutConfiguration(
environment = environment,
clientKey = clientKey,
shopperLocale = shopperLocale,
amount = amount,
) {
dropIn {
setEnableRemovingStoredPaymentMethods(true)
}

card {
setHolderNameRequired(true)
setShopperReference("...")
}

adyen3DS2 {
setThreeDSRequestorAppURL("...")
}
}
```

- For the Card Component, you can use the new [Address Lookup functionality](docs/ADDRESS_LOOKUP.md).
- For voucher actions: when the `url` or `downloadUrl` is not included, the shopper has the option to select **Save as image** and save the voucher to the device's `Downloads` folder.
- You can now set your own `AdyenLogger` instance with `AdyenLogger.setLogger`. This gives the ability to intercept logs and handle them in your own way.
- [Instructions](example-app/README.md) to use the testing app in the repository. You can follow `How to migrate` section [here](https://github.com/Adyen/adyen-android/pull/1505).
- Payment methods:
- Multibanco. Payment method type: **multibanco**.
- Pay Easy. Payment method type: **econtext_atm**.
- Convenience Stores Japan. Payment method type: **econtext_stores**
- Online Banking Japan. Payment method type: **econtext_online**.
- Seven-Eleven: Payment method type: **econtext_seven_eleven**

## Fixed
- When building `minifyEnabled` without the `kotlin-parcelize` plugin in your project, the build should no longer crash.
- When handling actions, you no longer get the `IllegalArgumentException: Unsupported delegate type` error that causes a crash.
- For Drop-in and Components, when `?android:attr/textColor` is not defined in your own theme, the Card Component no longer crashes.
- The `onAdditionalDetails` event is now triggered only once. Previously, the event was triggered multiple times in some edge cases.
- The build output no longer contains warnings about multiple substitutions specified in non-positional format in string resources.
- For the Card Component, we fixed localization issues that occurred when using the Address Lookup functionality.
- Overriding some of the XML styles without specifying a parent style no longer causes a build error.

## Deprecated
- When creating a configuration, the `Builder` constructors with a `Context` is deprecated. You can now omit the `context` parameter.
- `PermissionException`. Handle permissions through `ActionComponentCallback`, `SessionComponentCallback`, or `ComponentCallback` callbacks instead.
- The styles for vouchers have been changed:
- | Previous (v5.2.0 or earlier) | Now (v5.3.0) |
|---------------------------------------------|-----------------------------------------------|
| `AdyenCheckout.Voucher.Description.Bacs` | `AdyenCheckout.Voucher.Simple.Description` |
| `AdyenCheckout.Voucher.Description.Boleto` | `AdyenCheckout.Voucher.Full.Description` |
| `AdyenCheckout.Voucher.ExpirationDateLabel` | `AdyenCheckout.Voucher.InformationFieldLabel` |
| `AdyenCheckout.Voucher.ExpirationDate` | `AdyenCheckout.Voucher.InformationFieldValue` |
| `AdyenCheckout.Voucher.ButtonCopyCode` | `AdyenCheckout.Voucher.Button.CopyCode` |
| `AdyenCheckout.Voucher.ButtonDownloadPdf` | `AdyenCheckout.Voucher.Button.DownloadPdf` |
- Logger.LogLevel has been deprecated.
- | Previous (v5.2.0 or earlier) | Now (v5.3.0) |
|------------------------------------------|-------------------------------------------------|
| `Logger.LogLevel` | `AdyenLogLevel` |
| `AdyenLogger.setLogLevel(logLevel: Int)` | `AdyenLogger.setLogLevel(level: AdyenLogLevel)` |
## Removed
- You can no longer use functions like `CheckoutConfiguration.getCardConfiguration()` or `CheckoutConfiguration.getDropInConfiguration()` to get configurations from the `CheckoutConfiguration` object. When starting Drop-in or Components, pass the full `CheckoutConfiguration` object.

## Changed
- When creating a configuration, the `shopperLocale` parameter is now optional.
- Sessions flow: when you don't set it, the shopper locale is set to the value included in the `/sessions` request.
- Advanced flow: when you don't set it, the shopper local is set to the primary user locale on the device.
- For Drop-in, all actions now start in expanded mode.
- For the Google Pay Component, you no longer need to manually import the `3ds2` module to handle transactions that require Native 3D Secure 2 challenge.
- If you use `DropInServiceResult.Error` without specifying an error message, the default has changed from `Error sending payment. Please try again.` to `An unknown error occurred`.
- For the Sessions flow:
- When starting Drop-in (with `DropIn.startPayment`) or creating a Component (with `YourComponent.PROVIDER.get`), the `configuration` parameter is now optional.
- When using `CheckoutSessionProvider.createSession` to create a `CheckoutSession`, you can pass only `environment` and `clientKey` instead of the whole configuration.
- Removing stored payment methods is now handled internally. You no longer need to override the `onRemoveStoredPaymentMethod` function.
- Dependency versions:
| Name | Version |
|--------------------------------------------------------------------------------------------------------|-------------------------------|
| [Android Gradle plugin](https://developer.android.com/build/releases/gradle-plugin) | **8.3.1** |
3 changes: 2 additions & 1 deletion SECURITY.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
# Disclosing security issues

We welcome reports of possible vulnerabilities or issues as part of our [responsible disclosure policy](https://www.adyen.com/policies-and-disclaimer/responsible-disclosure). For more information check out this page on [how to disclose a security issue](https://help.adyen.com/en_US/knowledge/security/product-security/how-do-i-disclose-a-security-issue).
We welcome reports of possible vulnerabilities or issues as part of our [responsible disclosure policy](https://www.adyen.com/policies-and-disclaimer/responsible-disclosure). For more information go to
[this page](https://www.adyen.com/policies-and-disclaimer/responsible-disclosure).
8 changes: 3 additions & 5 deletions ach/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.ach'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,7 @@ fun CheckoutConfiguration.achDirectDebit(
return this
}

fun CheckoutConfiguration.getACHDirectDebitConfiguration(): ACHDirectDebitConfiguration? {
internal fun CheckoutConfiguration.getACHDirectDebitConfiguration(): ACHDirectDebitConfiguration? {
return getConfiguration(PaymentMethodTypes.ACH)
}

Expand Down
8 changes: 3 additions & 5 deletions action-core/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.action.core'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
8 changes: 3 additions & 5 deletions action/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.action'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
8 changes: 3 additions & 5 deletions await/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.await'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
package com.adyen.checkout.await

import android.content.Context
import androidx.annotation.VisibleForTesting
import com.adyen.checkout.components.core.Amount
import com.adyen.checkout.components.core.AnalyticsConfiguration
import com.adyen.checkout.components.core.CheckoutConfiguration
Expand Down Expand Up @@ -105,7 +106,8 @@ fun CheckoutConfiguration.await(
return this
}

fun CheckoutConfiguration.getAwaitConfiguration(): AwaitConfiguration? {
@VisibleForTesting
internal fun CheckoutConfiguration.getAwaitConfiguration(): AwaitConfiguration? {
return getActionConfiguration(AwaitConfiguration::class.java)
}

Expand Down
8 changes: 3 additions & 5 deletions bacs/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.bacs'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -131,7 +131,7 @@ fun CheckoutConfiguration.bacsDirectDebit(
return this
}

fun CheckoutConfiguration.getBacsDirectDebitConfiguration(): BacsDirectDebitConfiguration? {
internal fun CheckoutConfiguration.getBacsDirectDebitConfiguration(): BacsDirectDebitConfiguration? {
return getConfiguration(PaymentMethodTypes.BACS)
}

Expand Down
8 changes: 3 additions & 5 deletions bcmc/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.bcmc'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -187,7 +187,7 @@ fun CheckoutConfiguration.bcmc(
return this
}

fun CheckoutConfiguration.getBcmcConfiguration(): BcmcConfiguration? {
internal fun CheckoutConfiguration.getBcmcConfiguration(): BcmcConfiguration? {
return getConfiguration(PaymentMethodTypes.BCMC)
}

Expand Down
8 changes: 3 additions & 5 deletions blik/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.blik'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ fun CheckoutConfiguration.blik(
return this
}

fun CheckoutConfiguration.getBlikConfiguration(): BlikConfiguration? {
internal fun CheckoutConfiguration.getBlikConfiguration(): BlikConfiguration? {
return getConfiguration(PaymentMethodTypes.BLIK)
}

Expand Down
8 changes: 3 additions & 5 deletions boleto/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.boleto'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ fun CheckoutConfiguration.boleto(
return this
}

fun CheckoutConfiguration.getBoletoConfiguration(): BoletoConfiguration? {
internal fun CheckoutConfiguration.getBoletoConfiguration(): BoletoConfiguration? {
return BoletoComponent.PAYMENT_METHOD_TYPES.firstNotNullOfOrNull { key ->
getConfiguration(key)
}
Expand Down
8 changes: 3 additions & 5 deletions card/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,11 @@ apply from: "${rootDir}/config/gradle/sharedTasks.gradle"

android {
namespace 'com.adyen.checkout.card'
compileSdkVersion compile_sdk_version
compileSdk compile_sdk_version

defaultConfig {
minSdkVersion min_sdk_version
targetSdkVersion target_sdk_version
versionCode version_code
versionName version_name
minSdk min_sdk_version
targetSdk target_sdk_version

testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
consumerProguardFiles "consumer-rules.pro"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -330,7 +330,7 @@ fun CheckoutConfiguration.card(
return this
}

fun CheckoutConfiguration.getCardConfiguration(): CardConfiguration? {
internal fun CheckoutConfiguration.getCardConfiguration(): CardConfiguration? {
return getConfiguration(PaymentMethodTypes.SCHEME)
}

Expand Down
Loading

0 comments on commit ba2264f

Please sign in to comment.