Commit graph

301 commits

Author SHA1 Message Date
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