Commit Graph

283 Commits (5cc53c9e14ef5319f2dd8f88aa58d6e966cfdb20)

Author SHA1 Message Date
Jonas Platte 892a0525f2
Upgrade Ruma 3 years ago
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
3 years ago
Jonas Zohren 2fff720df3 CI: New Multiarch builds and Docker images + cargo clippy/test output now integrated into GitLab 3 years ago
Moritz Bitsch 9fccbb014a Implement TURN server authentication with hmac
This is a prefered method to allow limited access to the TURN server
3 years ago
Nyaaori bbe16f8467
Update Ruma 3 years ago
Nyaaori 55d78b1914
Bump Ruma version to fix M_BAD_JSON on login 3 years ago
Jonas Platte 09895a20c8
Upgrade Ruma
Co-authored-by: Timo Kösters <timo@koesters.xyz>
3 years ago
Jonas Platte 979ec6b4fa
Upgrade ruma 3 years ago
Jonas Platte 5821b8e705
Remove unused dependencies 3 years ago
Timo Kösters 7cd7f1923f
chore: update dependencies 3 years ago
Timo Kösters 43d693ca19
revert Arc<EventId> commit 3 years ago
Timo Kösters 875b345a5f
docs: update readme and version 3 years ago
Timo Kösters 4b39d7cb64
fix: batch key fetching 3 years ago
Jonathan de Jong 69df9a0145 add tls 3 years ago
Devin Ragotzy 9bff276fa9
Use Arc<EventId> in place of most EventIds 3 years ago
Timo Kösters d485eb5a24
chore: bump dependencies 3 years ago
Timo Kösters dd87066546
improvement: more efficient auth chain cache 3 years ago
Timo Kösters 30b309b708 Merge branch 'speed' into 'master'
Better E2EE and faster incoming event handling

See merge request famedly/conduit!163
3 years ago
Timo Kösters 81e056417c
improvement: better e2ee over fed, faster incoming event handling 3 years ago
Jonas Zohren b6e755f67e Only apply max. optimizations in CI builds.
The average german man has a life expectancy of 78.7 years, or 689884.2 hours.
Assuming that Timo is 20 years old, he has rougly 514564.2 hours left on planet earth.
Also assuming that cross release builds took him 25 minutes before,
but 2-2.5x of that with the current release compilation config he wasted roughly an hour waiting for it to complete.
If he continued to work on Conduit for 20 more years (or 175320 hours),
and makes a release compilation about once per day, this means 7305 hours or 304 days wasted waiting for the rust compiler.
By cutting that back down to the original settings, he get's 182 days of his life back.
That's about 0.63% of his remaining life.
182 joyful days he can spend with family and loved ones.
3 years ago
Timo Kösters 33481ec062 Merge branch 'statediffs' into 'master'
Statediffs

See merge request famedly/conduit!145
3 years ago
Timo Kösters 46d8a46e1f
improvement: faster incoming transaction handling 3 years ago
Jonas Zohren 9c3a8edcae Use full optimizations for master and faster config else
Signed-off-by: Jonas Zohren <git-pbkyr@jzohren.de>
3 years ago
Timo Kösters df727688ef
remove rocksdb 3 years ago
Timo Kösters 5df6b8cd5f
improvement: better account data implementation 3 years ago
Timo Kösters 5c776e9ba7
feat: heed db backend (LMDB) 3 years ago
Timo Kösters 5e924227b6
feat: add threadpool for iterator threads, bug fixes, tracing_flame support 3 years ago
Timo Kösters f0ac7ed933
chore: update ruma again 3 years ago
Timo Kösters 0f8ecdc625
fix: state res fixes 3 years ago
Timo Kösters cfaa900e83
improvement: auth chain cache 3 years ago
Timo Kösters f5273f7eb1
improvement: upgrade ruma and implement blurhashes 3 years ago
Timo Kösters 0fcefa4125
fix: ruma 3 years ago
Jonathan de Jong 661101c9ae add sled cache_capacity back 3 years ago
Jonathan de Jong 15471d9ac4 update rocket and lock 3 years ago
Jonathan de Jong 9d4fa9a220 Sqlite 3 years ago
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
3 years ago
Devin Ragotzy c30cc50a0b Switch ruma to a commit from next 3 years ago
Aiden McClelland b2d5516058 add support for arbitrary proxies 3 years ago
Devin Ragotzy 98f1480e2b
Remove auth_cache using a closure to fetch events in state-res 3 years ago
Timo Kösters 05821d6fd5
improvement: pdu cache, /sync cache 3 years ago
Jonas Platte f6046871f4
Upgrade Ruma 3 years ago
Timo Kösters cd4bc520d8
improvement: feature flags for sled, rocksdb 3 years ago
Timo Kösters d0ee823254
feat: swappable database backend 3 years ago
Damian Poddebniak bb7a4220d3 Fix ruma dependency 3 years ago
Timo Kösters 5b5cc0574e
feat: implement /claim, handle to-device events 3 years ago
Vadim Zeitlin 0f16a79888 Specify the minimum required Rust version in the manifest
Also mention it in the deployment guide.
3 years ago
Timo Kösters daa1fc90a7
fix: state resolution bugs 3 years ago
Timo Kösters acfd0aef27 Merge branch 'cargo-deb-packaging-update' into 'master'
Update cargo-deb packaging for recent changes

See merge request famedly/conduit!61
3 years ago
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
3 years ago
Timo Kösters 24793891e0
feat: implement GET /presence 3 years ago
Timo Kösters f62258ba35
improvement: bug fixes and refactors
- power level content override adds to the default event instead of
replacing it
- sending code refactored to make edus possible
- remove presence events when restarting conduit
- remove room_id field from read receipts over /sync
- handle incoming read receipts
- fix array bounds bug in server_server.rs
3 years ago
Jonas Platte a0457000ff
Upgrade Ruma 3 years ago
Jonas Platte c28eba1e5b
Bump ruma 3 years ago
Jonas Platte 5be5c9e9f0
Bump ruma 3 years ago
Timo Kösters 2fc1ec2ad5
fix: logging 3 years ago
Jonas Platte d8b484beed
Upgrade ruma 3 years ago
Timo Kösters 23f81bfaf7
chore: update dependencies 3 years ago
Timo Kösters 6e84d317b2
improvement: update ruma 3 years ago
Paul van Tilburg 5bf43a4d7e
Generate conduit.toml instead of debian environment file
Only generate this file once. I am not sure what to do with future
upgrades yet.
3 years ago
Paul van Tilburg ab58609d3d
No longer use/support a local environment file 3 years ago
Gabriel Souza Franco 0b56589dce feat: add handling of tls cert for delegated hosts 3 years ago
Timo Kösters 04b08d4505
chore: bump stateres 3 years ago
Timo Kösters abddfc2d2a
Merge remote-tracking branch 'famedly/master' into develop 3 years ago
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)
3 years ago
Timo Kösters 8b40e0a85f
improvement: fetch signing keys in parallel when joining a room 3 years ago
Timo Kösters b4f79b77ba
feat: reject invites over federation 3 years ago
Timo Kösters 8773e5013d
feat: incoming invites over federation 3 years ago
Timo Kösters 044e65afcc
fix: move back to sled stable 3 years ago
Timo Kösters 84f4ce73e5
fix: membership deserializing 3 years ago
Timo Kösters 51aa6448bc
fix: use sled main to avoid deadlock 3 years ago
Jonas Platte fe744c856f
Upgrade ruma
… and refactor push rule code along the way.
3 years ago
Timo Kösters c213769d9f
improvement: refactor state res and fix a few bugs in the process 3 years ago
Timo Kösters 3ea7d162db
fix: various improvements and fixes 3 years ago
Timo Kösters 363c629faf
fix: signature key fetching, optimize push sending 3 years ago
Timo Kösters d4c76f4654
chore: update ruma 3 years ago
Timo Kösters 5cb15551f3
improvement: use db compression 3 years ago
Timo Kösters 21f785d530
Merge branch 'correct-sendtxn' into pushers 3 years ago
Timo Kösters 6da40225bb
improvement: make state res actually work 3 years ago
Timo Kösters 7bc58461cd
fix: avoid illegal instruction crash
see https://github.com/spacejam/sled/issues/1232
3 years ago
Devin Ragotzy d0df8b495c Merge remote-tracking branch 'upstream/master' into correct-sendtxn 3 years ago
Timo Kösters 105f893cf3
chore: bump other dependencies to make it work 3 years ago
Rudi Floren f4039902d8 Bump Rocket to current HEAD 3 years ago
Timo Kösters 4155a47db1
feat: opentelemetry/jaeger support 3 years ago
Devin Ragotzy 0dd8a15c49 Fix leaves not being replaced by correct eventId in membership
Update ruma
3 years ago
Devin Ragotzy 6fd3e1d1dd Append state event that pass resolution to DB, update to tokio 1.1 3 years ago
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.
3 years ago
Devin Ragotzy 8de0d9f9ce Remove StateStore trait from state-res collect events needed 3 years ago
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
3 years ago
Devin Ragotzy 4a92a29b56 State resolution outline for /send 3 years ago
Timo Kösters d49911c5e0
Add 'm.login.token' authentication 3 years ago
Timo Kösters 2d7012cdb1 Merge branch 'appservices' into 'master'
Appservices

Closes #29

See merge request famedly/conduit!11
3 years ago
Timo Kösters fd3fb3a7ed
Merge remote-tracking branch 'famedly/master' into appservices 3 years ago
Jonas Platte 6de5b3c2a0
Update repository link in crate metadata 3 years ago
Devin Ragotzy 73124629b7 Add general rules matching for pusher, calc unread msgs 3 years ago
Devin Ragotzy cd0c5c0566 Append state event that pass resolution to DB, update to tokio 1.1 3 years ago
Devin Ragotzy a897608025 Roll back tokio and rocket update since ruma's request is at 0.2 tokio 4 years ago
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.
4 years ago
Devin Ragotzy 8a035880f0
Remove StateStore trait from state-res collect events needed 4 years ago
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
4 years ago
Devin Ragotzy 690c066064
State resolution outline for /send 4 years ago
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
4 years ago
Timo Kösters 6e5b35ea92
feat: implement appservices
this also reverts some stateres changes
4 years ago
Timo Kösters 45086b54b3
improvement: upgrade dependencies, fix timeline reload bug 4 years ago
Devin Ragotzy 164b1633d8
Update ruma to latest, renamed server keys and removed PduStub 4 years ago
Devin Ragotzy acd144e934
Fix get_closest_parent and cleanup federation/send/:txn 4 years ago
Devin Ragotzy db8a0c5d69
Add closest_parent method to Rooms Db insert in order /send pdus 4 years ago
Devin Ragotzy 96dd3b2880
Update ruma to latest, fix unstable origin feature in ruma 4 years ago
Paul van Tilburg 1b4a79d47c
Add and install README.Debian
This file documents how the packaging is organized and how to
configure and use it.  It also details what the default deployment
is like.
4 years ago
Paul van Tilburg f72554de10
Split config into a Debian and local part
* The Debian part will be generated and managed by Debconf and configure
  homeserver name, address and port
* The local part will just be a config file that shows the other
  configuration options

Added the address configuration and moved the config generation
from the config to the postinst script.
4 years ago
Paul van Tilburg 79692db45d
First version of cargo-deb packaging setup 4 years ago
Timo Kösters 6b3934e31d
feat: configurable cache capacity 4 years ago
Timo a2dbc6fe6d
Change license to Apache-2.0 4 years ago
Timo Kösters 151ef07fb3
docs: cross compile 4 years ago
Timo Kösters e08dfd982b
improvement: look at SRV record when sending requests 4 years ago
Timo d1099e9224
Update dependencies 4 years ago
Timo Kösters 12a8c9badd
fix: join rooms over federation 4 years ago
Timo Kösters 1e8fbd8d50
Update ruma version 4 years ago
Devin Ragotzy f46c2d1eec Fix review issues, move state-res to spec-comp branch 4 years ago
Devin Ragotzy cb68bf9e0c Use ring crate to generate StatHashes when saving stateid/statehash 4 years ago
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
4 years ago
Timo f23fb32e95
fix: set limited to true when skipping messages in /sync 4 years ago
timokoesters e457e19088
feat: search pdus 4 years ago
Timo 04eee089e0
feat: first steps towards joining rooms over federation 4 years ago
Faelar 0fef955b28 Fix license. 4 years ago
Jonas Platte 75ea0b3163
Update ruma 4 years ago
timokoesters d891bbb5dc
improve: presence 4 years ago
timokoesters 21eb8d4fe3
fix: problems with pdu serialization 4 years ago
timokoesters 489cbc0a93
refactor: use <_> instead of <_parameter_name> 4 years ago
Devin Ragotzy 42e0102a2a
Conditionally emit rocket::http_verb attr macros if lib/bin 4 years ago
Jonas Platte 09561ccea3
Upgrade ruma 4 years ago
Devin Ragotzy 60381ddcf4 Update to latest ruma/master rev 4 years ago
Devin Ragotzy 61458536ab Merge branch 'master' of https://git.koesters.xyz/timo/conduit into ruma-mono 4 years ago
timokoesters d8e1248df6
improvement: switch to stable rust 4 years ago
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>.
4 years ago
Devin R 75959cdc10 Resolve stying review issues 4 years ago
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...
4 years ago
Devin R 84dcb885a7 Return correct Errors and replace panic, fix misc review issues
Remove EventJson todo comments, clean up Cargo.toml commented ruma deps.
4 years ago
Devin R ddc7598870 Use ruma/ruma master 4 years ago
Devin R 7c38e53839 Move to depend on ruma monorepo and ruma-events0.22 4 years ago
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
4 years ago
timokoesters 05f1f73e10
improvement: upgrade to sled 0.32
BREAKING CHANGE: old databases are not compatible anymore
4 years ago
timokoesters a49a572d76
feat: cross-signing 4 years ago
timokoesters db685e0cf7
fix: update rocket version 4 years ago
timokoesters 13d474f6ee
fix: update ruma version 4 years ago
timokoesters b4d65ab67d
improvement: optimize /sync response 4 years ago
Jonas Platte 7526fd8602
Switch to the ruma meta-crate 4 years ago
timokoesters 08d19c3e0b
fix: broken dependencies 4 years ago
timokoesters a8df1acdfd
feat: load replies, forward pagination 4 years ago
timokoesters b192fddf2f
fix: show device display names 4 years ago
timokoesters 4e507ef706
feat: room visibility and aliases 4 years ago