Skip to content

Conversation

@toupper
Copy link
Contributor

@toupper toupper commented Nov 22, 2024

Closes: #12971

Description

With this PR we show the real value of the product unique global identifier on the UI. To achieve that we:

  • Update the FluxC version that contains the new model and networking implementation
  • Adapt the model to that FluxC version
  • Link the value to the UI

Steps to reproduce

Set the GTIN value on a product. Once you have that:

  • Go to Products
  • Tap on the product containing that value
  • Tap on Inventory
  • Check that the value is the real one

Testing information

The tests that have been performed

I checked that the flow works fine for GTIN values that only contains numbers and also strings (hyphens)

Images/gif

  • I have considered if this change warrants release notes and have added them to RELEASE-NOTES.txt if necessary. Use the "[Internal]" label for non-user-facing changes.

Reviewer (or Author, in the case of optional code reviews):

Please make sure these conditions are met before approving the PR, or request changes if the PR needs improvement:

  • The PR is small and has a clear, single focus, or a valid explanation is provided in the description. If needed, please request to split it into smaller PRs.
  • Ensure Adequate Unit Test Coverage: The changes are reasonably covered by unit tests or an explanation is provided in the PR description.
  • Manual Testing: The author listed all the tests they ran, including smoke tests when needed (e.g., for refactorings). The reviewer confirmed that the PR works as expected on big (tablet) and small (phone) in case of UI changes, and no regressions are added.

@toupper toupper marked this pull request as draft November 22, 2024 09:17
@wpmobilebot
Copy link
Collaborator

wpmobilebot commented Nov 22, 2024

📲 You can test the changes from this Pull Request in WooCommerce-Wear Android by scanning the QR code below to install the corresponding build.
App Name WooCommerce-Wear Android
Platform⌚️ Wear OS
FlavorJalapeno
Build TypeDebug
Commit2eca507
Direct Downloadwoocommerce-wear-prototype-build-pr12984-2eca507.apk

@toupper toupper added feature: product details Related to adding or editing products, includes product settings. type: task An internally driven task. labels Nov 27, 2024
@toupper toupper added this to the 21.3 milestone Nov 27, 2024
@toupper toupper marked this pull request as ready for review November 27, 2024 09:00
@wpmobilebot
Copy link
Collaborator

Project dependencies changes

The following changes in project dependencies were detected (configuration vanillaReleaseRuntimeClasspath):

list
Removed Dependencies
androidx.paging:paging-common:2.1.2
androidx.paging:paging-runtime:2.1.2
com.goterl:lazysodium-android:5.0.2
com.squareup.okhttp3:okhttp-urlconnection:4.9.0
net.java.dev.jna:jna:5.5.0
org.wordpress.fluxc:fluxc-annotations:2.100.0
org.wordpress.wellsql:wellsql-annotations:2.0.0
org.wordpress:wellsql:2.0.0

Upgraded Dependencies
org.wordpress.fluxc.plugins:woocommerce:trunk-3d095f6f0a41e50faab2038a9f195f536b6e4520 FAILED, (changed from 2.100.0)
org.wordpress:fluxc:trunk-3d095f6f0a41e50faab2038a9f195f536b6e4520 FAILED, (changed from 2.100.0)
tree
-+--- org.wordpress:fluxc:2.100.0
-|    +--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.9.25 -> 2.0.21
-|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:2.0.21 (*)
-|    |    \--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:2.0.21
-|    |         \--- org.jetbrains.kotlin:kotlin-stdlib:2.0.21 (*)
-|    +--- androidx.exifinterface:exifinterface:1.0.0 -> 1.3.6
-|    |    \--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    +--- androidx.security:security-crypto:1.0.0 -> 1.1.0-alpha03
-|    |    +--- androidx.annotation:annotation:1.1.0 -> 1.8.0 (*)
-|    |    +--- com.google.crypto.tink:tink-android:1.5.0
-|    |    \--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
-|    +--- com.squareup.okhttp3:okhttp-urlconnection:4.9.0
-|    |    +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.12.0 (*)
-|    |    \--- org.jetbrains.kotlin:kotlin-stdlib-jdk8:1.4.10 -> 1.9.10 (*)
-|    +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
-|    +--- org.apache.commons:commons-text:1.10.0 (*)
-|    +--- androidx.room:room-runtime:2.6.1 (*)
-|    +--- androidx.room:room-ktx:2.6.1
-|    |    +--- androidx.room:room-common:2.6.1 (*)
-|    |    +--- androidx.room:room-runtime:2.6.1 (*)
-|    |    +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 2.0.21 (*)
-|    |    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1 -> 1.8.1 (*)
-|    |    +--- androidx.room:room-common:2.6.1 (c)
-|    |    \--- androidx.room:room-runtime:2.6.1 (c)
-|    +--- com.google.dagger:dagger:2.51.1
-|    |    \--- javax.inject:javax.inject:1
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 (*)
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1 (*)
-|    +--- org.wordpress:wellsql:2.0.0
-|    |    +--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    |    \--- org.wordpress.wellsql:wellsql-annotations:2.0.0
-|    +--- org.wordpress.fluxc:fluxc-annotations:2.100.0
-|    +--- org.greenrobot:eventbus:3.3.1 (*)
-|    +--- org.greenrobot:eventbus-java:3.3.1
-|    +--- com.squareup.okhttp3:okhttp:4.9.0 -> 4.12.0 (*)
-|    +--- com.android.volley:volley:1.1.1 -> 1.2.0
-|    +--- androidx.paging:paging-runtime:2.1.2
-|    |    +--- androidx.paging:paging-common:2.1.2
-|    |    |    +--- androidx.annotation:annotation:1.0.0 -> 1.8.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.7.0 (*)
-|    |    +--- androidx.lifecycle:lifecycle-livedata:2.0.0 -> 2.7.0 (*)
-|    |    \--- androidx.recyclerview:recyclerview:1.0.0 -> 1.3.2 (*)
-|    +--- com.goterl:lazysodium-android:5.0.2
-|    +--- net.java.dev.jna:jna:5.5.0
-|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 -> 2.0.21 (*)
++--- org.wordpress:fluxc:trunk-3d095f6f0a41e50faab2038a9f195f536b6e4520 FAILED
-+--- org.wordpress.fluxc.plugins:woocommerce:2.100.0
-|    +--- org.wordpress:fluxc:2.100.0 (*)
-|    +--- com.google.code.gson:gson:2.8.5 -> 2.10.1
-|    +--- com.google.dagger:dagger:2.51.1 (*)
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-core:1.8.1 (*)
-|    +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.8.1 (*)
-|    +--- androidx.room:room-runtime:2.6.1 (*)
-|    +--- org.wordpress:wellsql:2.0.0 (*)
-|    +--- org.wordpress.fluxc:fluxc-annotations:2.100.0
-|    +--- androidx.room:room-ktx:2.6.1 (*)
-|    \--- org.jetbrains.kotlin:kotlin-stdlib:1.9.25 -> 2.0.21 (*)
++--- org.wordpress.fluxc.plugins:woocommerce:trunk-3d095f6f0a41e50faab2038a9f195f536b6e4520 FAILED
 +--- org.wordpress:login:1.19.0
 |    +--- com.github.bumptech.glide:glide:4.12.0 -> 4.16.0
-|    |    \--- androidx.exifinterface:exifinterface:1.3.6 (*)
+|    |    \--- androidx.exifinterface:exifinterface:1.3.6
+|    |         \--- androidx.annotation:annotation:1.2.0 -> 1.8.0 (*)
-|    \--- com.google.dagger:dagger:2.47 -> 2.51.1 (*)
+|    \--- com.google.dagger:dagger:2.47 -> 2.51.1
+|         \--- javax.inject:javax.inject:1
 \--- project :libs:cardreader
      +--- com.stripe:stripeterminal-localmobile:3.7.1
-     |    \--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.9.24 -> 2.0.21 (*)
+     |    \--- org.jetbrains.kotlin:kotlin-parcelize-runtime:1.9.24 -> 2.0.21
+     |         +--- org.jetbrains.kotlin:kotlin-stdlib:2.0.21 (*)
+     |         \--- org.jetbrains.kotlin:kotlin-android-extensions-runtime:2.0.21
+     |              \--- org.jetbrains.kotlin:kotlin-stdlib:2.0.21 (*)
      \--- com.stripe:stripeterminal-core:3.7.1
-          +--- androidx.security:security-crypto:1.1.0-alpha03 (*)
+          +--- androidx.security:security-crypto:1.1.0-alpha03
+          |    +--- androidx.annotation:annotation:1.1.0 -> 1.8.0 (*)
+          |    +--- com.google.crypto.tink:tink-android:1.5.0
+          |    \--- androidx.collection:collection:1.1.0 -> 1.4.0 (*)
-          \--- androidx.room:room-ktx:2.6.1 (*)
+          \--- androidx.room:room-ktx:2.6.1
+               +--- androidx.room:room-common:2.6.1 (*)
+               +--- androidx.room:room-runtime:2.6.1 (*)
+               +--- org.jetbrains.kotlin:kotlin-stdlib:1.8.22 -> 2.0.21 (*)
+               +--- org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.1 -> 1.8.1 (*)
+               +--- androidx.room:room-common:2.6.1 (c)
+               \--- androidx.room:room-runtime:2.6.1 (c)

@wpmobilebot
Copy link
Collaborator

📲 You can test the changes from this Pull Request in WooCommerce Android by scanning the QR code below to install the corresponding build.

App Name WooCommerce Android
Platform📱 Mobile
FlavorJalapeno
Build TypeDebug
Commit2eca507
Direct Downloadwoocommerce-prototype-build-pr12984-2eca507.apk

@codecov-commenter
Copy link

codecov-commenter commented Nov 27, 2024

Codecov Report

Attention: Patch coverage is 39.13043% with 14 lines in your changes missing coverage. Please review.

Project coverage is 39.71%. Comparing base (69d003f) to head (2eca507).
Report is 8 commits behind head on trunk.

Files with missing lines Patch % Lines
...erce/android/model/SubscriptionProductVariation.kt 0.00% 8 Missing ⚠️
...in/kotlin/com/woocommerce/android/model/Product.kt 60.00% 1 Missing and 1 partial ⚠️
.../com/woocommerce/android/model/ProductVariation.kt 66.66% 1 Missing and 1 partial ⚠️
...id/ui/products/details/ProductDetailCardBuilder.kt 0.00% 1 Missing ⚠️
.../products/variations/VariationDetailCardBuilder.kt 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##              trunk   #12984      +/-   ##
============================================
- Coverage     39.72%   39.71%   -0.01%     
- Complexity     6002     6032      +30     
============================================
  Files          1274     1274              
  Lines         73430    73453      +23     
  Branches      10070    10073       +3     
============================================
+ Hits          29167    29175       +8     
- Misses        41691    41702      +11     
- Partials       2572     2576       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@toupper toupper merged commit ca94421 into trunk Nov 27, 2024
21 checks passed
@toupper toupper deleted the issue/12971-product-global-unique-id-networking-model branch November 27, 2024 09:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature: product details Related to adding or editing products, includes product settings. type: task An internally driven task.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Show value in Product Details (Inventory)

4 participants