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

Move BillingDetailsCollectionConfiguration into PaymentSheet #6551

Merged
merged 11 commits into from
Apr 17, 2023

Conversation

tillh-stripe
Copy link
Collaborator

@tillh-stripe tillh-stripe commented Apr 17, 2023

Summary

This pull request moves BillingDetailsCollectionConfiguration into PaymentSheet to solve a build issue we’ve been seeing in version 20.23.0.

Motivation

Build issue in 20.23.0.

Testing

  • Added tests
  • Modified tests
  • Manually verified

Screenshots

Before After
before screenshot after screenshot

Changelog

Fixed a build issue where BillingDetailsCollectionConfiguration couldn't be found in the classpath. If you worked around this issue by importing payments-ui-core directly, you can undo this change and need to update the import of BillingDetailsCollectionConfiguration.

@tillh-stripe tillh-stripe force-pushed the tillh/billing-collection-config-build-issue branch from 40000a8 to c0d037f Compare April 17, 2023 21:11
@github-actions
Copy link
Contributor

github-actions bot commented Apr 17, 2023

Diffuse output:

OLD: paymentsheet-example-release-master.apk (signature: V1, V2)
NEW: paymentsheet-example-release-pr.apk (signature: V1, V2)

          │            compressed            │           uncompressed           
          ├───────────┬───────────┬──────────┼───────────┬───────────┬──────────
 APK      │ old       │ new       │ diff     │ old       │ new       │ diff     
──────────┼───────────┼───────────┼──────────┼───────────┼───────────┼──────────
      dex │   3.3 MiB │   3.3 MiB │   +392 B │   7.3 MiB │   7.3 MiB │ +1.5 KiB 
     arsc │   2.2 MiB │   2.2 MiB │      0 B │   2.2 MiB │   2.2 MiB │      0 B 
 manifest │   4.6 KiB │   4.6 KiB │      0 B │  22.3 KiB │  22.3 KiB │      0 B 
      res │     1 MiB │     1 MiB │      0 B │   1.8 MiB │   1.8 MiB │      0 B 
   native │   2.6 MiB │   2.6 MiB │      0 B │     6 MiB │     6 MiB │      0 B 
    asset │     3 MiB │     3 MiB │ +1.3 KiB │     3 MiB │     3 MiB │ +1.3 KiB 
    other │ 201.2 KiB │ 201.2 KiB │     +1 B │ 454.9 KiB │ 454.9 KiB │      0 B 
──────────┼───────────┼───────────┼──────────┼───────────┼───────────┼──────────
    total │  12.3 MiB │  12.3 MiB │ +1.7 KiB │  20.7 MiB │  20.7 MiB │ +2.7 KiB 

 DEX     │ old   │ new   │ diff              
─────────┼───────┼───────┼───────────────────
   files │     1 │     1 │   0               
 strings │ 35661 │ 35666 │  +5 (+30 -25)     
   types │ 11772 │ 11774 │  +2 (+23 -21)     
 classes │  9897 │  9898 │  +1 (+4 -3)       
 methods │ 52552 │ 52563 │ +11 (+1479 -1468) 
  fields │ 33411 │ 33416 │  +5 (+1113 -1108) 

 ARSC    │ old  │ new  │ diff 
─────────┼──────┼──────┼──────
 configs │  333 │  333 │  0   
 entries │ 6921 │ 6921 │  0
APK
     compressed      │     uncompressed     │                                
──────────┬──────────┼───────────┬──────────┤                                
 size     │ diff     │ size      │ diff     │ path                           
──────────┼──────────┼───────────┼──────────┼────────────────────────────────
  6.4 KiB │ +1.3 KiB │   6.3 KiB │ +1.3 KiB │ ∆ assets/dexopt/baseline.prof  
  3.3 MiB │   +392 B │   7.3 MiB │ +1.5 KiB │ ∆ classes.dex                  
 65.4 KiB │     -4 B │ 146.7 KiB │      0 B │ ∆ META-INF/CERT.SF             
 50.8 KiB │     +3 B │ 146.6 KiB │      0 B │ ∆ META-INF/MANIFEST.MF         
    753 B │     +2 B │     621 B │     +2 B │ ∆ assets/dexopt/baseline.profm 
  1.2 KiB │     +2 B │   1.2 KiB │      0 B │ ∆ META-INF/CERT.RSA            
──────────┼──────────┼───────────┼──────────┼────────────────────────────────
  3.4 MiB │ +1.7 KiB │   7.6 MiB │ +2.7 KiB │ (total)
DEX
STRINGS:

   old   │ new   │ diff         
  ───────┼───────┼──────────────
   35661 │ 35666 │ +5 (+30 -25) 
  + CardBillingDetailsCollectionConfiguration(collectName=
  + Lce/p1;
  + Lnc/i3;
  + Lo0/a9;
  + Lx1/s1;
  + No enum constant com.stripe.android.paymentsheet.PaymentSheet.BillingDetailsCollectionConfiguration.AddressCollectionMode.
  + No enum constant com.stripe.android.paymentsheet.PaymentSheet.BillingDetailsCollectionConfiguration.CollectionMode.
  + VIIIIZ
  + VZZZL
  + [Lce/b1;
  + [Lce/p1;
  + [Lde/a;
  + [Lde/f;
  + [Lmf/a0;
  + [Lmf/s0;
  + [Lnc/i1;
  + [Lnc/i2;
  + [Lnc/n2;
  + [Lnc/o1;
  + [Lnc/r1;
  + [Lnc/z1;
  + [Lo0/q8;
  + [Loc/k;
  + [Lx1/c1;
  + [Lx1/e0;
  + [Lx1/i1;
  + [Lx1/p0;
  + [Lyd/e;
  + com.stripe.android.ui.core.CardBillingDetailsCollectionConfiguration.AddressCollectionMode
  + ~~R8{backend:dex,compilation-mode:release,has-checksums:false,min-api:21,pg-map-id:eaf8250,r8-mode:full,version:4.0.52}
  
  - Lde/j;
  - Lo2/u;
  - Lx2/p;
  - No enum constant com.stripe.android.ui.core.BillingDetailsCollectionConfiguration.CollectionMode.
  - VIIILZ
  - [Lce/a1;
  - [Lce/o1;
  - [Lde/e;
  - [Lde/j;
  - [Lmf/r0;
  - [Lmf/z;
  - [Lnc/g2;
  - [Lnc/k1;
  - [Lnc/k2;
  - [Lnc/p1;
  - [Lnc/s1;
  - [Lo0/p8;
  - [Loc/j;
  - [Lx1/a1;
  - [Lx1/d0;
  - [Lx1/h1;
  - [Lx1/o0;
  - [Lyd/d;
  - com.stripe.android.ui.core.BillingDetailsCollectionConfiguration.AddressCollectionMode
  - ~~R8{backend:dex,compilation-mode:release,has-checksums:false,min-api:21,pg-map-id:ceea084,r8-mode:full,version:4.0.52}
  

TYPES:

   old   │ new   │ diff         
  ───────┼───────┼──────────────
   11772 │ 11774 │ +2 (+23 -21) 
  + Lce/p1;
  + Lnc/i3;
  + Lo0/a9;
  + Lx1/s1;
  + [Lce/b1;
  + [Lce/p1;
  + [Lde/a;
  + [Lde/f;
  + [Lmf/a0;
  + [Lmf/s0;
  + [Lnc/i1;
  + [Lnc/i2;
  + [Lnc/n2;
  + [Lnc/o1;
  + [Lnc/r1;
  + [Lnc/z1;
  + [Lo0/q8;
  + [Loc/k;
  + [Lx1/c1;
  + [Lx1/e0;
  + [Lx1/i1;
  + [Lx1/p0;
  + [Lyd/e;
  
  - Lde/j;
  - Lo2/u;
  - Lx2/p;
  - [Lce/a1;
  - [Lce/o1;
  - [Lde/e;
  - [Lde/j;
  - [Lmf/r0;
  - [Lmf/z;
  - [Lnc/g2;
  - [Lnc/k1;
  - [Lnc/k2;
  - [Lnc/p1;
  - [Lnc/s1;
  - [Lo0/p8;
  - [Loc/j;
  - [Lx1/a1;
  - [Lx1/d0;
  - [Lx1/h1;
  - [Lx1/o0;
  - [Lyd/d;
  

METHODS:

   old   │ new   │ diff              
  ───────┼───────┼───────────────────
   52552 │ 52563 │ +11 (+1479 -1468) 
  + a0.o a(a1, List, int) → int
  + a0.o b(a1, List, int) → int
  + a0.o d(a1, List, int) → int
  + a0.o e(a1, List, int) → int
  + a0.w a(a1, List, int) → int
  + a0.w b(a1, List, int) → int
  + a0.w d(a1, List, int) → int
  + a0.w e(a1, List, int) → int
  + ad.a b(o2)
  + ad.h <init>(String, i1, boolean)
  + androidx.appcompat.widget.w <init>(Context, p2, f0, Object, Set, g2)
  + androidx.appcompat.widget.w <init>(m, b0, p2)
  + androidx.appcompat.widget.w <init>(z1, i0, d, o, b0, p2)
  + androidx.compose.ui.platform.AndroidComposeView g(e0)
  + androidx.compose.ui.platform.AndroidComposeView getRoot() → e0
  + androidx.compose.ui.platform.AndroidComposeView getRootForTest() → p1
  + androidx.compose.ui.platform.AndroidComposeView getSharedDrawScope() → g0
  + androidx.compose.ui.platform.AndroidComposeView getSnapshotObserver() → l1
  + androidx.compose.ui.platform.AndroidComposeView h(e0)
  + androidx.compose.ui.platform.AndroidComposeView n(e0, long)
  + androidx.compose.ui.platform.AndroidComposeView o(g1, boolean)
  + androidx.compose.ui.platform.AndroidComposeView q(e0)
  + androidx.compose.ui.platform.AndroidComposeView t(g1) → boolean
  + androidx.compose.ui.platform.AndroidComposeView v(e0)
  + androidx.compose.ui.platform.d1 a(j1, g2, e, i, int)
  + androidx.compose.ui.platform.h0 a(e0) → Boolean
  + androidx.compose.ui.platform.i0 G(e0, c)
  + androidx.compose.ui.platform.i0 u(e0)
  + androidx.compose.ui.platform.k2 x(e0, c) → e0
  + androidx.compose.ui.platform.o0 E(v4, f1) → f3
  + androidx.compose.ui.platform.o0 d(g0)
  + androidx.compose.ui.platform.s <init>(e0, AndroidComposeView, AndroidComposeView)
  + b2.m <init>(q1, boolean)
  + b2.m <init>(q1, boolean, e0)
  + b2.m b() → a1
  + b2.n <init>(e0)
  + bd.j <init>(String, i1)
  + c0.j a(g0)
  + c0.k0 d(g0)
  + c0.l1 a(a1, List, int) → int
  + c0.l1 b(a1, List, int) → int
  + c0.l1 d(a1, List, int) → int
  + c0.l1 e(a1, List, int) → int
  + c0.l <init>(float, e0, o1, m)
  + c0.m0 a(g0)
  + c0.n e(g0)
  + c0.p1 d(g0)
  + c0.s1 a(g0)
  + cc.h a(h, a5, String, i, d) → Object
  + cc.h c(a5, int, String) → l1
  + cc.h f
...✂

@tillh-stripe tillh-stripe changed the title Expose payments-ui-core as part of paymentsheet Move BillingDetailsCollectionConfiguration into PaymentSheet Apr 17, 2023
@tillh-stripe tillh-stripe marked this pull request as ready for review April 17, 2023 23:10
@tillh-stripe tillh-stripe requested review from a team as code owners April 17, 2023 23:10
eurias-stripe
eurias-stripe previously approved these changes Apr 17, 2023
@jaynewstrom-stripe jaynewstrom-stripe dismissed stale reviews from eurias-stripe and themself via ca46205 April 17, 2023 23:16
@jaynewstrom-stripe
Copy link
Collaborator

Related to #6533

@tillh-stripe tillh-stripe merged commit 831f7b6 into master Apr 17, 2023
@tillh-stripe tillh-stripe deleted the tillh/billing-collection-config-build-issue branch April 17, 2023 23:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants