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

chore: upgrade kotlinPluginVersion to 1.9.0 #18487

Merged
merged 1 commit into from
Jan 16, 2024

Conversation

siddarthkay
Copy link
Contributor

@siddarthkay siddarthkay commented Jan 14, 2024

Summary

We need to bump kotlin Plugin version to 1.9.0 because the nixpkgs upgrade will set default gradle version to 8.4.
gradle version 8.4 comes with a base kotlin version of 1.9.0 which becomes incompatible with our existing version of 1.7

Otherwise we get errors like this :

e: /Users/siddarthkumar/code/experiments/status-mobile/node_modules/@react-native/
gradle-plugin/src/main/kotlin/com/facebook/react/utils/TaskUtils.kt: (25, 7): Class 
'kotlin.collections.CollectionsKt__CollectionsKt' was compiled with an incompatible version of Kotlin. 
The binary version of its metadata is 1.9.0, expected version is 1.7.1.
The class is loaded from /nix/store/3a228ppiiljfvsrxyq15h25chmiwsmbh-gradle-8.4/lib/gradle/lib/
kotlin-stdlib-1.9.10.jar!/kotlin/collections/CollectionsKt__CollectionsKt.class
e: /Users/siddarthkumar/code/experiments/status-mobile/node_modules/@react-native/gradle-plugin/
src/main/kotlin/com/facebook/react/utils/TaskUtils.kt: (25, 47): Class 
'kotlin.collections.CollectionsKt___CollectionsKt' was compiled with an incompatible version of Kotlin. 
The binary version of its metadata is 1.9.0, expected version is 1.7.1.
The class is loaded from /nix/store/3a228ppiiljfvsrxyq15h25chmiwsmbh-gradle-8.4/lib/gradle/lib/
kotlin-stdlib-1.9.10.jar!/kotlin/collections/CollectionsKt___CollectionsKt.class
e: /Users/siddarthkumar/code/experiments/status-mobile/node_modules/@react-native/gradle-plugin/
src/main/kotlin/com/facebook/react/utils/TaskUtils.kt: (27, 12): Class 
'kotlin.collections.ArraysKt___ArraysKt' was compiled with an incompatible version of Kotlin. 
The binary version of its metadata is 1.9.0, expected version is 1.7.1.
The class is loaded from /nix/store/3a228ppiiljfvsrxyq15h25chmiwsmbh-gradle-8.4/lib/gradle/lib/
kotlin-stdlib-1.9.10.jar!/kotlin/collections/ArraysKt___ArraysKt.class

needed for #18321

In this PR we set kotlinPluginVersion to 1.9.0 and update gradle dependencies.

Platforms

  • Android

Testing Notes

If E2E tests pass and CI is green then just a normal smoke test will do for this PR

status: ready

@siddarthkay siddarthkay self-assigned this Jan 14, 2024
@siddarthkay siddarthkay requested a review from jakubgs as a code owner January 14, 2024 14:41
@siddarthkay siddarthkay changed the title chore: upgrade kotlinPluginVersion to 1.9.0 chore: upgrade kotlinPluginVersion to 1.9.0 Jan 14, 2024
@status-im-auto
Copy link
Member

status-im-auto commented Jan 14, 2024

Jenkins Builds

Click to see older builds (12)
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 65c0f8f #1 2024-01-14 14:47:22 ~5 min ios 📱ipa 📲
65c0f8f #1 2024-01-14 14:52:20 ~10 min tests 📄log
65c0f8f #1 2024-01-14 14:52:24 ~10 min android-e2e 📄log
65c0f8f #1 2024-01-14 14:52:24 ~10 min android 📄log
✔️ 1e5112e #2 2024-01-14 15:15:50 ~5 min ios 📱ipa 📲
✔️ 1e5112e #2 2024-01-14 15:16:56 ~6 min tests 📄log
✔️ 1e5112e #2 2024-01-14 15:19:27 ~9 min android-e2e 🤖apk 📲
✔️ 1e5112e #2 2024-01-14 15:19:29 ~9 min android 🤖apk 📲
✔️ 12def91 #3 2024-01-15 13:02:43 ~7 min ios 📱ipa 📲
✔️ 12def91 #3 2024-01-15 13:02:52 ~7 min tests 📄log
✔️ 12def91 #3 2024-01-15 13:05:17 ~9 min android-e2e 🤖apk 📲
✔️ 12def91 #3 2024-01-15 13:05:49 ~10 min android 🤖apk 📲
Commit #️⃣ Finished (UTC) Duration Platform Result
✔️ 412fcfd #4 2024-01-16 13:57:07 ~6 min ios 📱ipa 📲
✔️ 412fcfd #4 2024-01-16 13:57:55 ~7 min android-e2e 🤖apk 📲
✔️ 412fcfd #4 2024-01-16 13:58:21 ~7 min android 🤖apk 📲
✔️ 412fcfd #4 2024-01-16 13:58:50 ~7 min tests 📄log
✔️ 3f1057b #5 2024-01-16 15:41:52 ~6 min ios 📱ipa 📲
✔️ 3f1057b #5 2024-01-16 15:41:59 ~7 min tests 📄log
✔️ 3f1057b #5 2024-01-16 15:42:25 ~7 min android-e2e 🤖apk 📲
✔️ 3f1057b #5 2024-01-16 15:42:52 ~7 min android 🤖apk 📲

@siddarthkay siddarthkay force-pushed the upgrade-kotlin-plugin-version branch from 65c0f8f to 1e5112e Compare January 14, 2024 15:10
@status-im-auto
Copy link
Member

85% of end-end tests have passed

Total executed tests: 48
Failed tests: 4
Expected to fail tests: 3
Passed tests: 41
IDs of failed tests: 702809,703133,702851,702948 
IDs of expected to fail tests: 703503,702808,703629 

Failed tests (4)

Click to expand
  • Rerun failed tests

  • Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_activity_center_contact_request_accept_swipe_mark_all_as_read, id: 702851

    Device 1: Find `ChatsTab` by `accessibility id`: `chats-stack-tab`
    Device 1: Tap on found: ChatsTab

    activity_center/test_activity_center.py:112: in test_activity_center_contact_request_accept_swipe_mark_all_as_read
        self.home_1.notifications_unread_badge.wait_for_visibility_of_element(30)
    ../views/base_element.py:139: in wait_for_visibility_of_element
        raise TimeoutException(
     Device 1: BaseElement by accessibility id:`activity-center-unread-count` is not found on the screen after wait_for_visibility_of_element
    



    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_restore_multiaccount_with_waku_backup_remove_switch, id: 703133

    Device 1: Find Button by accessibility id: show-profiles
    Device 1: Tap on found: Button

    critical/chats/test_public_chat_browsing.py:276: in test_restore_multiaccount_with_waku_backup_remove_switch
        self.errors.verify_no_errors()
    base_test_case.py:191: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     zQ3...dWXh5 was not restored as a contact from waku backup!
    E    zQ3...Vacac was not restored as a contact from waku backup!
    E    admin_open was not restored from waku-backup!!
    E    member_open was not restored from waku-backup!!
    E    admin_closed was not restored from waku-backup!!
    E    member_closed was not restored from waku-backup!!
    



    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_markdown_support, id: 702809

    Device 1: Looking for a message by text: quote reply (one row)
    Device 2: Looking for a message by text: quote reply (one row)

    critical/chats/test_public_chat_browsing.py:980: in test_community_markdown_support
        self.errors.verify_no_errors()
    base_test_case.py:191: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     code blocks is not displayed with markdown in 1-1 chat for the recipient (device 2)
    



    Device sessions

    2. test_community_hashtag_links_to_community_channels, id: 702948

    Device 2: Find Text by xpath: //android.view.ViewGroup[@content-desc='chat-item']//android.widget.TextView[contains(@text,'#cats')]
    Device 2: Looking for a message by text: it is just a message text

    critical/chats/test_public_chat_browsing.py:1091: in test_community_hashtag_links_to_community_channels
        self.errors.verify_no_errors()
    base_test_case.py:191: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Not all channels are shown in community before joining: ['dogs']
    



    Device sessions

    Expected to fail tests (3)

    Click to expand

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_offline_pn, id: 702808

    Device 3: Looking for a message by text: message from old member
    Device 3: Looking for a message by text: message from new member

    critical/chats/test_group_chat.py:324: in test_group_chat_offline_pn
        self.errors.verify_no_errors()
    base_test_case.py:191: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     Messages PN was not fetched from offline 
    

    [[Data delivery issue]]

    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_community_discovery, id: 703503

    Test is not run, e2e blocker  
    

    [[reason: [NOTRUN] Curated communities not loading, https://github.com//issues/17852]]

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_join_when_node_owner_offline, id: 703629

    Device 2: Tap on found: Button
    Device 2: Looking for community: 'open community'

    critical/chats/test_public_chat_browsing.py:1178: in test_community_join_when_node_owner_offline
        self.errors.verify_no_errors()
    base_test_case.py:191: in verify_no_errors
        pytest.fail('\n '.join([self.errors.pop(0) for _ in range(len(self.errors))]))
     open community is not listed inside Pending communities tab
    E    Joined status is not displayed
    E    open community is not listed inside Joined communities tab 
    

    [[Can't join a community if admin goes offline, https://github.com//issues/17678]]

    Device sessions

    Passed tests (41)

    Click to expand

    Class TestOneToOneChatMultipleSharedDevicesNewUiTwo:

    1. test_1_1_chat_delete_via_long_press_relogin, id: 702784
    Device sessions

    2. test_1_1_chat_is_shown_message_sent_delivered_from_offline, id: 702783
    Device sessions

    3. test_1_1_chat_mute_chat, id: 703496
    Device sessions

    Class TestGroupChatMultipleDeviceMergedNewUI:

    1. test_group_chat_pin_messages, id: 702732
    Device sessions

    2. test_group_chat_mute_chat, id: 703495
    Device sessions

    3. test_group_chat_send_image_save_and_share, id: 703297
    Device sessions

    4. test_group_chat_reactions, id: 703202
    Device sessions

    5. test_group_chat_join_send_text_messages_push, id: 702807
    Device sessions

    Class TestActivityMultipleDevicePR:

    1. test_navigation_jump_to, id: 702936
    Device sessions

    2. test_activity_center_reply_read_unread_delete_filter_swipe, id: 702947
    Device sessions

    Class TestDeepLinksOneDevice:

    1. test_links_open_universal_links_from_chat, id: 704613
    Device sessions

    2. test_links_deep_links, id: 702775
    Device sessions

    Class TestCommunityMultipleDeviceMerged:

    1. test_community_several_images_send_reply, id: 703194
    Device sessions

    2. test_community_one_image_send_reply, id: 702859
    Device sessions

    3. test_community_emoji_send_copy_paste_reply, id: 702840
    Device sessions

    4. test_community_mark_all_messages_as_read, id: 703086
    Device sessions

    5. test_community_contact_block_unblock_offline, id: 702894
    Device sessions

    6. test_community_edit_delete_message_when_offline, id: 704615
    Device sessions

    7. test_community_message_delete, id: 702839
    Device sessions

    8. test_community_message_send_check_timestamps_sender_username, id: 702838
    Device sessions

    9. test_community_links_with_previews_github_youtube_twitter_gif_send_enable, id: 702844
    Device sessions

    10. test_community_message_edit, id: 702843
    Device sessions

    11. test_community_unread_messages_badge, id: 702841
    Device sessions

    Class TestActivityCenterContactRequestMultipleDevicePR:

    1. test_add_contact_field_validation, id: 702777
    Device sessions

    2. test_activity_center_contact_request_decline, id: 702850
    Device sessions

    Class TestOneToOneChatMultipleSharedDevicesNewUi:

    1. test_1_1_chat_emoji_send_reply_and_open_link, id: 702782
    Device sessions

    2. test_1_1_chat_text_message_delete_push_disappear, id: 702733
    Device sessions

    3. test_1_1_chat_push_emoji, id: 702813
    Device sessions

    4. test_1_1_chat_non_latin_messages_stack_update_profile_photo, id: 702745
    Device sessions

    5. test_1_1_chat_edit_message, id: 702855
    Device sessions

    6. test_1_1_chat_send_image_save_and_share, id: 703391
    Device sessions

    7. test_1_1_chat_pin_messages, id: 702731
    Device sessions

    8. test_1_1_chat_message_reaction, id: 702730
    Device sessions

    Class TestCommunityOneDeviceMerged:

    1. test_community_copy_and_paste_message_in_chat_input, id: 702742
    Device sessions

    2. test_community_undo_delete_message, id: 702869
    Device sessions

    3. test_community_navigate_to_channel_when_relaunch, id: 702846
    Device sessions

    4. test_community_mute_community_and_channel, id: 703382
    Device sessions

    Class TestCommunityMultipleDeviceMergedTwo:

    1. test_community_mentions_push_notification, id: 702786
    Device sessions

    2. test_community_leave, id: 702845
    Device sessions

    Class TestActivityMultipleDevicePRTwo:

    1. test_activity_center_mentions, id: 702957
    Device sessions

    2. test_activity_center_admin_notification_accept_swipe, id: 702958
    Device sessions

    Comment on lines +53 to +54
    org.jetbrains.kotlinx:kotlinx-coroutines-core:1.5.2
    org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin:1.9.0' \
    Copy link
    Member

    Choose a reason for hiding this comment

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

    We need to stop this madness at some point...

    @siddarthkay siddarthkay force-pushed the upgrade-kotlin-plugin-version branch from 1e5112e to 12def91 Compare January 15, 2024 12:55
    @pavloburykh pavloburykh self-assigned this Jan 16, 2024
    @siddarthkay siddarthkay force-pushed the upgrade-kotlin-plugin-version branch from 12def91 to 412fcfd Compare January 16, 2024 13:50
    @pavloburykh
    Copy link
    Contributor

    @siddarthkay thanks for the PR. tested and ready for merge.

    ### Summary
    
    We need to bump `kotlin` Plugin version to `1.9.0` because the `nixpkgs` upgrade will set default `gradle` version to `8.4`.
    `gradle` version `8.4` comes with a base `kotlin` version of `1.9.0` which becomes incompatible with our existing version of `1.7`
    
    Otherwise we get errors like this :
    
    ```
    e: /Users/siddarthkumar/code/experiments/status-mobile/node_modules/@react-native/
    gradle-plugin/src/main/kotlin/com/facebook/react/utils/TaskUtils.kt: (25, 7): Class
    'kotlin.collections.CollectionsKt__CollectionsKt' was compiled with an incompatible version of Kotlin.
    The binary version of its metadata is 1.9.0, expected version is 1.7.1.
    The class is loaded from /nix/store/3a228ppiiljfvsrxyq15h25chmiwsmbh-gradle-8.4/lib/gradle/lib/
    kotlin-stdlib-1.9.10.jar!/kotlin/collections/CollectionsKt__CollectionsKt.class
    e: /Users/siddarthkumar/code/experiments/status-mobile/node_modules/@react-native/gradle-plugin/
    src/main/kotlin/com/facebook/react/utils/TaskUtils.kt: (25, 47): Class
    'kotlin.collections.CollectionsKt___CollectionsKt' was compiled with an incompatible version of Kotlin.
    The binary version of its metadata is 1.9.0, expected version is 1.7.1.
    The class is loaded from /nix/store/3a228ppiiljfvsrxyq15h25chmiwsmbh-gradle-8.4/lib/gradle/lib/
    kotlin-stdlib-1.9.10.jar!/kotlin/collections/CollectionsKt___CollectionsKt.class
    e: /Users/siddarthkumar/code/experiments/status-mobile/node_modules/@react-native/gradle-plugin/
    src/main/kotlin/com/facebook/react/utils/TaskUtils.kt: (27, 12): Class
    'kotlin.collections.ArraysKt___ArraysKt' was compiled with an incompatible version of Kotlin.
    The binary version of its metadata is 1.9.0, expected version is 1.7.1.
    The class is loaded from /nix/store/3a228ppiiljfvsrxyq15h25chmiwsmbh-gradle-8.4/lib/gradle/lib/
    kotlin-stdlib-1.9.10.jar!/kotlin/collections/ArraysKt___ArraysKt.class
    ```
    
    needed for #18321
    
    In this commit we set `kotlinPluginVersion` to `1.9.0` and update `gradle` dependencies.
    
    #### Platforms
    - Android
    @siddarthkay siddarthkay force-pushed the upgrade-kotlin-plugin-version branch from 412fcfd to 3f1057b Compare January 16, 2024 15:34
    @siddarthkay siddarthkay merged commit 09bf667 into develop Jan 16, 2024
    6 checks passed
    @siddarthkay siddarthkay deleted the upgrade-kotlin-plugin-version branch January 16, 2024 15:48
    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
    Projects
    Archived in project
    Archived in project
    Development

    Successfully merging this pull request may close these issues.

    5 participants