Commit graph

517 commits

Author SHA1 Message Date
dependabot[bot]
49a92f08d6 Bump crossbeam from 0.8.2 to 0.8.3
Bumps [crossbeam](https://github.com/crossbeam-rs/crossbeam) from 0.8.2 to 0.8.3.
- [Release notes](https://github.com/crossbeam-rs/crossbeam/releases)
- [Changelog](https://github.com/crossbeam-rs/crossbeam/blob/master/CHANGELOG.md)
- [Commits](https://github.com/crossbeam-rs/crossbeam/compare/crossbeam-0.8.2...crossbeam-0.8.3)

---
updated-dependencies:
- dependency-name: crossbeam
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-25 15:46:09 -05:00
dependabot[bot]
cb23dba67d Bump persy from 1.4.4 to 1.4.7
Bumps [persy](https://gitlab.com/tglman/persy) from 1.4.4 to 1.4.7.
- [Changelog](https://gitlab.com/tglman/persy/blob/master/release-checklist.md)
- [Commits](https://gitlab.com/tglman/persy/compare/1.4.4...1.4.7)

---
updated-dependencies:
- dependency-name: persy
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-25 15:45:59 -05:00
Nineko
fdc3e07be6
feat: replaced flaky argon2 with better argon2 crate (#37)
* feat: replaced flaky argon2 with better argon2 crate

* fix: applied cargo fmt nightly

* docs: added comment specifying what the settings for Argon2 mean

* fix: made hashing error a bit more descriptive

* fix: fixed incorrect value for Kib
2023-12-25 10:28:56 -05:00
Charles Hall
827af38cc9 comment out heed backend; code doesn't compile 2023-12-24 01:05:13 -05:00
dependabot[bot]
f20beae8dc Bump nix from 0.26.4 to 0.27.1
Bumps [nix](https://github.com/nix-rust/nix) from 0.26.4 to 0.27.1.
- [Changelog](https://github.com/nix-rust/nix/blob/master/CHANGELOG.md)
- [Commits](https://github.com/nix-rust/nix/compare/v0.26.4...v0.27.1)

---
updated-dependencies:
- dependency-name: nix
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-22 18:56:36 -05:00
dependabot[bot]
09f68f9f78 Bump serde_html_form from 0.2.2 to 0.2.3
Bumps [serde_html_form](https://github.com/jplatte/serde_html_form) from 0.2.2 to 0.2.3.
- [Changelog](https://github.com/jplatte/serde_html_form/blob/main/CHANGELOG.md)
- [Commits](https://github.com/jplatte/serde_html_form/compare/v0.2.2...v0.2.3)

---
updated-dependencies:
- dependency-name: serde_html_form
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-22 18:39:35 -05:00
dependabot[bot]
ba40582412 Bump ring from 0.17.5 to 0.17.7
Bumps [ring](https://github.com/briansmith/ring) from 0.17.5 to 0.17.7.
- [Commits](https://github.com/briansmith/ring/commits)

---
updated-dependencies:
- dependency-name: ring
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-22 18:32:38 -05:00
dependabot[bot]
d502357a0f Bump tracing-subscriber from 0.3.17 to 0.3.18
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing) from 0.3.17 to 0.3.18.
- [Release notes](https://github.com/tokio-rs/tracing/releases)
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.3.17...tracing-subscriber-0.3.18)

---
updated-dependencies:
- dependency-name: tracing-subscriber
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-22 18:32:28 -05:00
Charles Hall
d76ea86909 update opentelemetry things
Upstream's changelogs are unhelpful :/
2023-12-22 18:24:03 -05:00
strawberry
a3336902a0 bump rust-rockdb to latest git for 8.9.1
Co-authored-by: Charles Hall <charles@computer.surgery>
Signed-off-by: strawberry <strawberry@puppygock.gay>
2023-12-21 22:47:28 -05:00
dependabot[bot]
b977d94261 Bump thiserror from 1.0.48 to 1.0.51
Bumps [thiserror](https://github.com/dtolnay/thiserror) from 1.0.48 to 1.0.51.
- [Release notes](https://github.com/dtolnay/thiserror/releases)
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.48...1.0.51)

---
updated-dependencies:
- dependency-name: thiserror
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 19:17:27 -05:00
dependabot[bot]
65c9b1721f Bump jsonwebtoken from 9.1.0 to 9.2.0
Bumps [jsonwebtoken](https://github.com/Keats/jsonwebtoken) from 9.1.0 to 9.2.0.
- [Changelog](https://github.com/Keats/jsonwebtoken/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Keats/jsonwebtoken/compare/v9.1.0...v9.2.0)

---
updated-dependencies:
- dependency-name: jsonwebtoken
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-21 19:17:06 -05:00
dependabot[bot]
b49e43d8bb Bump clap from 4.4.8 to 4.4.11
Bumps [clap](https://github.com/clap-rs/clap) from 4.4.8 to 4.4.11.
- [Release notes](https://github.com/clap-rs/clap/releases)
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md)
- [Commits](https://github.com/clap-rs/clap/compare/v4.4.8...v4.4.11)

---
updated-dependencies:
- dependency-name: clap
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-20 22:37:04 -05:00
dependabot[bot]
f5d2df5483 Bump async-trait from 0.1.74 to 0.1.75
Bumps [async-trait](https://github.com/dtolnay/async-trait) from 0.1.74 to 0.1.75.
- [Release notes](https://github.com/dtolnay/async-trait/releases)
- [Commits](https://github.com/dtolnay/async-trait/compare/0.1.74...0.1.75)

---
updated-dependencies:
- dependency-name: async-trait
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-20 22:32:46 -05:00
strawberry
8454773275 log rejected sendjoin, remove unnecessary clone
Signed-off-by: strawberry <strawberry@puppygock.gay>
2023-12-03 20:20:25 -05:00
strawberry
0ed891b3a1 bump version
Signed-off-by: strawberry <strawberry@puppygock.gay>
2023-12-03 01:16:08 -05:00
strawberry
d9d1ce3cb5 fix refering uninit static, use upstream rocksdb again, don't compile debug info
even rust-analyzer themselves don't compile with debug info because it
makes cargo checks and builds in general a lot longer. helps speed
things up and we mainly care about panics/stacktraces and compiler
errors.

https://github.com/rust-lang/rust-analyzer/blob/master/Cargo.toml#L12-L15

upstream rust-rocksdb is active again finally

Signed-off-by: strawberry <strawberry@puppygock.gay>
2023-12-03 01:00:23 -05:00
strawberry
1a3051eb4a remove nightly only feature, small housekeeping stuff
Signed-off-by: strawberry <strawberry@puppygock.gay>
2023-11-29 21:59:18 -05:00
strawberry
150364b07d rename to conduwuit and use proper version number
Signed-off-by: strawberry <june@girlboss.ceo>
2023-11-29 21:37:12 -05:00
strawberry
20b686cac5 add some ruma features, fix futures warning
Signed-off-by: strawberry <june@girlboss.ceo>
2023-11-27 21:34:45 -05:00
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
girlbossceo
8b28225af9 add lz4 to rocksdb features
Signed-off-by: girlbossceo <june@girlboss.ceo>
2023-10-23 22:22:42 -04: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
June
84338cc827 aggressive optimisations
Signed-off-by: June <june@girlboss.ceo>
2023-09-13 21:46:06 -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
Paul van Tilburg
433dad6ac2
Turn README.Debian into a markdown file
It is common to have a markdown file per deployment subdirectory.
Still install it as `README.Debian` to `/usr/share/doc/matrix-conduit`
as per Debian policy.

Also update the link in the main `README.md` file.
2023-07-23 12:37:38 +02: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
Timo Kösters
f8a36e7554 Merge branch 'memory' into 'next'
improvement: better memory usage and admin commands to analyze it

See merge request famedly/conduit!497
2023-07-03 17:43:27 +00:00
Timo Kösters
a2c3256ced
improvement: better memory usage and admin commands to analyze it 2023-07-03 19:41:07 +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
dbd360ebb9 Merge branch 'unbreak' into 'next'
fix rustc version, nix upkeep

See merge request famedly/conduit!482
2023-06-26 19:12:46 +00: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
Charles Hall
4a7d3c7301
upgrade rust in Cargo.toml/flake.nix
Looks like this should've happened as part of !479.
2023-06-17 17:04:11 -07:00
Timo Kösters
d62cd2ae51
chore: bump dependencies 2023-05-21 13:42:59 +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
Yusuf Bera Ertan
11b9cfad5e
docs: update nix comment for rust-version in Cargo.toml 2023-01-28 00:14:58 +03:00
Yusuf Bera Ertan
5d913f7010
build(nix): fix flake builds 2023-01-28 00:10:21 +03:00
Charles Hall
315944968b
remind people to update the hash
And offer help since it's pretty easy but impossible if you don't have
Nix installed.
2022-12-23 00:30:36 -08:00
Timo Kösters
2a66ad4329
Bump version to 0.6.0-alpha 2022-12-21 16:08:05 +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
Nyaaori
6786c44f4d
chore: Fix MSRV
Ruma requires Rust 1.64
2022-11-21 20:50:30 +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
Charles Hall
4710f739c0
clap v4 turned more things into optional features
So we need to re-enable some things. See their changelog[0] for details.

[0]: https://github.com/clap-rs/clap/blob/master/CHANGELOG.md#migrating
2022-10-12 17:55:12 -07: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
fb6bfa9753
fix: missing field origin error with synapse servers 2022-10-11 15:25:10 +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
25c3d89f28
Bump rust version for const fn RwLock::new 2022-10-10 14:02:03 +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
9b898248c7
feat: more admin commands, better logging 2022-06-18 22:55:34 +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
4dcc080ad9 Merge branch 'pre-release-doc-changes' into 'next'
Pre-0.3 doc adjustments

See merge request famedly/conduit!287
2022-02-04 17:12:33 +00:00
Timo Kösters
d55992dc83 Merge branch 'jemallocfeature' into 'next'
feat: allow disabling jemalloc via feature

See merge request famedly/conduit!285
2022-02-04 17:08:03 +00: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
8d8edddb2e
feat: allow disabling jemalloc via feature 2022-02-04 17:00:46 +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
Andrei Vasiliu
f244c0e2ce Merge remote-tracking branch 'refs/remotes/origin/next' into command-refactor 2022-01-21 10:19:17 +02:00
Andrei Vasiliu
e378bc4a2c Refactor admin commands to use structopt 2022-01-21 10:17:50 +02:00
Timo Kösters
ab4f3bd06c Merge branch 'lib-main' into 'next'
Clean up mod and use statements in lib.rs and main.rs

See merge request famedly/conduit!258
2022-01-20 12:32:39 +00:00
Jonas Platte
ff5fec9e74
Raise minimum supported Rust version to 1.56 2022-01-20 13:19:51 +01:00
Timo Kösters
d4eb3e3295
fix: rocksdb does not use zstd compression unless we disable everything else 2022-01-19 07:09:25 +01: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
Tglman
ab15ec6c32 feat: Integration with persy using background ops 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
fa6d7f7ccd
feat: database backend selection at runtime 2022-01-13 22:42:22 +01:00
Timo Kösters
b1d9ec3efc
fix: atomic increment 2022-01-13 22:28:18 +01:00
Timo Kösters
a30b588ede
rocksdb as default 2022-01-13 22:10:50 +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
Timo Kösters
0ec26b7e96 Merge branch 'next' into 'next'
refactor:moved key watch wake logic to specific module

See merge request famedly/conduit!238
2022-01-13 10:27:56 +00:00
Tglman
a889e884e6 refactor:moved key watch wake logic to specific module 2021-12-23 23:17:43 +00: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
Nyaaori
bbe16f8467
Update Ruma 2021-10-24 00:45:02 +00:00
Nyaaori
55d78b1914
Bump Ruma version to fix M_BAD_JSON on login 2021-10-16 00:45:51 +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
30b309b708 Merge branch 'speed' into 'master'
Better E2EE and faster incoming event handling

See merge request famedly/conduit!163
2021-08-24 18:16:56 +00:00
Timo Kösters
81e056417c
improvement: better e2ee over fed, faster incoming event handling 2021-08-24 19:52:05 +02:00
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.
2021-08-22 21:05:32 +00:00
Timo Kösters
33481ec062 Merge branch 'statediffs' into 'master'
Statediffs

See merge request famedly/conduit!145
2021-08-21 13:05:38 +00:00
Timo Kösters
46d8a46e1f
improvement: faster incoming transaction handling 2021-08-19 11:01:43 +02:00
Jonas Zohren
9c3a8edcae Use full optimizations for master and faster config else
Signed-off-by: Jonas Zohren <git-pbkyr@jzohren.de>
2021-08-14 21:41:27 +02:00
Timo Kösters
df727688ef
remove rocksdb 2021-08-04 21:17:40 +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
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
661101c9ae add sled cache_capacity back 2021-07-15 13:29:08 +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
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
Jonas Platte
f6046871f4
Upgrade Ruma 2021-06-17 20:12:36 +02:00
Timo Kösters
cd4bc520d8
improvement: feature flags for sled, rocksdb 2021-06-12 15:13:04 +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
Vadim Zeitlin
0f16a79888 Specify the minimum required Rust version in the manifest
Also mention it in the deployment guide.
2021-05-27 23:32:33 +02:00
Timo Kösters
daa1fc90a7
fix: state resolution bugs 2021-05-27 10:48:17 +02:00
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
2021-05-22 09:03:43 +00: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
Timo Kösters
24793891e0
feat: implement GET /presence 2021-05-14 11:05:41 +02:00
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
2021-05-12 20:15: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
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.
2021-04-22 21:52:40 +02:00
Paul van Tilburg
ab58609d3d
No longer use/support a local environment file 2021-04-16 22:07:58 +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
abddfc2d2a
Merge remote-tracking branch 'famedly/master' into develop 2021-04-14 10:26:28 +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
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
Timo Kösters
7bc58461cd
fix: avoid illegal instruction crash
see https://github.com/spacejam/sled/issues/1232
2021-03-12 16:22:35 +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
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
8de0d9f9ce Remove StateStore trait from state-res collect events needed 2021-02-09 15:21:41 -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
Timo Kösters
2d7012cdb1 Merge branch 'appservices' into 'master'
Appservices

Closes #29

See merge request famedly/conduit!11
2021-02-07 12:24:28 +00:00
Timo Kösters
fd3fb3a7ed
Merge remote-tracking branch 'famedly/master' into appservices 2021-02-03 12:54:37 +01:00
Jonas Platte
6de5b3c2a0
Update repository link in crate metadata 2021-02-02 18:14:00 +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
8a035880f0
Remove StateStore trait from state-res collect events needed 2021-01-14 14:30:24 +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
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
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.
2020-11-24 14:42:20 +01:00
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.
2020-11-24 14:42:18 +01:00
Paul van Tilburg
79692db45d
First version of cargo-deb packaging setup 2020-11-24 14:38:15 +01:00
Timo Kösters
6b3934e31d
feat: configurable cache capacity 2020-10-23 14:38:12 +02:00
Timo
a2dbc6fe6d
Change license to Apache-2.0 2020-10-18 13:47:52 +02:00
Timo Kösters
151ef07fb3
docs: cross compile 2020-10-18 09:04:11 +02:00
Timo Kösters
e08dfd982b
improvement: look at SRV record when sending requests 2020-09-23 12:04:02 +02:00
Timo
d1099e9224
Update dependencies 2020-09-14 14:36:49 +02:00
Timo Kösters
12a8c9badd
fix: join rooms over federation 2020-09-12 21:30:07 +02:00