Nightly Distribution of the master branch

Stages & jobs

  1. Default Stage

  2. Deploy

Build result summary

Details

Completed
Queue duration
< 1 second
Duration
8 minutes
Labels
None
Revision
153473c76fa6cafe80712186e10a64e8d7b7ee34
Total tests
624
Successful since
#1580 ()

Tests

Code commits

Author Commit Message Commit date
Florian Schmaus <flo@geekplace.eu> Florian Schmaus <flo@geekplace.eu> 153473c76fa6cafe80712186e10a64e8d7b7ee34 Merge pull request #177 from vanitasvitae/storerework
Rework support for XEP-0384: OMEMO Encryption
Paul Schaub <vanitasvitae@fsfe.org> Paul Schaub <vanitasvitae@fsfe.org> 1f731f6318785a84b9741280d586a61dc37ecb2e Rework support for XEP-0384: OMEMO Encryption
    Changes:

    Rework integration tests
    New structure of base integration test classes
    bump dependency on signal-protocol-java from 2.4.0 to 2.6.2
    Introduced CachingOmemoStore implementations
    Use CachingOmemoStore classes in integration tests
    Removed OmemoSession classes (replaced with more logical OmemoRatchet classes)
    Consequently also removed load/storeOmemoSession methods from OmemoStore
    Removed some clutter from KeyUtil classes
    Moved trust decision related code from OmemoStore to TrustCallback
    Require authenticated connection for many functions
    Add async initialization function in OmemoStore
    Refactor omemo test package (/java/org/jivesoftware/smack/omemo -> /java/org/jivesoftware/smackx)
    Remove OmemoStore method isFreshInstallation() as well as defaultDeviceId related stuff
    FileBasedOmemoStore: Add cleaner methods to store/load base data types (Using tryWithResource, only for future releases, once Android API gets bumped)
    Attempt to make OmemoManager thread safe
    new logic for getInstanceFor() deviceId determination
    OmemoManagers encrypt methods now don't throw exceptions when encryption for some devices fails. Instead message gets encrypted when possible and more information about failures gets returned alongside the message itself
    Added OmemoMessage class for that purpose
    Reworked entire OmemoService class
    Use safer logic for creating trust-ignoring messages (like ratchet-update messages)
    Restructure elements/provider in order to prepare for OMEMO namespace bumps
    Remove OmemoManager.regenerate() methods in favor of getInstanceFor(connection, randomDeviceId)
    Removed some unnecessary configuration options
    Prepare for support of more AES message key types
    Simplify session creation
    Where possible, avoid side effects in methods
    Add UntrustedOmemoIdentityException
    Add TrustState enum
    More improved tests

Jira issues

IssueDescriptionStatus
Unknown Issue TypeXEP-0384Could not obtain issue details from Jira