mdecimus
c19d2ceb43
Fixed tests for FDB and SQL stores
2025-05-23 17:07:36 +02:00
mdecimus
4b89e5d33f
Add cluster orchestration support for Kafka and Zenoh
2025-05-21 17:33:24 +02:00
mdecimus
7e76bcd7f1
Fix purge and enterprise tests
2025-05-18 09:47:46 +02:00
mdecimus
65fe4b1b49
Sequential change ids
2025-05-17 21:48:30 +02:00
mdecimus
839b7189fa
Nats + Redis PubSub cluster updates replacing Gossip protocol
2025-05-16 16:20:05 +02:00
mdecimus
c5596fb656
Partial rollback of CompactString after benchmarking (or 'premature optimization is the root of all evil')
2025-05-16 16:20:04 +02:00
mdecimus
fac2975a5a
Storage layer refactoring: faster id generation, automatic batching and virtual thread ids
2025-05-16 16:20:04 +02:00
mdecimus
3f825aaafd
DAV server passing Litmus test suite
2025-05-16 16:20:04 +02:00
mdecimus
2826ff1548
How I stopped worrying and learned to love zero-copy deserialization
2025-05-16 16:20:00 +02:00
mdecimus
d4ac752276
Add eDNS option + fix blob range bug
2025-03-09 17:32:32 +01:00
Mauro D.
927576583d
Revert "Fix off-by-one error in get_blob with Range ( #766 )" ( #1295 )
...
This reverts commit b4c00ebe90 .
2025-03-09 17:21:55 +01:00
mdecimus
44f8ef29e1
Bump to Rust 2024
2025-02-21 09:59:23 +01:00
mdecimus
2eb388674d
Refactored local delivery to avoid mpsc channel
2025-01-17 15:29:55 +01:00
mdecimus
ef721412da
Add return value option to counter_incr
2025-01-16 12:46:19 +01:00
mdecimus
a491c6388f
Automatic key migration
2025-01-14 11:44:46 +01:00
mdecimus
76c53af46b
Fixed distributed locking in non-Redis stores ( #1066 )
2025-01-13 20:28:30 +01:00
mdecimus
3612d5fc5d
Clippy fixes
2025-01-11 11:43:45 +01:00
mdecimus
7dfaa5bf11
Reset IMAP UIDs endpoint
2025-01-03 09:15:05 +01:00
mdecimus
3530b6625f
Sharded in-memory store
2024-12-27 15:49:30 +01:00
mdecimus
e5ebc5ce33
Delete in-memory keys by prefix
2024-12-26 19:01:49 +01:00
mdecimus
65209174f0
Bayes filtering per account ( #819 ) + Delivered-To header ( #916 )
2024-12-24 18:02:12 +01:00
mdecimus
7cca6fc298
HTTP remote lists and Spam filter improvements
2024-12-22 19:35:22 +01:00
mdecimus
d14706d088
Distributed locking improvements
2024-12-21 19:22:38 +01:00
mdecimus
07449a3622
Port Spam filter to Rust - part 6
2024-12-15 18:01:17 +01:00
tamwuff
9b4f5e8c75
Support Azure blob storage in a similar fashion to S3. ( #907 )
2024-11-10 08:45:50 +01:00
mdecimus
51ccdf0c03
AI endpoint -> url setting rename
2024-10-13 09:59:03 +02:00
afontenot
b4c00ebe90
Fix off-by-one error in get_blob with Range ( #766 )
...
When range.end == decompressed.len(), the last value in the range will
also be the last value in decompressed, because ranges ends are
exclusive.
This issue had two consequences that I have noticed. The first is that
requesting the last (or only) message part via JMAP will result in the
entire message being returned instead, because the range ends on the
last byte of the message.
The second issue, which resulted from the first, was that attempting to
fetch the last (or only) message part would almost always fail when
requested via JMAP if the message part used the quoted-printable
transfer encoding. This is because Stalwart would attempt to decode the
blob, but since the entire file was returned, this would include
headers which are very likely to break assumptions made by the decoder,
e.g. unexpected '=' tokens as in 'charset=UTF-8'
The second issue was originally reported here:
https://github.com/stalwartlabs/mail-server/discussions/758
2024-09-22 09:15:49 +02:00
mdecimus
d0303aefa8
Test fixes - part 3
2024-09-18 11:18:43 +02:00
mdecimus
dcc31e8b3e
Metric history + Live metrics
2024-08-23 16:21:35 +02:00
mdecimus
bd4129e160
Fixed tracing index table type for SQL stores
2024-08-21 18:32:59 +02:00
mdecimus
6d76b26fb8
Fix compile flags for SQL Read Replicas
2024-08-20 17:27:03 +02:00
mdecimus
abd318b678
Message delivery history + Live tracing 💎
2024-08-14 17:29:42 +02:00
mdecimus
6b92961c36
SQL Read replicas and Distributed blob storage 💎 ( closes #441 )
2024-08-11 19:30:00 +02:00
mdecimus
f957cbb60f
Replace lazy_static and OnceLock with LazyLock
2024-08-09 15:38:19 +02:00
mdecimus
a3284b8bc3
Metrics collector
2024-08-06 19:23:02 +02:00
mdecimus
5a43455917
Tracing macro improvements
2024-08-03 20:10:01 +02:00
mdecimus
ae7cadc27d
Improved tracing (part 1)
2024-07-23 12:44:14 +02:00
mdecimus
9c23774aa5
Lock-free fast tracing (closes #180 )
2024-07-22 17:56:24 +02:00
mdecimus
d48523583b
Improved error handling (part 4)
2024-07-18 20:04:09 +02:00
mdecimus
d2ad44cf9f
Improved error handling (part 3)
2024-07-17 18:33:22 +02:00
mdecimus
0c2a3f09fe
Improved error handling (part 1)
2024-07-11 18:44:51 +02:00
mdecimus
50a2f50e58
REUSE-compliant licensing
2024-06-25 19:57:25 +02:00
mdecimus
66cc0a3072
Faster email deletion, Junk/Trash folder auto-expunge and changelog auto-expiry ( closes #403 )
2024-05-19 12:15:35 +02:00
mdecimus
398b31b40b
Improved full-text indexing
2024-05-12 18:15:41 +02:00
mdecimus
fb110fb078
FoundationDB performance improvements
2024-05-02 10:19:06 +01:00
mdecimus
0514ac0f0d
Individual subspaces for each value and bitmap type
2024-05-02 10:19:06 +01:00
mdecimus
c6960bfba8
documentId generation within the database transaction
2024-05-02 10:18:58 +01:00
mdecimus
1950366629
v0.7.3
2024-04-30 19:52:05 +02:00
mdecimus
44f531ecf9
Fixed compile without SQL dbs
2024-04-07 17:39:58 +02:00
mdecimus
cb4d2f15ae
Config hot reloading API
2024-03-28 17:21:32 +01:00