Session verification request support
This PR introduced FFI level API support for interacting with incoming session verification requests. Best reviewed commit by commit
- it exposes a new
did_receive_verification_requestSessionVerificationControllerdelegate method that includes information about the incoming request/device/sender - the client can
acknowledge_verification_requestto get informed about it getting accepted somewhere else or cancelled - the client can also
accept_verification_requestto start interacting with it
This PR also internally switches to the VerificationRequest::changes publisher, fixes a couple of invalid VerificationMachine tests and starts storing requesting DeviceData directly in VerificationRequestState. Requested
Relates to element-hq/element-meta/issues/2464, fixes #3595.
Please double check the commit messages, I tried making them fit the new contributing guidelines but not sure I nailed it.
Codecov Report
Attention: Patch coverage is 60.00000% with 20 lines in your changes missing coverage. Please review.
Project coverage is 84.89%. Comparing base (
ca1d829) to head (61b6518). Report is 23 commits behind head on main.
Additional details and impacted files
@@ Coverage Diff @@
## main #4153 +/- ##
==========================================
+ Coverage 84.85% 84.89% +0.03%
==========================================
Files 269 269
Lines 28916 28902 -14
==========================================
- Hits 24537 24536 -1
+ Misses 4379 4366 -13
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Taking myself off the reviewer list here because it looks like @poljar already has context on it and will do a better job than me anyway
Oh about the commits, some of them you got right some of them not.
fix(crypto): ... is correct, crypto(verification) is not. In the second case you should have used fix(verification) or something along those lines.
The format is documented here: https://www.conventionalcommits.org/en/v1.0.0/.