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

[E2E] Various improvements #265

Closed
wants to merge 56 commits into from
Closed

[E2E] Various improvements #265

wants to merge 56 commits into from

Commits on Oct 18, 2018

  1. track the device list of users and download keys

    Use a thread to allow downloading the keys in a non-blocking way.
    Implement sort of a queue of users who need updating, which should be
    efficient (request is fired as soon as possible with as much data as
    possible) and avoid races (we always have only one download in
    progress).
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    b0fa2a6 View commit details
    Browse the repository at this point in the history
  2. add device tracking tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    c8496d3 View commit details
    Browse the repository at this point in the history
  3. track devices of users in encrypted rooms

    This has the effect of tracking the device lists of users proactively.
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    69d300e View commit details
    Browse the repository at this point in the history
  4. build doc for crypto.device_list

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    9aadf1b View commit details
    Browse the repository at this point in the history
  5. Copy the full SHA
    165d4f4 View commit details
    Browse the repository at this point in the history
  6. add olm tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    c689ec1 View commit details
    Browse the repository at this point in the history
  7. add olm_ensure_sessions

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    eb43d6c View commit details
    Browse the repository at this point in the history
  8. Copy the full SHA
    d3896b4 View commit details
    Browse the repository at this point in the history
  9. Copy the full SHA
    f18f9b2 View commit details
    Browse the repository at this point in the history
  10. send encrypted group messages

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    de73b9d View commit details
    Browse the repository at this point in the history
  11. Copy the full SHA
    c07ee43 View commit details
    Browse the repository at this point in the history
  12. add megolm outbound tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    24b5a40 View commit details
    Browse the repository at this point in the history
  13. Copy the full SHA
    4ce7cdf View commit details
    Browse the repository at this point in the history
  14. Copy the full SHA
    71e8c52 View commit details
    Browse the repository at this point in the history
  15. Copy the full SHA
    2515d57 View commit details
    Browse the repository at this point in the history
  16. Copy the full SHA
    e649a23 View commit details
    Browse the repository at this point in the history
  17. Copy the full SHA
    a28b29d View commit details
    Browse the repository at this point in the history
  18. add megolm inbound tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    a377517 View commit details
    Browse the repository at this point in the history
  19. persist olm account

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    ca08e86 View commit details
    Browse the repository at this point in the history
  20. Copy the full SHA
    16ed294 View commit details
    Browse the repository at this point in the history
  21. add account persistence tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    55e8e09 View commit details
    Browse the repository at this point in the history
  22. Copy the full SHA
    9e0ad6f View commit details
    Browse the repository at this point in the history
  23. persist olm sessions

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    05823ea View commit details
    Browse the repository at this point in the history
  24. add olm persistence tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    33a06d8 View commit details
    Browse the repository at this point in the history
  25. persist megolm inbound sessions

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    f8487bd View commit details
    Browse the repository at this point in the history
  26. Copy the full SHA
    4bc2473 View commit details
    Browse the repository at this point in the history
  27. persist megolm outbound sessions

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    93f408a View commit details
    Browse the repository at this point in the history
  28. Copy the full SHA
    0ed22c1 View commit details
    Browse the repository at this point in the history
  29. add device keys persistence

    Since device tracking is done in a separate thread, we need to be
    careful not to use the same connection object between threads (in
    fact the problem existed since the first persistence commit when using
    MatrixClient.start_listener_thread).
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    46405db View commit details
    Browse the repository at this point in the history
  30. Copy the full SHA
    64134d7 View commit details
    Browse the repository at this point in the history
  31. Copy the full SHA
    1804f7a View commit details
    Browse the repository at this point in the history
  32. general improvement to CryptoStore

    Nicer sqlite practices and better docstrings.
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    41e35d1 View commit details
    Browse the repository at this point in the history
  33. Copy the full SHA
    2d7b271 View commit details
    Browse the repository at this point in the history
  34. restore device ID from user ID in CryptoStore

    A side-effect is that this removes the ability to store E2E data
    for different devices of the same user in the DB. It shouldn't
    be much of a problem as it is easy to use multiple DB files
    for different instances of MatrixClient.
    
    Signed-off-by: Valentin Deniaud <valentin.deniaud@inpt.fr>
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    cddd13a View commit details
    Browse the repository at this point in the history
  35. turn on SQLite secure_delete

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    bb10897 View commit details
    Browse the repository at this point in the history
  36. add m.file missing required key

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    9567772 View commit details
    Browse the repository at this point in the history
  37. Copy the full SHA
    77d36f4 View commit details
    Browse the repository at this point in the history
  38. encrypted attachments support

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    db8f378 View commit details
    Browse the repository at this point in the history
  39. plug-in encrypted attachments

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    b236ea2 View commit details
    Browse the repository at this point in the history
  40. Copy the full SHA
    8d4f284 View commit details
    Browse the repository at this point in the history
  41. add Device class

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    656005b View commit details
    Browse the repository at this point in the history
  42. add devices attribute to User

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    6bce7b4 View commit details
    Browse the repository at this point in the history
  43. make OlmDevice subclass Device

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    0c76655 View commit details
    Browse the repository at this point in the history
  44. better device keys handling

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    f2b25e8 View commit details
    Browse the repository at this point in the history
  45. Copy the full SHA
    b27dfa8 View commit details
    Browse the repository at this point in the history
  46. configure device verification

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    6d31cce View commit details
    Browse the repository at this point in the history
  47. persist verification info

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    c1c8aca View commit details
    Browse the repository at this point in the history
  48. Copy the full SHA
    e4f417f View commit details
    Browse the repository at this point in the history
  49. add device verification checks

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    b5e1b7a View commit details
    Browse the repository at this point in the history
  50. persist device upon verification

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    0492e95 View commit details
    Browse the repository at this point in the history
  51. add Device class docstring

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    ba0950a View commit details
    Browse the repository at this point in the history
  52. add Device class tests

    Zil0 committed Oct 18, 2018
    Copy the full SHA
    93d7b0e View commit details
    Browse the repository at this point in the history
  53. Copy the full SHA
    cdffc9f View commit details
    Browse the repository at this point in the history
  54. Copy the full SHA
    0fdfdd6 View commit details
    Browse the repository at this point in the history
  55. refactor crypto tests

    Make those tests more maintanable by getting rid of unwanted side
    effects and useless cleanups by using pytest.fixture, along with some
    readability improvements.
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    d11a0e7 View commit details
    Browse the repository at this point in the history
  56. fail to enable encryption on limited cache_level

    Encryption shouldn't be supported on limited cache_level. Even if it may
    work a bit, it causes a lot of data to be cached.
    Zil0 committed Oct 18, 2018
    Copy the full SHA
    5606b92 View commit details
    Browse the repository at this point in the history