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

[FC] Removes mavericks dependency #8160

Conversation

carlosmuvi-stripe
Copy link
Collaborator

Summary

  • Stops relying on mavericks args, creates helper functions to create and retrieve intent data.
  • Removes last Mavericks references.

Motivation

Testing

  • Added tests
  • Modified tests
  • Manually verified

Screenshots

Before After
before screenshot after screenshot

Changelog

…nto carlosmuvi/remove-mavericks-part-3

# Conflicts:
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/accountpicker/AccountPickerViewModelTest.kt
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/partnerauth/PartnerAuthViewModelTest.kt
Copy link
Contributor

github-actions bot commented Mar 26, 2024

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.9 MiB │   3.9 MiB │ -26.7 KiB │   8.6 MiB │   8.5 MiB │ -81.7 KiB 
     arsc │   2.2 MiB │   2.2 MiB │       0 B │   2.2 MiB │   2.2 MiB │       0 B 
 manifest │   5.1 KiB │     5 KiB │     -71 B │  25.4 KiB │  24.9 KiB │    -492 B 
      res │ 911.1 KiB │ 911.1 KiB │       0 B │   1.4 MiB │   1.4 MiB │       0 B 
   native │   2.6 MiB │   2.6 MiB │       0 B │     6 MiB │     6 MiB │       0 B 
    asset │     3 MiB │     3 MiB │     +25 B │     3 MiB │     3 MiB │     +25 B 
    other │ 204.2 KiB │ 204.3 KiB │      +3 B │ 445.3 KiB │ 445.3 KiB │       0 B 
──────────┼───────────┼───────────┼───────────┼───────────┼───────────┼───────────
    total │  12.8 MiB │  12.8 MiB │ -26.8 KiB │  21.7 MiB │  21.6 MiB │ -82.2 KiB 

 DEX     │ old   │ new   │ diff                 
─────────┼───────┼───────┼──────────────────────
   files │     1 │     1 │    0                 
 strings │ 42764 │ 42417 │ -347 (+4483 -4830)   
   types │ 14615 │ 14409 │ -206 (+4422 -4628)   
 classes │ 12361 │ 12157 │ -204 (+3714 -3918)   
 methods │ 60951 │ 60290 │ -661 (+26947 -27608) 
  fields │ 40128 │ 39896 │ -232 (+19716 -19948) 

 ARSC    │ old  │ new  │ diff 
─────────┼──────┼──────┼──────
 configs │  242 │  242 │  0   
 entries │ 6029 │ 6029 │  0
APK
      compressed      │     uncompressed      │                                           
──────────┬───────────┼───────────┬───────────┤                                           
 size     │ diff      │ size      │ diff      │ path                                      
──────────┼───────────┼───────────┼───────────┼───────────────────────────────────────────
  3.9 MiB │ -26.7 KiB │   8.5 MiB │ -81.7 KiB │ ∆ classes.dex                             
    127 B │    +127 B │       5 B │      +5 B │ + META-INF/services/K8.z                  
    127 B │    +127 B │       5 B │      +5 B │ + META-INF/services/P8.m                  
          │    -127 B │           │      -5 B │ - META-INF/services/M8.A                  
          │    -127 B │           │      -5 B │ - META-INF/services/R8.n                  
    5 KiB │     -71 B │  24.9 KiB │    -492 B │ ∆ AndroidManifest.xml                     
  7.3 KiB │     +15 B │   7.2 KiB │     +15 B │ ∆ assets/dexopt/baseline.prof             
    888 B │     +10 B │     756 B │     +10 B │ ∆ assets/dexopt/baseline.profm            
 53.2 KiB │      +5 B │ 139.9 KiB │       0 B │ ∆ META-INF/MANIFEST.MF                    
 62.1 KiB │      -4 B │   140 KiB │       0 B │ ∆ META-INF/CERT.SF                        
    272 B │      +1 B │     120 B │       0 B │ ∆ META-INF/version-control-info.textproto 
  1.2 KiB │      +1 B │   1.2 KiB │       0 B │ ∆ META-INF/CERT.RSA                       
──────────┼───────────┼───────────┼───────────┼───────────────────────────────────────────
    4 MiB │ -26.8 KiB │   8.8 MiB │ -82.2 KiB │ (total)
MANIFEST
@@ -381,8 +381,2 @@
         />
-    <provider
-        android:authorities=com.stripe.android.paymentsheet.example.financialconnections-init
-        android:exported=false
-        android:multiprocess=true
-        android:name=com.stripe.android.financialconnections.appinitializer.FinancialConnectionsInitializer
-        />
     <activity
DEX
STRINGS:

   old   │ new   │ diff               
  ───────┼───────┼────────────────────
   42764 │ 42417 │ -347 (+4483 -4830) 
  
  + _this_initializer
  + A2
  + B2
  + C2
  + D2
  + E2
  + F2
  + FinancialConnectionsSheetActivityArgs
  + FinancialConnectionsSheetNativeActivityArgs
  + FinancialConnectionsSheetNativeState
  + G2
  + H2
  + I2
  + J2
  + K2
  + L2
  + LA3/e;
  + LA3/f;
  + LA4/b;
  + LA4/c;
  + LA4/d;
  + LA4/e;
  + LA4/f;
  + LA4/g;
  + LA4/h;
  + LA4/i;
  + LA4/j;
  + LA4/k;
  + LA4/l;
  + LA5/j;
  + LA5/k;
  + LA5/l;
  + LA5/m;
  + LA5/n;
  + LA5/o;
  + LA5/p;
  + LA5/q;
  + LA5/r;
  + LA5/s;
  + LA5/t;
  + LA5/u;
  + LA7/A;
  + LA7/B;
  + LA7/C;
  + LA7/D;
  + LA7/E;
  + LA7/F;
  + LA7/G;
  + LA7/H;
  + LA7/I;
  + LA7/J;
  + LA7/K;
  + LA7/m;
  + LA7/n;
  + LA7/o;
  + LA7/p;
  + LA7/q;
  + LA7/r;
  + LA7/s;
  + LA7/t;
  + LA7/u;
  + LA7/v;
  + LA7/w;
  + LA7/x;
  + LA7/y;
  + LA7/z;
  + LA9/b;
  + LA9/c;
  + LA9/d;
  + LB9/c;
  + LB9/d;
  + LB9/e;
  + LB9/f;
  + LB9/g;
  + LB9/h;
  + LB9/i;
  + LB9/j;
  + LB9/k;
  + LB9/l;
  + LB9/m;
  + LB9/n;
  + LB9/o;
  + LB9/p;
  + LB9/q;
  + LB9/r;
  + LB9/s;
  + LB9/t;
  + LB9/u;
  + LB9/v;
  + LB9/w;
  + LB9/x;
  + LB9/y;
  + LC4/m;
  + LC4/n;
  + LC4/o;
  + LC4/p;
  + LC4/q;
  + LC4/r;
  + LC4/s;
  + LC4/t;
  + LC4/u;
  + LC4/v;
  + LC4/w;
  + LC4/x;
  + LC4/y;
  + LC5/A;
  + LC5/B;
  + LC5/C;
  + LC5/D;
  + LC5/E;
  + LC5/p;
  + LC5/q;
  + LC5/r;
  + LC5/s;
  + LC5/t;
  + LC5/u;
  + LC5/v;
  + LC5/w;
  + LC5/x;
  + LC5/y;
  + LC5/z;
  + LC6/A;
  + LC6/B;
  + LC6/C;
  + LC6/D;
  + LC6/E;
  + LC6/f;
  + LC6/g;
  + LC6/h;
  + LC6/i;
  + LC6/j;
  + LC6/k;
  + LC6/l;
  + LC6/m;
  + LC6/n;
  + LC6/o;
  + LC6/p;
  + LC6/q;
  + LC6/r;
  + LC6/s;
  + LC6/t;
  + LC6/u;
  + LC6/v;
  + LC6/w;
  + LC6/x;
  + LC6/y;
  + LC6/z;
  + LC7/L;
  + LC7/M;
  + LC7/N;
  + LC7/O;
  + LD2/c;
  + LD4/A;
  + LD4/B;
  + LD4/C;
  + LD4/D;
  + LD4/E;
  + LD4/F;
  + LD4/G;
  + LD4/H;
  + LD4/I;
  + LD4/J;
  + LD4/K;
  + LD4/L;
  + LD4/d;
  + LD4/e;
  + LD4/f;
  + LD4/g;
  + LD4/h;
  + LD4/i;
  + LD4/j;
  + LD4/k;
  + LD4/l;
  + LD4/m;
  + LD4/n;
  + LD4/o;
  + LD4/p;
  + LD4/q;
  + LD4/r;
  + LD4/s;
  + LD4/t;
  + LD4/u;
  + LD4/v;
  + LD4/w;
  + LD4/x;
  + LD4/y;
  + LD4/z;
  + LD6/A0;
  + LD6/A1;
  + LD6/A;
  + LD6/B0;
  + LD6/B1;
  + LD6/B;
  + LD6/C0;
  + LD6/C1;
  + LD6/C;
  + LD6/D0;
  + LD6/D1;
  + LD6/D;
  + LD6/E0;
  + LD6/E1;
  + LD6/E;
  + LD6/F0;
  + LD6/F1;
  + LD6/F;
  + LD6/G0;
  + LD6/G1;
  + LD6/G;
  + LD6/H0;
  + LD6/H1;
  + LD6/H;
  + LD6/I0;
  + LD6/I1;
  + LD6/I;
  + LD6/J0;
  + LD6/J1;
  + LD6/J;
  + LD6/K0;
  + LD6/K1;
  + LD6/K;
  + LD6/L0;
  + LD6/L1;
  + LD6/L;
  + LD6/M0;
  + LD6/M1;
  + LD6/M;
  + LD6/N0;
  + LD6/N1;
  + LD6/N;
  + LD6/O0;
  + LD6/O1;
  + LD6/O;
  + LD6/P0;
  + LD6/P1;
  + LD6/P;
  + LD6/Q0;
  + LD6/Q1;
  + LD6/Q;
  + LD6/R0;
  + LD6/R1;
  + LD6/S0;
  + LD6/S1;
  + LD6/S;
  + LD6/T0;
  + LD6/T1;
  + LD6/T;
  + LD6/U0;
  + LD6/U1;
  + LD6/U;
  + LD6/V0;
  + LD6/V1;
  + LD6/V;
  + LD6/W0;
  + LD6/W1;
  + LD6/W;
  + LD6/X0;
  + LD6/X1;
  + LD6/X;
  + LD6/Y0;
  + LD6/Y1;
  + LD6/Y;
  + LD6/Z0;
  + LD6/Z1;
  + LD6/Z;
  + LD6/a0;
  + LD6/a1;
  + LD6/a2;
  + LD6/b0;
  + LD6/b1;
  + LD6/c0;
  + LD6/c1;
  + LD6/d0;
  + LD6/d1;
  + LD6/e0;
  + LD6/e1;
  + LD6/f0;
  + LD6/f1;
  + LD6/f;
  + LD6/g0;
  + LD6/g1;
  + LD6/g;
  + LD6/h0;
  + LD6/h1;
  + LD6/h;
  + LD6/i0;
  + LD6/i1;
  + LD6/i;
  + LD6/j0;
  + LD6/j1;
  + LD6/j;
  + LD6/k0;
  + LD6/k1;
  + LD6/k;
  + LD6/l0;
  + LD6/l1;
  + LD6/l;
  + LD6/m0;
  + LD6/m1;
  + LD6/m;
  + LD6/n0;
  + LD6/n1;
  + LD6/n;
  + LD6/o0;
  + LD6/o1;
  + LD6/o;
  + LD6/p0;
  + LD6/p1;
  + LD6/p;
  + LD6/q0;
  + LD6/q1;
  + LD6/q;
  + LD6/r0;
  + LD6/r1;
  + LD6/r;
  + LD6/s0;
  + LD6/s1;
  + LD6/s;
  + LD6/t0;
  + LD6/t1;
  + LD6/t;
  + LD6/u0;
  + LD6/u1;
  + LD6/u;
  + LD6/v0;
  + LD6/v1;
  + LD6/v;
  + LD6/w0;
  + LD6/w1;
  + LD6/w;
  + LD6/x0;
  + LD6/x1;
  + LD6/x;
  + LD6/y0;
  + LD6/y1;
  + LD6/y;
  + LD6/z0;
  + LD6/z1;
  + LD6/z;
  + LD7/c;
  + LD7/d;
  + LD7/e;
  + LD7/f;
  + LD8/c;
  + LD8/d;
  + LE2/e;
  + LE2/f;
  + LE2/g;
  + LE2/h;
  + LE2/i;
  + LE2/j;
  + LE2/k;
  + LE2/l;
  + LE2/m;
  + LE2/n;
  + LE2/o;
  + LE2/p;
  + LE6/F;
  + LE6/G;
  + LE6/H;
  + LE6/I;
  + LE6/J;
  + LE6/K;
  + LE6/L;
  + LE6/M;
  + LE6/N;
  + LE6/O;
  + LE6/P;
  + LE6/Q;
  + LE6/S;
  + LE6/T;
  + LE6/U;
  + LE6/V;
  + LE6/W;
  + LE6/X;
  + LE6/Y;
  + LE6/Z;
  + LE6/a0;
  + LE6/b0;
  + LE9/b;
  + LE9/c;
  + LE9/d;
  + LF5/f;

...✂

Base automatically changed from carlosmuvi/remove-mavericks-part-3 to carlosmuvi/i/remove-mavericks March 27, 2024 00:41
…avericks-part-4

# Conflicts:
#	example/dependencies/dependencies.txt
#	financial-connections-example/dependencies/dependencies.txt
#	financial-connections/build.gradle
#	financial-connections/dependencies/dependencies.txt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/error/ErrorScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/error/ErrorViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/exit/ExitViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/linkaccountpicker/LinkAccountPickerPreviewParameterProvider.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/linkaccountpicker/LinkAccountPickerScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/linkaccountpicker/LinkAccountPickerViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/linkstepupverification/LinkStepUpVerificationPreviewParameterProvider.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/linkstepupverification/LinkStepUpVerificationScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/linkstepupverification/LinkStepUpVerificationViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/manualentry/ManualEntryScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/manualentry/ManualEntryViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinkloginwarmup/NetworkingLinkLoginWarmupPreviewParameterProvider.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinkloginwarmup/NetworkingLinkLoginWarmupViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinksignup/NetworkingLinkSignupPreviewParameterProvider.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinksignup/NetworkingLinkSignupScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinksignup/NetworkingLinkSignupViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinkverification/NetworkingLinkVerificationPreviewParameterProvider.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinkverification/NetworkingLinkVerificationScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkinglinkverification/NetworkingLinkVerificationViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkingsavetolinkverification/NetworkingSaveToLinkVerificationPreviewParameterProvider.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkingsavetolinkverification/NetworkingSaveToLinkVerificationScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/networkingsavetolinkverification/NetworkingSaveToLinkVerificationViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/reset/ResetScreen.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/features/reset/ResetViewModel.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/repository/CoreAuthorizationPendingNetworkingRepairRepository.kt
#	financial-connections/src/main/java/com/stripe/android/financialconnections/utils/MavericksExtensions.kt
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/linkaccountpicker/LinkAccountPickerViewModelTest.kt
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/linkstepupverification/LinkStepUpVerificationViewModelTest.kt
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/manualentry/ManualEntryViewModelTest.kt
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/networkinglinksignup/NetworkingLinkSignupViewModelTest.kt
#	financial-connections/src/test/java/com/stripe/android/financialconnections/features/success/SuccessViewModelTest.kt
#	paymentsheet-example/dependencies/dependencies.txt
@carlosmuvi-stripe carlosmuvi-stripe marked this pull request as ready for review March 27, 2024 01:59
@carlosmuvi-stripe carlosmuvi-stripe requested review from a team as code owners March 27, 2024 01:59
@carlosmuvi-stripe carlosmuvi-stripe requested review from ccen-stripe and tillh-stripe and removed request for a team and ccen-stripe March 27, 2024 01:59
@@ -59,12 +59,6 @@
android:exported="false"
android:windowSoftInputMode="adjustResize"
android:theme="@style/StripeDefaultTheme" />

<provider
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔥

@carlosmuvi-stripe carlosmuvi-stripe merged commit d079d6e into carlosmuvi/i/remove-mavericks Mar 27, 2024
16 checks passed
@carlosmuvi-stripe carlosmuvi-stripe deleted the carlosmuvi/remove-mavericks-part-4 branch March 27, 2024 17:18
carlosmuvi-stripe added a commit that referenced this pull request Mar 27, 2024
* [FC] Moves Activities and some Panes out of Mavericks (#8125)

* Removes mackericks references on Consent screen.

* Updates files.

* Uses viewmodel factory builder.

* Updates functions.

* Updates execute.

* Updates compose util.

* Adds missing side effects.

* Simplifies code.

* Renames viewmodel.

* Updates async.

* Removes mavericks from institution picker.

* Reverts rename.

* Updates baseline.

* Adds setState and persists state.

* Renames result error to fail.

* Migrates Initial activity out of mavericks.

* Removes persist state.

* Updates tests.

* Regenerates API.

* filterNotNull.

* Nits.

* Updates async.

* use suspend block.

* Update financial-connections/src/main/java/com/stripe/android/financialconnections/core/FinancialConnectionsViewModel.kt

Co-authored-by: Till Hellmund <tillh@stripe.com>

* Tries onAsync.

* Moves activity to stripe ui core.

* PR feedback.

* Regenerates deps.

---------

Co-authored-by: Till Hellmund <tillh@stripe.com>

* [FC] Removes mavericks from repositories and more panes. (#8154)

* Migrates more screens out of mavs.

* Migrates partner auth.

* Removes active auth session field.

* Updates tests.

* Updates attach payment viewmodel.

* PR feedback.

* Api dump.

* [FC] Removes mavericks from all viewmodels and tests (#8155)

* Migrates more screens out of mavs.

* Migrates partner auth.

* Removes active auth session field.

* Updates tests.

* Updates attach payment viewmodel.

* PR feedback.

* Api dump.

* Migrates missing viewmodels.

* Updates dependencies.

* PR feedback.

* Merge master.

* [FC] Removes mavericks dependency (#8160)

* Migrates more screens out of mavs.

* Migrates partner auth.

* Removes active auth session field.

* Updates tests.

* Updates attach payment viewmodel.

* PR feedback.

* Api dump.

* Migrates missing viewmodels.

* Updates dependencies.

* Removes mavericks dependency.

* Merge with integration.

* Uses collect.

* Updates dependencies

* Updates Changelog.

* Update CHANGELOG.md

Co-authored-by: Till Hellmund <tillh@stripe.com>

---------

Co-authored-by: Till Hellmund <tillh@stripe.com>
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.

2 participants