Damir Jelić
bb9cda8902
setup.py: Bump the nio version requirement.
2019-07-13 13:58:34 +02:00
Damir Jelić
ea0d35e3e4
ui: Don't disable the UI code unconditionally.
2019-07-12 22:34:42 +02:00
Damir Jelić
d358532c43
pantalaimon: Add the manifest file.
2019-07-12 16:29:29 +02:00
Damir Jelić
488d2b5179
pantalaimon: Update the gitignore.
2019-07-12 16:08:53 +02:00
Damir Jelić
9dd3e79bac
daemon: Catch a RuntimeError for the keyring.
...
If the keyring doesn't manage to find a sensible and secure keyring backend it
will raise a RuntimeError.
Catch this error and log the error message. The keyring can be disabled
in the config if the system cannot provide a sensible keyring backend.
2019-07-12 16:00:18 +02:00
Damir Jelić
1a8f28b90a
tests: Skip test that require tantivy.
2019-07-12 15:38:04 +02:00
Damir Jelić
b7cc1d60f3
tests: Fix a typo in the fixtures.
2019-07-12 15:37:35 +02:00
Damir Jelić
120355982b
tests: Add aioresponses and friends to the test requirements.
2019-07-12 15:35:54 +02:00
Damir Jelić
c12b624b9a
travis: Install aioresponses before running the tests.
2019-07-12 14:54:20 +02:00
Damir Jelić
b9d518fad8
pantalaimon: Only send UI messages if there is a queue.
2019-07-12 14:47:51 +02:00
Damir Jelić
ad65fbf1a7
pantalaimon: Make the dbus UI optional.
2019-07-12 14:47:20 +02:00
Damir Jelić
dfa5501a6c
daemon: Create a method to send messages to the UI thread.
2019-07-12 14:17:22 +02:00
Damir Jelić
ed71fdedb2
client: Don't use the queue attribute directly.
2019-07-12 14:16:14 +02:00
Damir Jelić
8c831cee1e
tests: Rename a test with a duplicate name.
2019-07-12 10:55:20 +02:00
Damir Jelić
48b4baf79c
pantalaimon: Update to nio 0.4.
2019-07-12 10:55:20 +02:00
Damir Jelić
a9b00dfa37
tests: Test fetcher task creation and handling.
2019-07-04 14:58:30 +02:00
Damir Jelić
25f284f8de
tests: Improve the pan client test.
2019-07-04 14:58:15 +02:00
Damir Jelić
fb0bc090c7
client: Formatting fix.
2019-07-04 14:56:16 +02:00
Damir Jelić
1b58d60abc
client: Fire out events when the fetcher loop iterates.
2019-07-04 14:55:21 +02:00
Damir Jelić
bf64f4cbae
client: Add/delete a continued/old fetcher task atomically.
2019-07-04 14:54:27 +02:00
Damir Jelić
98dfda9496
client: Add missing await.
2019-07-04 14:53:27 +02:00
Damir Jelić
c17a737c42
tests: Add initial pan client tests.
2019-07-03 17:49:45 +02:00
Damir Jelić
22ee14e7b9
client: Only run sync specific tasks if there's a new sync token.
2019-07-03 17:46:38 +02:00
Damir Jelić
85993b16a6
README: Describe the E2E search feature.
2019-07-03 17:46:04 +02:00
Damir Jelić
5d3016e1db
setup.py: Add tantivy to the optional dependencies.
2019-07-03 17:44:07 +02:00
Damir Jelić
088b0a22d2
ui: Remove a duplicate import.
2019-07-03 17:43:48 +02:00
Damir Jelić
a5e1c59931
panctl: Don't duplicate the commands in a list.
...
The commands are already stored in a dictionary holding the command and
their respective help message.
2019-07-03 17:42:48 +02:00
Damir Jelić
758ca1fd85
client: Allow the pan client sync loop to have a timeout between iterations.
2019-07-03 17:42:14 +02:00
Damir Jelić
53d1a2945d
index: Make the index optional.
...
This patch disables the message indexer an message store if
tantivy is not installed.
The search API endpoint forwards all search requests to the homeserver.
2019-07-03 17:41:49 +02:00
Damir Jelić
fa1c2bb694
client: Use coroutines for the event callbacks.
2019-07-03 09:50:45 +02:00
Damir Jelić
3e32b9544b
daemon: Update the devices in the UI thread after a send and ignore.
2019-07-02 14:12:27 +02:00
Damir Jelić
6510bd7eb9
client: Only send device update messages if there were changed devices.
2019-07-01 18:19:36 +02:00
Damir Jelić
f2415738f3
ui: Don't load the devices from the store.
...
The device list in the UI thread is replicated so we can show UI clients
the list without the need for a lock.
The previous implementation relied on loading and reloading of the device
list from the store every time an event changed either the devices or their
trust state.
This leads to a couple of ineficiencies leading to timeouts while
waiting on the database lock if a user has a large number of devices.
The new implementation never loads devices in the UI thread from the
database, they get passed through the thread queue by the main thread
which already holds them in memory.
2019-07-01 18:19:30 +02:00
Damir Jelić
9308dfec3f
tests: Test that we're sending out user updates from the daemon.
2019-06-19 15:55:40 +02:00
Damir Jelić
62d0e5607e
ui: Don't load pan users from the db, pass them over the queue.
2019-06-19 15:54:58 +02:00
Damir Jelić
dae6084919
tests: Check if the proxy uploaded keys.
2019-06-19 13:38:04 +02:00
Damir Jelić
c9ebfd71ec
pantalaimon: Format the source tree using black.
2019-06-19 12:37:44 +02:00
Damir Jelić
531d686d8f
pantalaimon: Run isort.
2019-06-19 12:07:56 +02:00
Damir Jelić
1311dbdef0
tests: Make the indexstore test async.
2019-06-19 12:01:11 +02:00
Damir Jelić
42e363fafc
tests: Test pan client syncs.
2019-06-19 11:57:01 +02:00
Damir Jelić
773b708f14
daemon: Remove unnecessary pass.
2019-06-19 11:56:32 +02:00
Damir Jelić
92267f9fc9
tests: Add initial proxy_tests.
2019-06-19 11:22:47 +02:00
Damir Jelić
315c4bb6f7
tests: Add fixtures for proxydaemon tests.
2019-06-19 11:22:11 +02:00
Damir Jelić
2c831de532
config: Set some more default values for the server config.
2019-06-19 11:21:43 +02:00
Damir Jelić
c8d81b9cf4
client: Catch keyboard exceptions for the client tasks.
2019-06-18 16:31:17 +02:00
Damir Jelić
e766b1ae4b
config: Make the delay between room history fetching configurable.
2019-06-18 16:30:38 +02:00
Damir Jelić
0ad0da2151
daemon: Add missing await.
2019-06-18 15:35:50 +02:00
Damir Jelić
aafc56b44d
daemon: Add CORS headers to the responses.
...
This add CORS headers to all the responses, they are required for web
based clients (e.g. Riot) to work.
2019-06-18 10:10:25 +02:00
Damir Jelić
f5ffd69a79
config: Make the batch size for room history fetching configurable.
2019-06-17 16:59:54 +02:00
Damir Jelić
0940b67eb8
pantalaimon: Add the ability to index only encrypted rooms.
...
Since some public rooms can be quite large downloading the room history
for such rooms can be quite resource intensive.
Replicating the whole room history locally for such rooms might be
undesirable. This patch adds the ability to only download room history
and index messages for encrypted rooms.
Do note that the search API supports searching in multiple rooms, thus
if the indexing is restricted to encrypted rooms a search across
multiple rooms will need to make a search request to the server as well
as a local search. This mode is currently unsupported.
2019-06-17 15:23:06 +02:00