Task/migrate to new blaze fetch campaigns endpoint#20358
Task/migrate to new blaze fetch campaigns endpoint#20358JorgeMucientes merged 20 commits intotrunkfrom
Conversation
|
| App Name | WordPress |
|
| Flavor | Jalapeno | |
| Build Type | Debug | |
| Version | pr20358-cfe878b | |
| Commit | cfe878b | |
| Direct Download | wordpress-prototype-build-pr20358-cfe878b.apk |
|
| App Name | Jetpack |
|
| Flavor | Jalapeno | |
| Build Type | Debug | |
| Version | pr20358-cfe878b | |
| Commit | cfe878b | |
| Direct Download | jetpack-prototype-build-pr20358-cfe878b.apk |
…or fetching campaigns
| InModeration("pending", R.string.campaign_status_in_moderation), | ||
| Scheduled("scheduled", R.string.campaign_status_scheduled), | ||
| Active("active", R.string.campaign_status_active), | ||
| Completed("finished", R.string.campaign_status_completed), | ||
| Rejected("rejected", R.string.campaign_status_rejected), | ||
| Canceled("canceled", R.string.campaign_status_canceled), | ||
| Scheduled("scheduled", R.string.campaign_status_scheduled), | ||
| InModeration("created", R.string.campaign_status_in_moderation); | ||
| Completed("finished", R.string.campaign_status_completed); |
There was a problem hiding this comment.
There was a problem hiding this comment.
Hey @JorgeMucientes
Thanks for picking up on this change. I smoke-tested the app and found a minor issue. When you go to the campaign listing screen, the first item is the most recent campaign, but if you refresh, it is not arranged in the most recent order. See the video capture below.
Screen_recording_20240306_114536.webm
I haven't reviewed the code yet. I plan to do that today or tomorrow. But I wanted to let you know about this issue so that I can possibly take up the review after it has been fixed.
|
Hey @AjeshRPai thanks for the input! I've checked the issue you mentioned and I noticed that I can only reproduce it on
reorderingBug.mp4
refreshCampaigns.mp4Upon further investigation I noticed that the issue is with the API response. Its returning the items for So once we merge this PR that issue should be fixed as it seems is not happening with the new endpoint. |
AjeshRPai
left a comment
There was a problem hiding this comment.
Hey @JorgeMucientes
I have smoke tested the blaze feature and everything looks good to me. Thanks for wrangling this change. I will approve the fluxC PR. Let me know if you need me to update the fluxC hash version and merge this.
…ndpoint # Conflicts: # build.gradle
|
|
Found 1 violations: The PR caused some dependency changes (expand to see details)
-+--- org.wordpress:fluxc:{strictly trunk-ae15f6b0b21c0ee9e0f97741ea2e16545358eac3} -> trunk-ae15f6b0b21c0ee9e0f97741ea2e16545358eac3
-| +--- org.wordpress:wellsql:2.0.0
-| | +--- androidx.annotation:annotation:1.2.0 -> 1.6.0 (*)
-| | \--- org.wordpress.wellsql:wellsql-annotations:2.0.0
-| +--- org.wordpress.fluxc:fluxc-annotations:trunk-ae15f6b0b21c0ee9e0f97741ea2e16545358eac3
-| +--- org.greenrobot:eventbus:3.3.1
-| | \--- org.greenrobot:eventbus-java:3.3.1
-| +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.11.0 (*)
-| +--- com.android.volley:volley:1.1.1 -> 1.2.1
-| +--- androidx.paging:paging-runtime:2.1.2
-| | +--- androidx.paging:paging-common:2.1.2
-| | | +--- androidx.annotation:annotation:1.0.0 -> 1.6.0 (*)
-| | | \--- androidx.arch.core:core-common:2.0.0 -> 2.2.0 (*)
-| | +--- androidx.arch.core:core-runtime:2.0.0 -> 2.2.0 (*)
-| | +--- androidx.lifecycle:lifecycle-runtime:2.0.0 -> 2.6.2 (*)
-| | +--- androidx.lifecycle:lifecycle-livedata:2.0.0 -> 2.6.2 (*)
-| | \--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.0 (*)
-| +--- com.goterl:lazysodium-android:5.0.2
-| +--- net.java.dev.jna:jna:5.5.0
-| +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.20 -> 1.9.10 (*)
-| +--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.6.20 -> 1.9.10 (*)
-| +--- androidx.appcompat:appcompat:1.0.2 -> 1.6.1 (*)
-| +--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.0 (*)
-| +--- androidx.exifinterface:exifinterface:1.0.0 -> 1.3.6 (*)
-| +--- androidx.security:security-crypto:1.0.0
-| | +--- androidx.annotation:annotation:1.1.0 -> 1.6.0 (*)
-| | \--- com.google.crypto.tink:tink-android:1.5.0
-| +--- com.squareup.okhttp3:okhttp-urlconnection:4.9.0 -> 4.9.2 (*)
-| +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
-| +--- org.apache.commons:commons-text:1.10.0
-| | \--- org.apache.commons:commons-lang3:3.12.0
-| +--- androidx.room:room-runtime:2.4.2 -> 2.5.0
-| | +--- androidx.annotation:annotation-experimental:1.1.0 -> 1.3.1 (*)
-| | +--- androidx.arch.core:core-runtime:2.0.1 -> 2.2.0 (*)
-| | +--- androidx.room:room-common:2.5.0
-| | | +--- androidx.annotation:annotation:1.3.0 -> 1.6.0 (*)
-| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -> 1.9.10 (*)
-| | +--- androidx.sqlite:sqlite:2.3.0
-| | | +--- androidx.annotation:annotation:1.0.0 -> 1.6.0 (*)
-| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.7.20 -> 1.9.20 (*)
-| | \--- androidx.sqlite:sqlite-framework:2.3.0
-| | +--- androidx.annotation:annotation:1.2.0 -> 1.6.0 (*)
-| | +--- androidx.sqlite:sqlite:2.3.0 (*)
-| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.7.20 -> 1.9.20 (*)
-| +--- androidx.room:room-ktx:2.4.2 -> 2.5.0
-| | +--- androidx.room:room-common:2.5.0 (*)
-| | +--- androidx.room:room-runtime:2.5.0 (*)
-| | +--- org.jetbrains.kotlin:kotlin-stdlib:1.7.20 -> 1.9.20 (*)
-| | \--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 -> 1.7.3 (*)
-| +--- com.google.dagger:dagger:2.42 -> 2.50
-| | \--- javax.inject:javax.inject:1
-| +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9 -> 1.7.3 (*)
-| \--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9 -> 1.7.3 (*)
++--- org.wordpress:fluxc:{strictly trunk-b9ecc708dde74d6cc95aeab42e56fb8067640039} -> trunk-b9ecc708dde74d6cc95aeab42e56fb8067640039
+| +--- org.wordpress:wellsql:2.0.0
+| | +--- androidx.annotation:annotation:1.2.0 -> 1.6.0 (*)
+| | \--- org.wordpress.wellsql:wellsql-annotations:2.0.0
+| +--- org.wordpress.fluxc:fluxc-annotations:trunk-b9ecc708dde74d6cc95aeab42e56fb8067640039
+| +--- org.greenrobot:eventbus:3.3.1
+| | \--- org.greenrobot:eventbus-java:3.3.1
+| +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.11.0 (*)
+| +--- com.android.volley:volley:1.1.1 -> 1.2.1
+| +--- androidx.paging:paging-runtime:2.1.2
+| | +--- androidx.paging:paging-common:2.1.2
+| | | +--- androidx.annotation:annotation:1.0.0 -> 1.6.0 (*)
+| | | \--- androidx.arch.core:core-common:2.0.0 -> 2.2.0 (*)
+| | +--- androidx.arch.core:core-runtime:2.0.0 -> 2.2.0 (*)
+| | +--- androidx.lifecycle:lifecycle-runtime:2.0.0 -> 2.6.2 (*)
+| | +--- androidx.lifecycle:lifecycle-livedata:2.0.0 -> 2.6.2 (*)
+| | \--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.0 (*)
+| +--- com.goterl:lazysodium-android:5.0.2
+| +--- net.java.dev.jna:jna:5.5.0
+| +--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.6.20 -> 1.9.10 (*)
+| +--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:1.6.20 -> 1.9.10 (*)
+| +--- androidx.appcompat:appcompat:1.0.2 -> 1.6.1 (*)
+| +--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.0 (*)
+| +--- androidx.exifinterface:exifinterface:1.0.0 -> 1.3.6 (*)
+| +--- androidx.security:security-crypto:1.0.0
+| | +--- androidx.annotation:annotation:1.1.0 -> 1.6.0 (*)
+| | \--- com.google.crypto.tink:tink-android:1.5.0
+| +--- com.squareup.okhttp3:okhttp-urlconnection:4.9.0 -> 4.9.2 (*)
+| +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
+| +--- org.apache.commons:commons-text:1.10.0
+| | \--- org.apache.commons:commons-lang3:3.12.0
+| +--- androidx.room:room-runtime:2.4.2 -> 2.5.0
+| | +--- androidx.annotation:annotation-experimental:1.1.0 -> 1.3.1 (*)
+| | +--- androidx.arch.core:core-runtime:2.0.1 -> 2.2.0 (*)
+| | +--- androidx.room:room-common:2.5.0
+| | | +--- androidx.annotation:annotation:1.3.0 -> 1.6.0 (*)
+| | | \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.7.20 -> 1.9.10 (*)
+| | +--- androidx.sqlite:sqlite:2.3.0
+| | | +--- androidx.annotation:annotation:1.0.0 -> 1.6.0 (*)
+| | | \--- org.jetbrains.kotlin:kotlin-stdlib:1.7.20 -> 1.9.20 (*)
+| | \--- androidx.sqlite:sqlite-framework:2.3.0
+| | +--- androidx.annotation:annotation:1.2.0 -> 1.6.0 (*)
+| | +--- androidx.sqlite:sqlite:2.3.0 (*)
+| | \--- org.jetbrains.kotlin:kotlin-stdlib:1.7.20 -> 1.9.20 (*)
+| +--- androidx.room:room-ktx:2.4.2 -> 2.5.0
+| | +--- androidx.room:room-common:2.5.0 (*)
+| | +--- androidx.room:room-runtime:2.5.0 (*)
+| | +--- org.jetbrains.kotlin:kotlin-stdlib:1.7.20 -> 1.9.20 (*)
+| | \--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.6.4 -> 1.7.3 (*)
+| +--- com.google.dagger:dagger:2.42 -> 2.50
+| | \--- javax.inject:javax.inject:1
+| +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.9 -> 1.7.3 (*)
+| \--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.9 -> 1.7.3 (*)
\--- org.wordpress:login:1.14.1
- \--- org.wordpress:fluxc:trunk-ed60798b4d96ec19863c74b0f525e2e20f4525db -> trunk-ae15f6b0b21c0ee9e0f97741ea2e16545358eac3 (*)
+ \--- org.wordpress:fluxc:trunk-ed60798b4d96ec19863c74b0f525e2e20f4525db -> trunk-b9ecc708dde74d6cc95aeab42e56fb8067640039 (*)
Please review and act accordingly
|
Includes the changes from #20358







Closes: #10836
Description
Please don't panic with the number of file changes. Most of them are really small ones.
This PR migrates existing endpoint for fetching Blaze campaigns to new endpoint. The previous one was deprecated and we were encouraged from the self serve team to migrate it. Since, the FluxC change were breaking changes I decided to help migrating the Jetpack/WordPress app at the same time as the WooCommerce app. I'd suggest checking the FluxC changes: wordpress-mobile/WordPress-FluxC-Android#2963 for extra context.
To Test:
I'll appreciate some input here in case I'm missing something. But overall, the smoke testing Blaze campaign loading and opening campaign details should be enough.
demoAfterMigration.mp4