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

feat: set the correct external sender key when creating MLS conversation [WPB-8592] 🍒 #2745

Conversation

github-actions[bot]
Copy link
Contributor

@github-actions github-actions bot commented May 7, 2024

StoryWPB-8592 [Android] Add support for ECDSA ciphersuites

This PR was automatically cherry-picked based on the following PR:

Original PR description:



PR Submission Checklist for internal contributors

  • The PR Title

    • conforms to the style of semantic commits messages¹ supported in Wire's Github Workflow²
    • contains a reference JIRA issue number like SQPIT-764
    • answers the question: If merged, this PR will: ... ³
  • The PR Description

    • is free of optional paragraphs and you have filled the relevant parts to the best of your ability

What's new in this PR?

Issues

when creating a new conversation, we need to set the server public key matching the default cipher suite

Solutions

select the matching signature from cipher suite

Needs releases with:

Testing

Test Coverage (Optional)

  • I have added automated test to this contribution

How to Test

Briefly describe how this change was tested and if applicable the exact steps taken to verify that it works as expected.

Notes (Optional)

Specify here any other facts that you think are important for this issue.

Attachments (Optional)

Attachments like images, videos, etc. (drag and drop in the text box)


PR Post Submission Checklist for internal contributors (Optional)

  • Wire's Github Workflow has automatically linked the PR to a JIRA issue

PR Post Merge Checklist for internal contributors

  • If any soft of configuration variable was introduced by this PR, it has been added to the relevant documents and the CI jobs have been updated.

References
  1. https://sparkbox.com/foundry/semantic_commit_messages
  2. https://github.com/wireapp/.github#usage
  3. E.g. feat(conversation-list): Sort conversations by most emojis in the title #SQPIT-764.

…into feat/pass-signature-algorithm-when-registring-mls-client-cherry-pick

# Conflicts:
#	cryptography/src/commonJvmAndroid/kotlin/com.wire.kalium.cryptography/MLSClientImpl.kt
#	logic/src/commonMain/kotlin/com/wire/kalium/logic/data/mls/CipherSuite.kt
Signed-off-by: MohamadJaara <[email protected]>
…RC-59-cherry-pick' into feat/set-the-correct-public-key-when-creating-MLS-conversation-cherry-pick
…g-mls-client-cherry-pick' into chore/update-CC-to-RC-59-cherry-pick

# Conflicts:
#	gradle/libs.versions.toml
…RC-59-cherry-pick' into fix/fetch-MLS-config-when-not-avilable-locally-cherry-pick

# Conflicts:
#	cryptography/src/androidInstrumentedTest/kotlin/com/wire/kalium/cryptography/BaseMLSClientTest.kt
#	cryptography/src/androidUnitTest/kotlin/com/wire/kalium/cryptography/BaseMLSClientTest.kt
#	cryptography/src/appleMain/kotlin/com/wire/kalium/cryptography/CoreCryptoCentralImpl.kt
#	cryptography/src/appleTest/kotlin/com/wire/kalium/cryptography/BaseMLSClientTest.kt
#	cryptography/src/commonJvmAndroid/kotlin/com.wire.kalium.cryptography/CoreCryptoCentral.kt
#	cryptography/src/commonMain/kotlin/com/wire/kalium/cryptography/CoreCryptoCentral.kt
#	cryptography/src/commonTest/kotlin/com/wire/kalium/cryptography/BaseMLSClientTest.kt
#	cryptography/src/jsMain/kotlin/com/wire/kalium/cryptography/CoreCryptoCentralImpl.kt
#	cryptography/src/jsTest/kotlin/com/wire/kalium/cryptography/BaseMLSClientTest.kt
#	cryptography/src/jvmTest/kotlin/com/wire/kalium/cryptography/BaseMLSClientTest.kt
#	cryptography/src/jvmTest/kotlin/com/wire/kalium/cryptography/BaseProteusClientTest.kt
#	logic/src/commonMain/kotlin/com/wire/kalium/logic/data/client/MLSClientProvider.kt
#	logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/UserSessionScope.kt
#	logic/src/commonTest/kotlin/com/wire/kalium/logic/util/arrangement/repository/UserConfigRepositoryArrangement.kt
Signed-off-by: MohamadJaara <[email protected]>
…S-config-when-not-avilable-locally-cherry-pick
@MohamadJaara MohamadJaara changed the title feat: set the correct external sender key when creating MLS conversation 🍒 feat: set the correct external sender key when creating MLS conversation [WPB-8592] 🍒 May 19, 2024
@MohamadJaara MohamadJaara changed the base branch from release/candidate to fix/fetch-MLS-config-when-not-avilable-locally-cherry-pick May 19, 2024 06:42
…S-config-when-not-avilable-locally-cherry-pick
…ly-cherry-pick' into feat/set-the-correct-public-key-when-creating-MLS-conversation-cherry-pick

# Conflicts:
#	cryptography/src/commonJvmAndroid/kotlin/com.wire.kalium.cryptography/CoreCryptoCentral.kt
#	cryptography/src/commonJvmAndroid/kotlin/com.wire.kalium.cryptography/MLSClientImpl.kt
#	cryptography/src/commonTest/kotlin/com/wire/kalium/cryptography/MLSClientTest.kt
#	logic/src/commonMain/kotlin/com/wire/kalium/logic/data/mls/CipherSuite.kt
#	logic/src/commonMain/kotlin/com/wire/kalium/logic/feature/client/RegisterMLSClientUseCase.kt
#	network/src/commonMain/kotlin/com/wire/kalium/network/api/base/authenticated/client/ClientRequest.kt
Base automatically changed from fix/fetch-MLS-config-when-not-avilable-locally-cherry-pick to release/candidate May 21, 2024 07:41
Copy link
Contributor Author

github-actions bot commented May 21, 2024

Test Results

3 045 tests   2 940 ✔️  3m 15s ⏱️
   529 suites     105 💤
   529 files           0

Results for commit feed0c7.

♻️ This comment has been updated with latest results.

@datadog-wireapp
Copy link

datadog-wireapp bot commented May 21, 2024

Datadog Report

Branch report: feat/set-the-correct-public-key-when-creating-MLS-conversation-cherry-pick
Commit report: 9fa5790
Test service: kalium-jvm

✅ 0 Failed, 2940 Passed, 105 Skipped, 11.09s Total Time
❄️ 1 New Flaky

New Flaky Tests (1)

  • givenConversationWithMessages_whenConversationModifiedDateUpdated_thenNotificationNotAffected[jvm] - com.wire.kalium.persistence.dao.message.MessageNotificationsTest - Last Failure

    Expand for error
     app.cash.turbine.TurbineAssertionError: Unconsumed events found:
      - Item([NotificationMessageEntity(id=OTHER_MESSAGE, contentType=TEXT, isSelfDelete=false, [email protected], senderImage=null, date=2022-03-30T15:36:00Z, senderName=otherUser, text=Something to think about, assetMimeType=null, isQuotingSelf=false, [email protected], conversationName=conversation1, mutedStatus=ALL_ALLOWED, conversationType=ONE_ON_ONE)])
     
     app.cash.turbine.TurbineAssertionError: Unconsumed events found:
      - Item([NotificationMessageEntity(id=OTHER_MESSAGE, contentType=TEXT, isSelfDelete=false, [email protected], senderImage=null, date=2022-03-30T15:36:00Z, senderName=otherUser, text=Something to think about, assetMimeType=null, isQuotingSelf=false, [email protected], conversationName=conversation1, mutedStatus=ALL_ALLOWED, conversationType=ONE_ON_ONE)])
     	at app//app.cash.turbine.TurbineAssertionError$Companion.invoke(TurbineAssertionError.kt:32)
     	at app//app.cash.turbine.ChannelTurbine.ensureAllEventsConsumed(Turbine.kt:235)
     	at app//app.cash.turbine.TurbineTestContextImpl.ensureAllEventsConsumed(flow.kt)
     	at app//com.wire.kalium.persistence.dao.message.MessageNotificationsTest$givenConversationWithMessages_whenConversationModifiedDateUpdated_thenNotificationNotAffected$1$1.invokeSuspend(MessageNotificationsTest.kt:74)
     	at app//kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
     ...
    

Copy link

sonarcloud bot commented May 21, 2024

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@MohamadJaara MohamadJaara enabled auto-merge (squash) May 21, 2024 12:33
@MohamadJaara MohamadJaara merged commit c6a9c30 into release/candidate May 21, 2024
19 checks passed
@MohamadJaara MohamadJaara deleted the feat/set-the-correct-public-key-when-creating-MLS-conversation-cherry-pick branch May 21, 2024 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants