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
Commits on Oct 18, 2018
-
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).
-
-
track devices of users in encrypted rooms
This has the effect of tracking the device lists of users proactively.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
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).
-
-
-
general improvement to CryptoStore
Nicer sqlite practices and better docstrings.
-
-
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>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
Make those tests more maintanable by getting rid of unwanted side effects and useless cleanups by using pytest.fixture, along with some readability improvements.
-
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.