Commit Graph

201 Commits

Author SHA1 Message Date
Damir Jelić
5001f2fc12 tox: Install pytest-cov for the coverage reporting. 2019-04-10 15:08:08 +02:00
Damir Jelić
928b65beee tox: Fix typo in the pytest command. 2019-04-10 14:52:11 +02:00
Damir Jelić
78041c7a6a daemon: Mypy fixes. 2019-04-10 14:46:11 +02:00
Damir Jelić
25a36a6d47 Makefile: Add typecheck and coverage targets. 2019-04-10 14:45:48 +02:00
Damir Jelić
488e994fa7 tox: Run the coverage collection for the right project. 2019-04-10 14:40:00 +02:00
Damir Jelić
d4d4d605a8 setup.py: Depend on matrix-nio from pypi. 2019-04-10 14:30:15 +02:00
Damir Jelić
60df21c575 pantalaimon: Add travis configuration. 2019-04-10 12:43:54 +02:00
Damir Jelić
76e1855701 Makefile: Add an isort check to the test target. 2019-04-10 12:25:21 +02:00
Damir Jelić
51700068b9 pantalaimon: Isort the repo. 2019-04-10 12:25:21 +02:00
Damir Jelić
0bd4562be7 pantalaimon: Add gitignore. 2019-04-10 12:20:09 +02:00
Damir Jelić
d0ba6c26da pantalaimon: Add tests. 2019-04-10 12:14:00 +02:00
Damir Jelić
4bf5955031 pantalaimon: Add pantalaimon store class. 2019-04-10 12:03:17 +02:00
Damir Jelić
d10a68add1 daemon: Remove some unused imports and variables. 2019-04-10 11:36:37 +02:00
Damir Jelić
d36d2107a9 client: Skip unknown rooms while decrypting.
This fixes a crash but the real reason why the room is unknown for
pantalaimons client is if the other sync stream is ahead of
pantalaimons. This will end up in undecryptable messages unless the
client waits for pantalaimon to finish its own sync.

This closes #11.
2019-04-05 18:40:25 +02:00
Damir Jelić
e2da496f93 client: raise the LocalProtocolError. 2019-04-05 15:33:46 +02:00
Damir Jelić
4ef329df41 daemon: Set the log level for our logger when we set it on the cli. 2019-04-04 19:47:22 +02:00
Damir Jelić
1378dca195 daemon: Decouple the client sync from the daemon sync. 2019-04-04 19:39:44 +02:00
Damir Jelić
f27eb836fe pantalaimon: Add propper logging support. 2019-04-04 11:30:42 +02:00
Damir Jelić
3fa6ce9292 daemon: Add some documentation to the daemon methods. 2019-04-03 17:05:04 +02:00
Damir Jelić
1c45fabe9f pantalaimon: Split out the sync response decryption. 2019-04-03 17:04:06 +02:00
Damir Jelić
8cfc7df551 daemon: Refactor out the request forwarding logic. 2019-04-03 15:40:07 +02:00
Damir Jelić
ae770b3a67 daemon: Move the login user finding out of the login function. 2019-04-03 15:40:07 +02:00
Damir Jelić
e5558c5a1a daemon: Whitespace fixes. 2019-04-03 15:40:07 +02:00
Damir Jelić
9a3329e86e daemon: Move the data dir creation out of the login handler. 2019-04-03 15:40:07 +02:00
Damir Jelić
fa3caa1c01 daemon: If there is not initial device name set one. 2019-04-02 16:07:00 +02:00
Damir Jelić
04f1a16eb7 daemon: Remove the host header in the main router.
The host header can cause confusion since we are forwarding the request
as is in the main router.

Remove it since aiohttp will create a sane new one for us.

This fixes #2.
2019-04-02 14:41:22 +02:00
Andrew Morgan
0586503b7a
Fix typo 2019-03-30 10:42:47 +00:00
Damir Jelić
95a6a14049 daemon: Use the proxy setting provided by the command line. 2019-03-29 19:21:30 +01:00
Damir Jelić
a3643cf6b2 pantalaimon: Add a __init__ file for the package. 2019-03-28 17:09:51 +01:00
Damir Jelić
b606ebda25 setup.py: Fix the incorrect project URL. 2019-03-28 17:09:17 +01:00
Damir Jelić
a1fadbb867 daemon: Remove numeric filters properly. 2019-03-28 17:08:58 +01:00
Damir Jelić
237f35af0a daemon: Remove unneeded print calls. 2019-03-28 17:08:39 +01:00
Damir Jelić
1fb15eb77e daemon: Add some command line switches. 2019-03-28 17:07:57 +01:00
Damir Jelić
367083d6ff README: Add instalation and usage instructions. 2019-03-28 17:07:10 +01:00
Damir Jelić
95f271f45e daemon: Fix a typo in the unkown_token response method. 2019-03-27 14:30:21 +01:00
Damir Jelić
ad641f2a42 daemon: Remove numeric filters from the sync request. 2019-03-27 14:13:05 +01:00
Damir Jelić
cb85544ff9 daemon: Explain the status quo with quaternion. 2019-03-26 17:55:47 +01:00
Damir Jelić
7ee128f185 daemon: Add initial room sending support.
Note: Sending a message for now works only if the other clients have
started Olm sessions for us already.
2019-03-26 13:45:25 +01:00
Damir Jelić
a5930e449c daemon: Automatically verify new devices.
This is a stopgap before some UI is exposed to let the user verify
devices.
2019-03-26 13:03:41 +01:00
Damir Jelić
79aecc1826 daemon: Only handle the response if it's a valid sync response. 2019-03-26 13:00:10 +01:00
Damir Jelić
ea9a30367a daemon: Refactor out the error responses. 2019-03-26 12:59:46 +01:00
Damir Jelić
1e71a945a8 pantalaimon: Add readme. 2019-03-25 14:12:36 +01:00
Damir Jelić
f3139c42ee setup.py: Remove unneeded dependency. 2019-03-25 14:11:51 +01:00
Damir Jelić
6a9a75d3f7 daemon: Don't use a proxy for the connections. 2019-03-25 14:03:27 +01:00
Damir Jelić
05c8f22b58 daemon: Add initial decryption support. 2019-03-25 13:19:22 +01:00
Damir Jelić
16308a926e pantalaimon: Add a license file. 2019-03-25 09:34:31 +01:00
Damir Jelić
2702b51698 pantalaimon: Move the daemon into it's subdir. 2019-03-25 09:34:05 +01:00
Damir Jelić
c6c04b68db main: Close the client sessions when shutting down. 2019-03-21 17:56:34 +01:00
Damir Jelić
8b791976cd main: Handle sync requests.
Note this does not handle encryption yet. It just passes the request
transparently to nio.
2019-03-21 16:41:37 +01:00
Damir Jelić
710939e5bd main: Pass our store path to the nio client after logging in. 2019-03-21 16:38:30 +01:00