Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump Stripe terminal SDK from v2.9.0 to v2.10.0 #6592

Merged

Conversation

AnirudhBhat
Copy link
Contributor

Closes: #6591

Description

Bump Stripe terminal SDK from v2.9.0 to v2.10.0

ChangeLog:
2.10.0 - 2022-05-23

New: Added currency characters to WisePad 3 display. See stripe/stripe-terminal-android#147 for details.

New: Refunds can now be collected when using a simulated reader. See stripe/stripe-terminal-android#226 for details.

Update: When connecting to Internet Readers, the SDK uses an embedded DNS to resolve reader IP addresses. This
resolves an error experienced by users of some DNS providers.

Fix: Resolved USB_PERMISSION_DENIED error after granting permission. See stripe/stripe-terminal-android#231 for details

Testing instructions

  1. Refunds can now be collected when using a simulated reader - Ensure we can collect Interac refunds using a simulated reader.
  2. Ensure IPP works end to end on a high level.
  • I have considered if this change warrants user-facing release notes and have added them to RELEASE-NOTES.txt if necessary.

ChangeLog:
2.10.0 - 2022-05-23
New: Added currency characters to WisePad 3 display. See stripe/stripe-terminal-android#147 for details.
New: Refunds can now be collected when using a simulated reader. See stripe/stripe-terminal-android#226 for details.
Update: When connecting to Internet Readers, the SDK uses an embedded DNS to resolve reader IP addresses. This resolves an error experienced by users of some DNS providers.
Fix: Resolved USB_PERMISSION_DENIED error after granting permission. See stripe/stripe-terminal-android#231 for details
@AnirudhBhat AnirudhBhat added the feature: mobile payments Related to mobile payments / card present payments / Woo Payments. label May 25, 2022
@AnirudhBhat AnirudhBhat added this to the 9.3 milestone May 25, 2022
@peril-woocommerce
Copy link

You can trigger optional UI/connected tests for these changes by visiting CircleCI here.

@wpmobilebot
Copy link
Collaborator

Found 1 violations:

The PR caused the following dependency changes:

expand

 \--- project :libs:cardreader
-     \--- com.stripe:stripeterminal:2.9.0
-          +--- com.stripe:stripeterminal-core:2.9.0
-          |    +--- com.stripe:stripeterminal-external:2.9.0
-          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
-          |    |    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10
-          |    |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.6.10 (*)
-          |    |    |    \--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.6.10 (*)
-          |    |    +--- androidx.annotation:annotation:1.3.0
-          |    |    +--- com.google.guava:guava:28.1-android -> 31.0.1-jre
-          |    |    |    +--- com.google.guava:failureaccess:1.0.1
-          |    |    |    +--- com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
-          |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
-          |    |    |    +--- org.checkerframework:checker-qual:3.12.0
-          |    |    |    +--- com.google.errorprone:error_prone_annotations:2.7.1 -> 2.9.0
-          |    |    |    \--- com.google.j2objc:j2objc-annotations:1.3
-          |    |    +--- com.squareup.moshi:moshi:1.13.0
-          |    |    |    +--- com.squareup.okio:okio:2.10.0 -> 3.0.0 (*)
-          |    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
-          |    |    \--- com.stripe:stripeterminal-internal-models:2.9.0
-          |    |         +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
-          |    |         +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
-          |    |         +--- androidx.annotation:annotation:1.3.0
-          |    |         \--- com.squareup.moshi:moshi:1.13.0 (*)
-          |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
-          |    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
-          |    +--- androidx.annotation:annotation:1.3.0
-          |    +--- com.stripe:stripeterminal-internal-common:2.9.0
-          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
-          |    |    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
-          |    |    +--- androidx.annotation:annotation:1.3.0
-          |    |    +--- com.google.guava:guava:28.1-android -> 31.0.1-jre (*)
-          |    |    +--- com.google.dagger:dagger:2.41 (*)
-          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.0 -> 1.6.1 (*)
-          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0 -> 1.6.1 (*)
-          |    |    +--- com.squareup.moshi:moshi:1.13.0 (*)
-          |    |    +--- com.squareup.moshi:moshi-adapters:1.13.0
-          |    |    |    +--- com.squareup.moshi:moshi:1.13.0 (*)
-          |    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
-          |    |    +--- com.stripe:stripeterminal-internal-models:2.9.0 (*)
-          |    |    \--- com.stripe:stripeterminal-external:2.9.0 (*)
-          |    +--- com.stripe:stripeterminal-internal-models:2.9.0 (*)
-          |    +--- com.google.code.gson:gson:2.9.0
-          |    +--- io.reactivex.rxjava2:rxandroid:2.1.1
-          |    |    \--- io.reactivex.rxjava2:rxjava:2.2.6 -> 2.2.21
-          |    |         \--- org.reactivestreams:reactive-streams:1.0.3
-          |    +--- io.reactivex.rxjava2:rxjava:2.2.21 (*)
-          |    +--- io.reactivex.rxjava2:rxkotlin:2.4.0
-          |    |    +--- io.reactivex.rxjava2:rxjava:2.2.10 -> 2.2.21 (*)
-          |    |    \--- org.jetbrains.kotlin:kotlin-stdlib:1.3.40 -> 1.6.10 (*)
-          |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-rx2:1.6.0 -> 1.6.1
-          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1 (*)
-          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.1 (*)
-          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-reactive:1.6.1
-          |    |    |    +--- org.reactivestreams:reactive-streams:1.0.3
-          |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1 (*)
-          |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.1 (*)
-          |    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
-          |    |    +--- io.reactivex.rxjava2:rxjava:2.2.8 -> 2.2.21 (*)
-          |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
-          |    +--- com.squareup.okhttp3:okhttp:4.9.3 (*)
-          |    +--- androidx.lifecycle:lifecycle-livedata-ktx:2.4.0 -> 2.4.1
-          |    |    +--- androidx.lifecycle:lifecycle-livedata:2.4.1 (*)
-          |    |    +--- androidx.lifecycle:lifecycle-livedata-core-ktx:2.4.1 (*)
-          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.5.30 -> 1.6.10 (*)
-          |    |    \--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0 -> 1.6.1 (*)
-          |    +--- androidx.security:security-crypto:1.1.0-alpha03
-          |    |    +--- androidx.annotation:annotation:1.1.0 -> 1.3.0
-          |    |    +--- com.google.crypto.tink:tink-android:1.5.0
-          |    |    \--- androidx.collection:collection:1.1.0 (*)
-          |    +--- androidx.lifecycle:lifecycle-process:2.4.0 -> 2.4.1 (*)
-          |    +--- com.jaredrummler:android-device-names:1.1.9
-          |    |    \--- androidx.annotation:annotation:1.1.0 -> 1.3.0
-          |    +--- com.google.dagger:dagger:2.41 (*)
-          |    +--- com.google.guava:guava:28.1-android -> 31.0.1-jre (*)
-          |    +--- androidx.room:room-runtime:2.4.1 -> 2.4.2 (*)
-          |    +--- com.jakewharton.timber:timber:5.0.1
-          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.5.21 -> 1.6.10 (*)
-          |    |    \--- org.jetbrains:annotations:20.1.0
-          |    +--- com.neovisionaries:nv-i18n:1.27
-          |    +--- com.scottyab:rootbeer-lib:0.0.9
-          |    +--- org.apache.commons:commons-compress:1.20
-          |    +--- com.squareup.wire:wire-moshi-adapter:4.0.0
-          |    |    +--- com.squareup.wire:wire-runtime:4.0.0
-          |    |    |    \--- com.squareup.wire:wire-runtime-jvm:4.0.0
-          |    |    |         +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31 -> 1.6.10 (*)
-          |    |    |         +--- com.squareup.okio:okio:3.0.0 (*)
-          |    |    |         \--- org.jetbrains.kotlin:kotlin-stdlib-common:1.5.31 -> 1.6.10
-          |    |    +--- com.squareup.moshi:moshi:1.12.0 -> 1.13.0 (*)
-          |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.5.31 -> 1.6.10 (*)
-          |    \--- com.squareup.wire:wire-runtime:4.0.0 (*)
-          +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
-          +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
-          \--- androidx.annotation:annotation:1.3.0
+     \--- com.stripe:stripeterminal:2.10.0
+          +--- com.stripe:stripeterminal-core:2.10.0
+          |    +--- com.stripe:stripeterminal-external:2.10.0
+          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          |    |    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10
+          |    |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.6.10 (*)
+          |    |    |    \--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.6.10 (*)
+          |    |    +--- androidx.annotation:annotation:1.3.0
+          |    |    +--- com.squareup.moshi:moshi:1.13.0
+          |    |    |    +--- com.squareup.okio:okio:2.10.0 -> 3.0.0 (*)
+          |    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
+          |    |    \--- com.stripe:stripeterminal-internal-models:2.10.0
+          |    |         +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          |    |         +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
+          |    |         +--- androidx.annotation:annotation:1.3.0
+          |    |         \--- com.squareup.moshi:moshi:1.13.0 (*)
+          |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          |    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
+          |    +--- androidx.annotation:annotation:1.3.0
+          |    +--- com.stripe:stripeterminal-internal-common:2.10.0
+          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          |    |    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
+          |    |    +--- androidx.annotation:annotation:1.3.0
+          |    |    +--- com.google.guava:guava:28.1-android -> 31.0.1-jre
+          |    |    |    +--- com.google.guava:failureaccess:1.0.1
+          |    |    |    +--- com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava
+          |    |    |    +--- com.google.code.findbugs:jsr305:3.0.2
+          |    |    |    +--- org.checkerframework:checker-qual:3.12.0
+          |    |    |    +--- com.google.errorprone:error_prone_annotations:2.7.1 -> 2.9.0
+          |    |    |    \--- com.google.j2objc:j2objc-annotations:1.3
+          |    |    +--- com.google.dagger:dagger:2.41 (*)
+          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.1 (*)
+          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1 (*)
+          |    |    +--- com.squareup.moshi:moshi:1.13.0 (*)
+          |    |    +--- com.squareup.moshi:moshi-adapters:1.13.0
+          |    |    |    +--- com.squareup.moshi:moshi:1.13.0 (*)
+          |    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
+          |    |    +--- com.stripe:stripeterminal-internal-models:2.10.0 (*)
+          |    |    \--- com.stripe:stripeterminal-external:2.10.0 (*)
+          |    +--- com.stripe:stripeterminal-internal-models:2.10.0 (*)
+          |    +--- com.google.code.gson:gson:2.9.0
+          |    +--- io.reactivex.rxjava2:rxandroid:2.1.1
+          |    |    \--- io.reactivex.rxjava2:rxjava:2.2.6 -> 2.2.21
+          |    |         \--- org.reactivestreams:reactive-streams:1.0.3
+          |    +--- io.reactivex.rxjava2:rxjava:2.2.21 (*)
+          |    +--- io.reactivex.rxjava2:rxkotlin:2.4.0
+          |    |    +--- io.reactivex.rxjava2:rxjava:2.2.10 -> 2.2.21 (*)
+          |    |    \--- org.jetbrains.kotlin:kotlin-stdlib:1.3.40 -> 1.6.10 (*)
+          |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-rx2:1.6.1
+          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1 (*)
+          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.1 (*)
+          |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-reactive:1.6.1
+          |    |    |    +--- org.reactivestreams:reactive-streams:1.0.3
+          |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.1 (*)
+          |    |    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-bom:1.6.1 (*)
+          |    |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
+          |    |    +--- io.reactivex.rxjava2:rxjava:2.2.8 -> 2.2.21 (*)
+          |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.0 -> 1.6.10 (*)
+          |    +--- com.squareup.okhttp3:okhttp:4.9.3 (*)
+          |    +--- androidx.lifecycle:lifecycle-livedata-ktx:2.4.1
+          |    |    +--- androidx.lifecycle:lifecycle-livedata:2.4.1 (*)
+          |    |    +--- androidx.lifecycle:lifecycle-livedata-core-ktx:2.4.1 (*)
+          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.5.30 -> 1.6.10 (*)
+          |    |    \--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.0 -> 1.6.1 (*)
+          |    +--- androidx.security:security-crypto:1.1.0-alpha03
+          |    |    +--- androidx.annotation:annotation:1.1.0 -> 1.3.0
+          |    |    +--- com.google.crypto.tink:tink-android:1.5.0
+          |    |    \--- androidx.collection:collection:1.1.0 (*)
+          |    +--- androidx.lifecycle:lifecycle-process:2.4.1 (*)
+          |    +--- com.jaredrummler:android-device-names:1.1.9
+          |    |    \--- androidx.annotation:annotation:1.1.0 -> 1.3.0
+          |    +--- com.google.dagger:dagger:2.41 (*)
+          |    +--- com.google.guava:guava:28.1-android -> 31.0.1-jre (*)
+          |    +--- androidx.room:room-runtime:2.4.1 -> 2.4.2 (*)
+          |    +--- androidx.room:room-ktx:2.4.1 -> 2.4.2 (*)
+          |    +--- com.jakewharton.timber:timber:5.0.1
+          |    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.5.21 -> 1.6.10 (*)
+          |    |    \--- org.jetbrains:annotations:20.1.0
+          |    +--- com.neovisionaries:nv-i18n:1.27
+          |    +--- com.scottyab:rootbeer-lib:0.0.9
+          |    +--- org.apache.commons:commons-compress:1.20
+          |    +--- com.squareup.wire:wire-moshi-adapter:4.3.0
+          |    |    +--- com.squareup.wire:wire-runtime:4.3.0
+          |    |    |    \--- com.squareup.wire:wire-runtime-jvm:4.3.0
+          |    |    |         +--- com.squareup.okio:okio -> 3.0.0 (*)
+          |    |    |         +--- com.squareup.okio:okio-bom:3.0.0
+          |    |    |         |    \--- com.squareup.okio:okio:3.0.0 (c)
+          |    |    |         +--- org.jetbrains.kotlin:kotlin-stdlib-common:1.6.10
+          |    |    |         \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          |    |    +--- com.squareup.moshi:moshi:1.13.0 (*)
+          |    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          |    \--- com.squareup.wire:wire-runtime:4.3.0 (*)
+          +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.10 (*)
+          +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.6.10 (*)
+          \--- androidx.annotation:annotation:1.3.0

Please review and act accordingly

@wpmobilebot
Copy link
Collaborator

You can test the changes on this Pull Request by downloading an installable build, or scanning this QR code:

@malinajirka malinajirka self-assigned this May 25, 2022
@malinajirka
Copy link
Contributor

Thanks for updating the SDK @AnirudhBhat!

It seems that his PR also updates the following dependencies

org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.0 -> 1.6.1 ()
org.jetbrains.kotlinx:kotlinx-coroutines-core:1.6.0 -> 1.6.1 (
)

Rollback of time-related functions dispatching on Dispatchers.Main.
This behavior was introduced in 1.6.0 and then found inconvenient and erroneous (https://github.com/Kotlin/kotlinx.coroutines/issues/3106, https://github.com/Kotlin/kotlinx.coroutines/issues/3113).
Reworked the newly-introduced CopyableThreadContextElement to solve issues uncovered after the initial release (https://github.com/Kotlin/kotlinx.coroutines/pull/3227).
Fixed a bug with ThreadLocalElement not being properly updated in racy scenarios (https://github.com/Kotlin/kotlinx.coroutines/issues/2930).
Reverted eager loading of default CoroutineExceptionHandler that triggered ANR on some devices (https://github.com/Kotlin/kotlinx.coroutines/issues/3180).
New API to convert a CoroutineDispatcher to a Rx scheduler (https://github.com/Kotlin/kotlinx.coroutines/issues/968, https://github.com/Kotlin/kotlinx.coroutines/issues/548). Thanks @recheej!
Fixed a memory leak with the very last element emitted from flow builder being retained in memory (https://github.com/Kotlin/kotlinx.coroutines/issues/3197).
Fixed a bug with limitedParallelism on K/N with new memory model throwing ClassCastException (https://github.com/Kotlin/kotlinx.coroutines/issues/3223).
CoroutineContext is added to the exception printed to the default CoroutineExceptionHandler to improve debuggability (https://github.com/Kotlin/kotlinx.coroutines/issues/3153).
Static memory consumption of Dispatchers.Default was significantly reduced (https://github.com/Kotlin/kotlinx.coroutines/pull/3137).
Updated slf4j version in kotlinx-coroutines-slf4j from 1.7.25 to 1.7.32.

com.squareup.wire:wire-moshi-adapter:4.0.0 -> 4.3.0
com.squareup.wire:wire-runtime:4.0.0 -> 4.3.0

New: reserved tags and names in enum types are now honoured by Wire.
Fix: max keyword is now correctly parsed for enum types.
Fix: Wire now writes minus double zeros and minus float zeros on proto3.
Fix: Wire doesn't write google wrappers types' identity values anymore.
Fix: CoreLoader correctly loads .proto files present in the resources of the project.
Fix: Propagate GrpcExceptions in GrpcCalls.
Fix: Change GrpcCall.isCanceled to honor OkHttp cancellations.
New: Publish a [bill of materials (BOM)](https://docs.gradle.org/6.2/userguide/platforms.html#sub:bom_import) for Wire. Depend on this from Gradle or Maven to keep all of your Wire artifacts on the same version, even if they're declared via transitive dependencies. You can even omit versions when declaring other Wire dependencies.
Fix: Print target name in ConsoleWireLogger.
Fix: Throw early when field or constant names start with a digit.
Update: Bumped SwiftPoet to 1.3.1.
Fix: Wire will not generate annotations for repeated options.
New: When using Wire JSON factories, you can now override the proto3 behavior of skipping default values when writing JSON. Set writeIdentityValues to true for either WireJsonAdapterFactory or WireTypeAdapterFactory to enable it.
Breaking: WireLogger methods has been refactored to remove platform dependencies and allow more precise callbacks. We might add new methods in the future for better logging still.
Removal: The dry-run option on WireCompiler has been removed.
Swift: WireCompiler podspec is now backup by a jar so consumers will not have to locally build it on pod install.
Fix: Don't fail at compilation when an enum is in a oneof for Swift generation.

I've checked the release notes and tried to smoke test the code I though could be affected (mostly tests) and it seems to work as expected.

Approving the PR but leaving the merge up to you @AnirudhBhat in case you haven't and would like to check the release notes.

I encountered an issue - Simple Payments can't be collected at all. However, it's failing even on trunk so it's not related to this PR.

@AnirudhBhat AnirudhBhat merged commit c7f12fd into trunk May 25, 2022
@AnirudhBhat AnirudhBhat deleted the issue/6591-bump-stripe-terminal-sdk-2.9.0-to-2.10.0 branch May 25, 2022 06:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature: mobile payments Related to mobile payments / card present payments / Woo Payments.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Bump Stripe terminal SDK from v2.9.0 to v2.10.0
3 participants