strawberry
54a3f47851
fix every clippy warning possible, remove io_uring as default feature
...
this project's codebase is so horrendous, im shocked that no one has ran
clippy at all. it had ~200 total lint warnings, some with performance
issues and unsoundness, and the rest just very ugly codebase. i have sat
down and fixed as many of these as possible and i am exhausted.
i haven't fixed some extremely complex ones, but i brought it down from
~200 to ~30.
i have also removed io_uring as a default feature due to it falling
under the same category as linux eBPF: major kernel attack surface for
minimal performance gains. this also makes it impossible to cross-compile
from macOS to Linux because io_uring does not exist in Darwin land.
there are far better ways to achieve better performance than io_uring on
the codebase level.
Signed-off-by: strawberry <june@girlboss.ceo>
2023-11-27 00:50:55 -05:00
strawberry
5106203d67
drop iouring, add 2 info logs, silence clippy warning
...
iouring falls into the same category as eBPF and is a major source of kernel vulnerabilities. the benefits gained here are too minimal to bother keeping this enabled, and makes cross-compiling from macOS impossible
Signed-off-by: strawberry <june@girlboss.ceo>
2023-11-26 22:14:59 -05:00
strawberry
8fffb6ea04
fix compilation with no zstd, use correct key, bump 2 deps
...
Signed-off-by: strawberry <strawberry@pupbrain.dev>
2023-11-25 15:46:03 -05:00
strawberry
0c4604b482
bump ruma, add wrong room keys error code, tiny logging change
...
can't update ruma to very latest commit because of the weird JsOption thing for syncv4 that i can't wrap my head around how to use, not important anyways
Signed-off-by: strawberry <strawberry@pupbrain.dev>
2023-11-25 12:42:05 -05:00
strawberry
e9cd8caaed
add feature flagged support for migrating from base64 file name keys to sha256 ones
...
core implementation and tests from https://gitlab.com/famedly/conduit/-/merge_requests/467
feature flag, base64 encode update, and tweaks were me
Signed-off-by: strawberry <strawberry@pupbrain.dev>
2023-11-25 11:38:28 -05:00
strawberry
87d1040386
bump various deps (except for the HTTP libs currently), use my
...
rust-rocksdb fork, add optional opt-in zstd response body compression
config, add webp support for images
cant upgrade things like axum, http, tower, hyper, etc due to the 1.0
release of http which are breaking all of these libs
Signed-off-by: strawberry <strawberry@pupbrain.dev>
2023-11-25 11:36:55 -05:00
girlbossceo
3533645959
bump rust-argon2
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-11-10 20:50:36 -05:00
girlbossceo
65b682c841
bump rocksdb
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-11-10 20:47:09 -05:00
Rohan Kumar
d08beada62
Stop using default features for rocksdb
...
We only need zstd and snappy
2023-10-21 21:18:45 -07:00
girlbossceo
c223f8284c
bump deps, update rocksdb
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-10-21 12:18:07 -04:00
girlbossceo
f72fd67a71
remove dbg's, update rocksdb, use iouring
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-09-24 10:17:26 -04:00
girlbossceo
28b63e913f
unix sockets
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-09-13 21:49:53 -04:00
girlbossceo
76c00283de
woof woof
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-09-13 21:46:41 -04:00
Tobias Bucher
9c3b3daafc
Use upstream reqwest
instead of vendored one
...
This uses the `ClientBuilder::dns_resolver` function that was added in
reqwest 0.11.13, instead of the homebrew `ClientBuilder::resolve_fn`.
2023-09-13 21:46:06 -04:00
girlbossceo
42efc9deaf
Implement UNIX sockets
...
Initial implementation done in https://gitlab.com/famedly/conduit/-/merge_requests/507 ,
*substantially* reworked, corrected, improved by infamous <ehuff007@gmail.com>,
and few parts done by me.
Co-authored-by: infamous <ehuff007@gmail.com>
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-09-13 20:49:02 -04:00
girlbossceo
81e68434d8
update few deps
...
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-09-13 20:39:03 -04:00
Timo Kösters
75c80df271
Sliding sync improvements and redaction fixes
2023-09-13 20:54:53 +02:00
Timo Kösters
11103a92ed
Do not show "Invalid room version" errors when server is not in room
2023-08-11 10:48:48 +02:00
Timo Kösters
5d16948030
Bump version to v0.6.0
2023-08-10 18:57:52 +02:00
Timo Kösters
3e518773e2
Merge branch 'improvements' into 'next'
...
cross signing fixes
See merge request famedly/conduit!532
2023-08-07 16:11:11 +00:00
Timo Kösters
d82c26f0a9
Avatars for sliding sync DMs
2023-08-07 17:54:08 +02:00
Timo Kösters
06ab707c79
Merge branch 'rusqlite-update' into 'next'
...
bump rusqlite to 0.29.0
See merge request famedly/conduit!529
2023-08-02 05:06:54 +00:00
June
fbb256dd91
bump rusqlite to 0.29.0
...
Signed-off-by: June <june@girlboss.ceo>
2023-08-01 15:09:55 -10:00
June
5a7bade476
update base64 to 0.21.2
...
Signed-off-by: June <june@girlboss.ceo>
2023-08-01 14:48:50 -10:00
Charles Hall
291290db92
maximize fd limit
2023-07-26 13:24:44 -07:00
Timo Kösters
4b7d3e24dd
bump ruma
2023-07-10 16:24:57 +02:00
Timo Kösters
e4f769963f
feat: very simple sliding sync implementation
2023-07-06 10:32:25 +02:00
Jonas Platte
0ded637b4a
Upgrade axum to 0.6
2023-06-29 11:20:52 +02:00
Timo Kösters
be877ef719
Improve sync performance with more caching and wrapping things in Arcs to avoid copies
2023-06-27 13:15:11 +02:00
Timo Kösters
91180e011d
bump ruma
2023-06-26 23:10:26 +02:00
Timo Kösters
15cc801840
Disable compression, see https://en.wikipedia.org/wiki/BREACH
2023-06-25 23:43:54 +02:00
Timo Kösters
c7e0ea525a
feat: WIP relationships and threads
2023-06-25 19:40:33 +02:00
Timo Kösters
49b5af6d45
chore: bump rocksdb
2023-05-21 13:41:51 +02:00
Kévin Commaille
f53ecaa97d
Bump Ruma
2023-03-18 15:03:56 +01:00
Timo Kösters
19156c7bbf
Update Cargo.lock
2022-12-21 16:16:07 +01:00
Timo Kösters
f7db3490f6
Bump version to v0.5.0
2022-12-21 14:08:09 +01:00
Timo Kösters
c7a7c913d4
Bump ruma
2022-12-21 14:08:08 +01:00
Timo Kösters
6d5e54a66b
fix: jaeger support
2022-12-18 06:37:03 +01:00
Jonas Platte
d39ce1401d
WIP: Upgrade Ruma
2022-12-16 11:57:32 +01:00
Vladan Popovic
66ad114e19
feat: add systemd feature flag
2022-11-27 22:17:15 +01:00
Andriy Kushnir (Orhideous)
583aea187b
Update Cargo.lock
2022-11-25 23:13:58 +02:00
Nyaaori
66bc41125c
refactor: cleanup
2022-11-21 20:50:39 +01:00
Timo Kösters
7540227388
chore: bump dependencies
2022-11-09 18:46:10 +01:00
AndSDev
10d2da3009
fix(main): fix request size limit to max_request_size (axum defaults 2MB)
2022-10-25 12:53:58 +03:00
Timo Kösters
fdd64fc966
fix: fluffychat login works again
2022-10-12 17:18:01 +02:00
Timo Kösters
d3968c2fd1
fix: bump ruma again to fix state res problems
2022-10-11 21:51:20 +02:00
Timo Kösters
7cf060ae5b
Bump version to 0.4
2022-10-10 14:38:17 +02:00
Timo Kösters
ca82b2940d
fix: sending does not work
...
We were inserting one too many 0xff bytes
2022-10-10 14:02:05 +02:00
Timo Kösters
229444c932
Use ring-compat feature so out signing keys work again
2022-10-10 14:02:04 +02:00
Timo Kösters
6b131202b9
Bump ruma
2022-10-10 14:02:04 +02:00
Timo Kösters
275c6b447d
Bump some dependencies
2022-10-10 14:02:04 +02:00
Timo Kösters
057f8364cc
fix: some compile time errors
...
Only 174 errors left!
2022-10-10 13:25:01 +02:00
Timo Kösters
0c8e51e1b7
Upgrade dependencies
2022-06-19 15:40:14 +02:00
Timo Kösters
e4600ccfef
bump ruma
2022-04-07 17:02:49 +02:00
Timo Kösters
2808dd2000
Ruma upgrade
2022-04-07 12:58:48 +02:00
chenyuqide
ee96a03d60
Update ruma
2022-04-07 12:56:16 +02:00
chenyuqide
21bc099ccf
Update ruma
2022-04-07 12:56:12 +02:00
Jonas Platte
3933bd9a8e
Update axum feature set used
2022-03-31 22:52:16 +02:00
Jonas Platte
db0659cb3d
Upgrade axum to 0.5
2022-03-31 22:50:17 +02:00
Andrej Kacian
194a85d4c5
Use native root CA certificates for reqwest
2022-03-12 15:44:22 +01:00
Jonathan de Jong
e9f87e1952
update ruma
2022-02-18 15:33:14 +01:00
Jonathan de Jong
b8d92d3cec
take advantage of multiple paths
2022-02-13 12:07:00 +01:00
Jonathan de Jong
0ed1e42aed
update ruma
2022-02-12 21:01:53 +01:00
Jonas Platte
ce714cfd07
Bump version
2022-02-12 13:20:55 +01:00
Jonas Platte
50b24b37c2
Upgrade Ruma
2022-02-12 12:56:18 +01:00
Jonas Platte
c8951a1d9c
Use axum-server for direct TLS support
2022-02-12 12:56:08 +01:00
Jonas Platte
1f7b3fa4ac
Port from Rocket to axum
2022-02-12 12:56:07 +01:00
Jonas Zohren
103dc7e09b
Pre-0.3 doc adjustments
2022-02-04 18:05:24 +01:00
Timo Kösters
dd03608f17
use our own reqwest fork
2022-02-04 17:24:45 +01:00
Timo Kösters
8db7d2c025
Merge branch 'asonix/encourage-reqwest-reuse' into 'next'
...
Re-use a basic reqwest client in all possible cases
See merge request famedly/conduit!265
2022-02-04 11:27:41 +00:00
Jonas Platte
d23d6fbb37
Upgrade Ruma
2022-02-03 20:24:02 +01:00
Jonas Platte
92571d961f
Remove mutation from default_config and set default log_level to off
2022-02-03 19:55:54 +01:00
Andrei Vasiliu
4bbff69a24
Merge remote-tracking branch 'origin/next' into command-refactor
...
Fixed conflict with commit 78502aa6b1
2022-02-03 13:12:55 +02:00
Aode (lion)
1059f35fdc
use pre-constructed client for well-known requests also
2022-01-27 10:37:04 -06:00
Jonas Platte
9c2000cb89
Upgrade Ruma
2022-01-27 16:25:42 +01:00
Andrei Vasiliu
7505548b94
Merge remote-tracking branch 'refs/remotes/origin/next' into command-refactor
...
Resolved conflict for the new list_local_users command
2022-01-22 14:29:50 +02:00
Timo Kösters
f88523988e
improvement: use jemalloc for lower memory usage
2022-01-21 17:54:05 +01:00
Andrei Vasiliu
57979da28c
Change structopt to clap, remove markdown dependency
2022-01-21 17:35:26 +02:00
Timo Kösters
5d3ba5c628
Merge branch 'WIP_persy_batch_next' into 'next'
...
feat: Integration with persy using background ops
See merge request famedly/conduit!231
2022-01-21 15:31:46 +00:00
Timo Kösters
ee8e72f7a8
feat: implement server ACLs
2022-01-17 14:35:38 +01:00
Tglman
c1cd4b5e26
chore: set the released version of persy in Cargo.toml
2022-01-15 14:17:15 +00:00
Tglman
1cc41937bd
refactor:use generic watcher in persy implementation
2022-01-15 14:17:15 +00:00
Timo Kösters
077e9ad438
improvement: memory usage for caches
2022-01-13 22:44:25 +01:00
Timo Kösters
1d647a1a9a
improvement: allow rocksdb again
2022-01-13 22:10:43 +01:00
Jonas Platte
349865d3cc
Upgrade Ruma
2022-01-13 11:44:23 +01:00
Jonas Platte
aba95b20f3
Upgrade Ruma
2021-12-23 17:40:42 +01:00
Jonas Platte
34d3f74f36
Use Arc for EventIds in PDUs
...
Upgrades Ruma again to make this work.
2021-12-16 13:55:24 +01:00
Jonas Platte
892a0525f2
Upgrade Ruma
2021-12-15 13:00:37 +01:00
Timo Kösters
afa5d449c6
Merge branch 'better-multiarch-building-the-second-attempt' into 'next'
...
CI: New Multiarch builds and Docker images + cargo clippy/test output now integrated into GitLab
Closes #145
See merge request famedly/conduit!225
2021-11-21 17:34:09 +00:00
Jonas Zohren
2fff720df3
CI: New Multiarch builds and Docker images + cargo clippy/test output now integrated into GitLab
2021-11-21 17:34:08 +00:00
Moritz Bitsch
9fccbb014a
Implement TURN server authentication with hmac
...
This is a prefered method to allow limited access to the TURN server
2021-11-12 12:43:15 +00:00
Jonas Platte
09895a20c8
Upgrade Ruma
...
Co-authored-by: Timo Kösters <timo@koesters.xyz>
2021-10-13 10:16:45 +02:00
Jonas Platte
979ec6b4fa
Upgrade ruma
2021-09-13 20:55:13 +02:00
Jonas Platte
5821b8e705
Remove unused dependencies
2021-09-07 15:41:01 +02:00
Timo Kösters
7cd7f1923f
chore: update dependencies
2021-09-01 22:31:25 +02:00
Timo Kösters
43d693ca19
revert Arc<EventId> commit
2021-09-01 22:30:11 +02:00
Timo Kösters
875b345a5f
docs: update readme and version
2021-09-01 22:18:19 +02:00
Timo Kösters
4b39d7cb64
fix: batch key fetching
2021-09-01 20:02:34 +02:00
Jonathan de Jong
69df9a0145
add tls
2021-08-30 20:18:48 +02:00
Devin Ragotzy
9bff276fa9
Use Arc<EventId> in place of most EventIds
2021-08-27 20:20:14 +02:00
Timo Kösters
d485eb5a24
chore: bump dependencies
2021-08-26 14:38:25 +02:00
Timo Kösters
dd87066546
improvement: more efficient auth chain cache
2021-08-24 21:55:18 +02:00
Timo Kösters
81e056417c
improvement: better e2ee over fed, faster incoming event handling
2021-08-24 19:52:05 +02:00
Timo Kösters
46d8a46e1f
improvement: faster incoming transaction handling
2021-08-19 11:01:43 +02:00
Timo Kösters
df727688ef
remove rocksdb
2021-08-04 21:17:40 +02:00
Timo Kösters
dc85a8fafd
fix: migration and push edu bugs
2021-07-30 18:05:26 +02:00
Timo Kösters
5df6b8cd5f
improvement: better account data implementation
2021-07-30 16:08:24 +02:00
Timo Kösters
5c776e9ba7
feat: heed db backend (LMDB)
2021-07-29 23:11:53 +02:00
Timo Kösters
c209775abd
fix: pdu without state bug
2021-07-29 12:33:44 +02:00
Timo Kösters
5e924227b6
feat: add threadpool for iterator threads, bug fixes, tracing_flame support
2021-07-29 08:49:28 +02:00
Timo Kösters
f0ac7ed933
chore: update ruma again
2021-07-20 15:25:17 +02:00
Timo Kösters
0f8ecdc625
fix: state res fixes
2021-07-20 15:25:17 +02:00
Timo Kösters
cfaa900e83
improvement: auth chain cache
2021-07-20 15:25:16 +02:00
Timo Kösters
f5273f7eb1
improvement: upgrade ruma and implement blurhashes
2021-07-20 15:25:16 +02:00
Timo Kösters
0fcefa4125
fix: ruma
2021-07-20 15:25:16 +02:00
Jonathan de Jong
15471d9ac4
update rocket and lock
2021-07-14 11:28:24 +02:00
Jonathan de Jong
9d4fa9a220
Sqlite
2021-07-14 07:07:08 +00:00
Timo Kösters
13c0beafa6
Merge branch 'lib-fix' into 'master'
...
Export conduits Config struct and fix clippy warnings
See merge request famedly/conduit!99
2021-07-11 11:42:07 +00:00
Timo Kösters
5711467ad9
Merge branch 'state-res-closure' into 'master'
...
Remove auth_cache using a closure to fetch events in state-res
See merge request famedly/conduit!108
2021-07-02 10:56:21 +00:00
Devin Ragotzy
c30cc50a0b
Switch ruma to a commit from next
2021-07-02 06:40:40 -04:00
Aiden McClelland
b2d5516058
add support for arbitrary proxies
2021-07-01 12:41:12 -06:00
Devin Ragotzy
98f1480e2b
Remove auth_cache using a closure to fetch events in state-res
2021-06-30 12:54:19 +02:00
Timo Kösters
05821d6fd5
improvement: pdu cache, /sync cache
2021-06-30 10:31:34 +02:00
Devin Ragotzy
09a8737f24
Export conduits Config struct and fix clipp warningsy
2021-06-29 16:02:12 -04:00
Jonas Platte
f6046871f4
Upgrade Ruma
2021-06-17 20:12:36 +02:00
Timo Kösters
d0ee823254
feat: swappable database backend
2021-06-09 22:21:52 +02:00
Damian Poddebniak
bb7a4220d3
Fix ruma dependency
2021-06-04 20:18:03 +02:00
Timo Kösters
5b5cc0574e
feat: implement /claim, handle to-device events
2021-05-28 13:46:15 +02:00
Timo Kösters
daa1fc90a7
fix: state resolution bugs
2021-05-27 10:48:17 +02:00
Timo Kösters
09157b2096
improvement: federation get_keys and optimize signingkey storage
...
- get encryption keys over federation
- optimize signing key storage
- rate limit parsing of bad events
- rate limit signature fetching
- dependency bumps
2021-05-21 13:25:24 +02:00
Jonas Platte
a0457000ff
Upgrade Ruma
2021-05-08 01:54:28 +02:00
Jonas Platte
c28eba1e5b
Bump ruma
2021-04-29 21:05:29 +02:00
Jonas Platte
5be5c9e9f0
Bump ruma
2021-04-26 19:02:32 +02:00
Timo Kösters
2fc1ec2ad5
fix: logging
2021-04-24 13:34:35 +02:00
Jonas Platte
d8b484beed
Upgrade ruma
2021-04-24 12:22:36 +02:00
Timo Kösters
23f81bfaf7
chore: update dependencies
2021-04-24 12:18:19 +02:00
Timo Kösters
6e84d317b2
improvement: update ruma
2021-04-24 12:17:44 +02:00
Gabriel Souza Franco
0b56589dce
feat: add handling of tls cert for delegated hosts
2021-04-15 22:07:27 -03:00
Timo Kösters
04b08d4505
chore: bump stateres
2021-04-14 17:46:17 +02:00
Timo Kösters
5951294638
feat: join cursed rooms
...
this removes several restrictions and tries to continue verifying a pdu
event if some auth events fail (it drops/ignores bad pdus)
2021-04-14 09:39:06 +02:00
Timo Kösters
8b40e0a85f
improvement: fetch signing keys in parallel when joining a room
2021-04-13 22:54:01 +02:00
Timo Kösters
b4f79b77ba
feat: reject invites over federation
2021-04-13 17:41:14 +02:00
Timo Kösters
8773e5013d
feat: incoming invites over federation
2021-04-11 21:04:31 +02:00
Timo Kösters
044e65afcc
fix: move back to sled stable
2021-04-11 10:12:05 +02:00
Timo Kösters
84f4ce73e5
fix: membership deserializing
2021-04-09 21:45:22 +02:00
Timo Kösters
51aa6448bc
fix: use sled main to avoid deadlock
2021-04-07 17:58:33 +02:00
Jonas Platte
fe744c856f
Upgrade ruma
...
… and refactor push rule code along the way.
2021-04-06 17:38:53 +02:00
Timo Kösters
cd4dc13731
fix: use correct room versions
2021-03-26 13:30:17 +01:00
Timo Kösters
c213769d9f
improvement: refactor state res and fix a few bugs in the process
2021-03-25 23:55:40 +01:00
Timo Kösters
3ea7d162db
fix: various improvements and fixes
2021-03-23 12:59:27 +01:00
Timo Kösters
363c629faf
fix: signature key fetching, optimize push sending
2021-03-22 14:04:41 +01:00
Timo Kösters
d4c76f4654
chore: update ruma
2021-03-18 19:38:08 +01:00
Timo Kösters
5cb15551f3
improvement: use db compression
2021-03-18 13:13:08 +01:00
Timo Kösters
21f785d530
Merge branch 'correct-sendtxn' into pushers
2021-03-15 09:56:04 +01:00
Timo Kösters
6da40225bb
improvement: make state res actually work
2021-03-13 16:30:12 +01:00
Devin Ragotzy
d0df8b495c
Merge remote-tracking branch 'upstream/master' into correct-sendtxn
2021-03-04 08:39:16 -05:00
Timo Kösters
105f893cf3
chore: bump other dependencies to make it work
2021-03-04 12:29:08 +01:00
Rudi Floren
f4039902d8
Bump Rocket to current HEAD
2021-03-03 22:42:10 +01:00
Timo Kösters
4155a47db1
feat: opentelemetry/jaeger support
2021-03-02 15:08:54 +01:00
Devin Ragotzy
0dd8a15c49
Fix leaves not being replaced by correct eventId in membership
...
Update ruma
2021-02-27 16:09:22 -05:00
Devin Ragotzy
0cc6448dbe
Temp disable rust_2018_idioms for CI
2021-02-23 17:21:01 -05:00
Devin Ragotzy
8f283510aa
Fix unused import clippy warning
2021-02-23 17:21:01 -05:00
Devin Ragotzy
6fd3e1d1dd
Append state event that pass resolution to DB, update to tokio 1.1
2021-02-23 17:21:01 -05:00
Devin Ragotzy
66af1ff695
Update ruma and rocket to latest git rev and tokio to 1.0
...
Ruma updated the event signing validation code and there was a dep
resolving failure with serde rocket and tokio so I updated rocket latest and
tokio 1.0 to fix.
2021-02-23 17:20:52 -05:00
Devin Ragotzy
168ae8dca0
Fill event_map with all events that will be needed for resolution
2021-02-09 15:21:51 -05:00
Devin Ragotzy
8de0d9f9ce
Remove StateStore trait from state-res collect events needed
2021-02-09 15:21:41 -05:00
Devin Ragotzy
cdeb1236a2
Fix clippy warnings remove unused imports
2021-02-09 15:21:14 -05:00
Devin Ragotzy
63af3d3da0
Step 5 in /send just fetches state from incoming server
2021-02-09 15:20:07 -05:00
Devin Ragotzy
4b9976aa74
Update state-res, use the new Event trait
...
This also bumps ruma to latest and removes js_int infavor of the ruma
re-export
2021-02-09 15:19:47 -05:00
Devin Ragotzy
4a92a29b56
State resolution outline for /send
2021-02-09 15:18:47 -05:00
Timo Kösters
d49911c5e0
Add 'm.login.token' authentication
2021-02-07 17:38:45 +01:00
Devin Ragotzy
73124629b7
Add general rules matching for pusher, calc unread msgs
2021-01-29 21:48:35 -05:00
Devin Ragotzy
cd0c5c0566
Append state event that pass resolution to DB, update to tokio 1.1
2021-01-29 11:20:33 -05:00
Devin Ragotzy
a897608025
Roll back tokio and rocket update since ruma's request is at 0.2 tokio
2021-01-18 19:59:08 -05:00
Devin Ragotzy
00436a32b0
Update ruma and rocket to latest git rev and tokio to 1.0
...
Ruma updated the event signing validation code and there was a dep
resolving failure with serde rocket and tokio so I updated rocket latest and
tokio 1.0 to fix.
2021-01-18 19:36:44 -05:00
Devin Ragotzy
88f3ee489b
Fill event_map with all events that will be needed for resolution
2021-01-14 14:31:47 +01:00
Devin Ragotzy
8a035880f0
Remove StateStore trait from state-res collect events needed
2021-01-14 14:30:24 +01:00
Devin Ragotzy
7c4d74bf9b
Fix clippy warnings remove unused imports
2021-01-14 14:30:24 +01:00
Devin Ragotzy
0ee239c9d7
Step 5 in /send just fetches state from incoming server
2021-01-14 14:30:23 +01:00
Devin Ragotzy
9e83d2b2d5
Update state-res, use the new Event trait
...
This also bumps ruma to latest and removes js_int infavor of the ruma
re-export
2021-01-14 14:30:19 +01:00
Devin Ragotzy
690c066064
State resolution outline for /send
2021-01-14 14:28:32 +01:00
Timo Kösters
2cf6fd57b7
improvement: don't send pdus to appservices if it isn't interested
...
TODO: we need to send pdus if a user of the appservice is in the room
but not the appservice user itself
2020-12-23 19:41:54 +01:00
Timo Kösters
6e5b35ea92
feat: implement appservices
...
this also reverts some stateres changes
2020-12-08 12:59:20 +01:00
Timo Kösters
45086b54b3
improvement: upgrade dependencies, fix timeline reload bug
2020-12-05 21:04:34 +01:00
Devin Ragotzy
164b1633d8
Update ruma to latest, renamed server keys and removed PduStub
2020-12-05 17:44:54 +01:00
Devin Ragotzy
27e686f9ff
Convert uses of serde_json::Value to CanonicalJsonObject
2020-12-05 17:37:12 +01:00
Devin Ragotzy
acd144e934
Fix get_closest_parent and cleanup federation/send/:txn
2020-12-05 17:37:10 +01:00
Devin Ragotzy
db8a0c5d69
Add closest_parent method to Rooms Db insert in order /send pdus
2020-12-05 17:37:07 +01:00
Devin Ragotzy
96dd3b2880
Update ruma to latest, fix unstable origin feature in ruma
2020-12-05 17:37:07 +01:00
Timo Kösters
151ef07fb3
docs: cross compile
2020-10-18 09:04:11 +02:00
Timo Kösters
9d1387954f
Update dependencies, remove dbgs
2020-10-16 14:04:29 +02:00
Timo Kösters
4964e21342
Merge remote-tracking branch 'origin/master' into federation
2020-10-07 12:02:36 +02:00
Timo Kösters
bcd1fe1856
feat: admin room
2020-10-07 11:51:49 +02:00
Timo Kösters
0d6159c2da
improvement: get_missing_events route and cleanup
2020-10-01 20:49:15 +02:00
Timo Kösters
ab332363ce
fix: don't send new requests to servers if we are already waiting
2020-10-01 20:49:14 +02:00
Timo Kösters
e08dfd982b
improvement: look at SRV record when sending requests
2020-09-23 12:04:02 +02:00
Timo Kösters
19207845bc
Fix ruma dependency
2020-09-20 13:49:13 +02:00
Timo Kösters
ea3aaa6b5c
improvement: more efficient /sync with gaps
2020-09-18 10:29:43 +02:00
Timo Kösters
b7ab57897b
fix: sending slowness
2020-09-15 16:14:59 +02:00
Timo Kösters
f7816b11de
feat: send messages over federation
2020-09-15 08:17:06 +02:00
Timo
d1099e9224
Update dependencies
2020-09-14 14:36:49 +02:00
Timo Kösters
4e44fedbcd
fix: room list over federation
2020-09-14 11:43:42 +02:00
Timo Kösters
c5313b3e8f
improvement: try out multiple servers when joining remote rooms
2020-09-14 11:00:31 +02:00
Timo Kösters
1f292c09f2
improvement: better federation joins
2020-09-14 09:29:46 +02:00
Timo Kösters
e6b1f54857
Merge remote-tracking branch 'origin/master' into federation
2020-09-12 22:23:54 +02:00
Timo Kösters
12a8c9badd
fix: join rooms over federation
2020-09-12 21:30:07 +02:00
Timo Kösters
1e8fbd8d50
Update ruma version
2020-09-08 17:32:03 +02:00
Devin Ragotzy
3b40f3d60e
Update state-res crate
2020-08-27 20:11:53 -04:00
Devin Ragotzy
f46c2d1eec
Fix review issues, move state-res to spec-comp branch
2020-08-27 20:11:53 -04:00
Timo Kösters
3f4cb753ee
improvement: add remaining key backup endpoints
2020-08-27 14:52:20 +02:00
Devin Ragotzy
672bf4f473
Cargo lock update and a few doc additions
2020-08-23 16:43:21 -04:00
Devin Ragotzy
846a0098c1
Split append_pdu -> append_pdu and build_and_append
...
Move all state event appending to append_state_pdu.
2020-08-23 16:43:21 -04:00
Devin Ragotzy
cb68bf9e0c
Use ring crate to generate StatHashes when saving stateid/statehash
2020-08-23 16:43:21 -04:00
Devin Ragotzy
c4f5a0a631
Keep track of State at event for state resolution
...
feat: first steps towards joining rooms over federation
Add state-res as a dependency of conduit
Add reverse_topological_power_sort before append_pdu
Implement statehashstatid_pduid tree for keeping track of state
Clean up implementation of state_hash as key for tracking state
2020-08-23 16:43:21 -04:00
Timo
f23fb32e95
fix: set limited to true when skipping messages in /sync
2020-08-23 16:14:09 +02:00
timokoesters
e457e19088
feat: search pdus
2020-08-23 16:14:08 +02:00
Timo
69a7cb5142
fix dependency version
2020-08-23 16:14:07 +02:00
Timo
04eee089e0
feat: first steps towards joining rooms over federation
2020-08-23 16:14:06 +02:00
Jonas Platte
75ea0b3163
Update ruma
2020-08-12 23:42:17 +02:00
timokoesters
66bc25fcd3
feat: implement /keys/changes
2020-07-29 18:05:16 +02:00
timokoesters
21eb8d4fe3
fix: problems with pdu serialization
2020-07-29 12:59:40 +02:00
timokoesters
489cbc0a93
refactor: use <_> instead of <_parameter_name>
2020-07-29 12:59:36 +02:00
Devin Ragotzy
42e0102a2a
Conditionally emit rocket::http_verb attr macros if lib/bin
2020-07-27 18:54:43 +02:00
Jonas Platte
09561ccea3
Upgrade ruma
2020-07-26 16:52:43 +02:00
Devin Ragotzy
60381ddcf4
Update to latest ruma/master rev
2020-07-25 14:25:24 -04:00
Devin Ragotzy
61458536ab
Merge branch 'master' of https://git.koesters.xyz/timo/conduit into ruma-mono
2020-07-25 13:46:28 -04:00
timokoesters
d8e1248df6
improvement: switch to stable rust
2020-07-22 22:42:01 +02:00
Devin R
33bc666859
Use sync ephemeral events in sync Resposne (remove room_id)
...
Bump ruma to latest master which also fixes some server name as String
to now being of type Box<ServerName>.
2020-07-21 14:04:39 -04:00
Devin R
59cbf202e4
Cargo.lock updated while rebasing
2020-07-17 16:05:53 -04:00
Devin R
d02685a4fd
Update to latest ruma/ruma commit
...
This will most likely be the API that is released to crates.io so it
should be fairly stable...
2020-07-17 16:04:05 -04:00
Devin R
63e23154f3
Rebase with key backups and cross signing
...
Moved back to a fork of ruma with timo's key-backup and cross-signing
branch. Ephemeral events in sync responses are EphemeralRoomEventStub
(they also have no room_id like all of sync responses events)
2020-07-17 16:04:05 -04:00
Devin R
7c38e53839
Move to depend on ruma monorepo and ruma-events0.22
2020-07-17 16:03:02 -04:00
Timo Kösters
b9de21949d
Update to rocket master ( #147 )
...
Merge branch 'master' into rocket
Update to rocket master
Co-authored-by: timokoesters <timo@koesters.xyz>
Reviewed-on: https://git.koesters.xyz/timo/conduit/pulls/147
2020-07-14 18:23:26 +02:00
timokoesters
b83fba5c44
chore: update dependencies
2020-06-26 18:04:08 +02:00
timokoesters
05f1f73e10
improvement: upgrade to sled 0.32
...
BREAKING CHANGE: old databases are not compatible anymore
2020-06-26 16:26:28 +02:00
timokoesters
a49a572d76
feat: cross-signing
2020-06-26 15:16:15 +02:00
timokoesters
db685e0cf7
fix: update rocket version
2020-06-16 13:53:15 +02:00
timokoesters
13d474f6ee
fix: update ruma version
2020-06-16 12:19:58 +02:00
timokoesters
b4d65ab67d
improvement: optimize /sync response
2020-06-08 11:39:32 +02:00
Jonas Platte
7526fd8602
Switch to the ruma meta-crate
2020-06-05 18:42:45 +02:00
timokoesters
08d19c3e0b
fix: broken dependencies
2020-06-05 09:04:51 +02:00
timokoesters
a8df1acdfd
feat: load replies, forward pagination
2020-06-04 13:58:55 +02:00
timokoesters
b192fddf2f
fix: show device display names
2020-06-04 09:48:32 +02:00
timokoesters
19c9e4b916
fix: room version 6
2020-06-03 22:30:50 +02:00
timokoesters
4e507ef706
feat: room visibility and aliases
2020-05-31 09:46:11 +02:00
timokoesters
18bf67748c
feat: redaction
2020-05-31 08:01:10 +02:00
timokoesters
1014388a9c
fix: one time keys are never removed
2020-05-23 19:17:55 +02:00
timokoesters
d95e8b4880
fix: problem with to-device for all devices
2020-05-21 13:52:54 +02:00
timokoesters
d544d28b6e
feat: image thumbnails
2020-05-19 19:59:52 +02:00
timokoesters
4fb79ebb4c
chore: update dependencies
2020-05-14 13:56:29 +02:00
Rudi Floren
00a9424719
feat: sytests
2020-05-11 14:44:23 +02:00
timokoesters
551308e9a8
Update dependencies and send displayname updates again
2020-05-08 21:13:52 +02:00
timokoesters
8f67c01efd
refactor: split database into multiple files, more error handling, cleaner code
2020-05-03 21:44:48 +02:00
timokoesters
4ca1ada73e
update ruma
2020-05-01 21:45:55 +02:00
timokoesters
b02c568941
feat: notifications, simple permission systems
2020-05-01 20:28:13 +02:00
timokoesters
fd1aea7e36
Update dependencies
2020-04-29 10:27:41 +02:00
timokoesters
120b6f4b95
Bump dependencies and fixes
2020-04-29 10:27:39 +02:00
timokoesters
1af6dd984a
More work on federation
2020-04-29 10:27:38 +02:00
timokoesters
b0d9ccdb2d
Signing, basis for federation
2020-04-29 10:27:38 +02:00
timokoesters
80ddf80f17
work
2020-04-29 10:27:31 +02:00
gnieto
fa9e127a1e
Store hashed passwords ( #7 )
...
Use if let instead of unwrap
Default to invalid password if could not calculate
Move hash password methdo and return Result
Rename get_password method
Default to empty password when no pwd is received
Store hashed passwords
Store passwords hashed with Argon2 and verify password with that stored
hash.
Co-authored-by: Guillem Nieto <gnieto.talo@gmail.com>
2020-04-14 22:25:44 +02:00
timokoesters
040296c711
Add test support and impl dummy /read_markers
2020-04-10 13:36:57 +02:00
timokoesters
93b1d97166
Update readme and cargo.toml
2020-04-10 10:25:33 +02:00
Jonas Platte
38ab7c843e
Update error type of /register route
2020-04-08 23:25:19 +02:00
Jonas Platte
c60402bf0d
Update ruma-client-api
2020-04-08 23:13:30 +02:00
timokoesters
ddcd423e6f
feat: random tokens, sessions, guest usernames and device ids
2020-04-08 22:04:29 +02:00
timokoesters
10bb96fcf7
feat: room joining, room based /sync responses
2020-04-06 13:52:46 +02:00
timokoesters
884dc2867d
Move to rocket's async branch
2020-04-05 19:54:08 +02:00
timokoesters
8b8381bcc0
New PduEvent struct
2020-04-04 11:53:37 +02:00
timokoesters
f9cfede2a8
fix: deserialize sync event body
2020-04-03 21:17:27 +02:00
timokoesters
fa3226898c
feat: save pdus
...
PDUs are saved in a pduid -> pdus map. roomid -> pduleaves keeps track
of the leaves of the event graph and eventid -> pduid maps event ids to
pdus.
2020-04-03 17:58:38 +02:00
timokoesters
533260edd8
Add auth
2020-03-29 21:05:20 +02:00
timokoesters
73e04e71d7
Start work on event creation
2020-03-29 13:49:13 +02:00
timokoesters
744e0adfcf
Try to impl auth in ruma_wrapper
2020-03-28 23:08:59 +01:00
timokoesters
34a53ce20a
Better database structure
2020-03-28 18:50:02 +01:00
timokoesters
6fffcecf8e
Updates
2020-03-27 21:00:10 +01:00
timokoesters
c2c18b4651
feat: database
2020-02-20 10:12:13 +01:00
timokoesters
cd777af41c
feat: simple endpoint handlers
2020-02-18 22:07:57 +01:00
timokoesters
6264628c11
Initial commit
2020-02-15 22:42:21 +01:00