This commit is contained in:
mdecimus 2025-03-23 16:23:18 +01:00
parent a8bdf3949b
commit c0fdee6843
23 changed files with 78 additions and 55 deletions

View file

@ -2,6 +2,27 @@
All notable changes to this project will be documented in this file. This project adheres to [Semantic Versioning](http://semver.org/).
## [0.11.7] - 2025-03-23
To upgrade replace the `stalwart-mail` binary and then upgrade to the latest web-admin.
### Added
- LDAP attribute to indicate password change (#1156).
### Changed
- Lazy DKIM key parsing (#1211).
- Enable `edns0` for system resolver by default (#1282).
- Bump FoundationDB to `7.3`.
### Fixed
- Fix incorrect `UIDNEXT` when mailbox is empty (#1201).
- Sender variable not set when evaluating `must-match-sender` (#1294).
- Do not panic when mailboxId is not found (#1293).
- Prioritize local over span keys when serializing webhook payloads (#1250).
- Allow TLS name mismatch as per RFC7671 Section 5.1.
- Try with implicit MX when no MX records are found.
- SQL `secrets` directory query.
## [0.11.5] - 2025-02-01
To upgrade replace the `stalwart-mail` binary and then upgrade to the latest web-admin.

40
Cargo.lock generated
View file

@ -1204,7 +1204,7 @@ dependencies = [
[[package]]
name = "common"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"aes-gcm-siv",
"ahash 0.8.11",
@ -1799,7 +1799,7 @@ dependencies = [
[[package]]
name = "directory"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"argon2",
@ -2046,7 +2046,7 @@ dependencies = [
[[package]]
name = "email"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"aes",
"aes-gcm",
@ -2163,7 +2163,7 @@ dependencies = [
[[package]]
name = "event_macro"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"proc-macro2",
"quote",
@ -3281,7 +3281,7 @@ checksum = "edcd27d72f2f071c64249075f42e205ff93c9a4c5f6c6da53e79ed9f9832c285"
[[package]]
name = "imap"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"common",
@ -3307,7 +3307,7 @@ dependencies = [
[[package]]
name = "imap_proto"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"chrono",
@ -3532,7 +3532,7 @@ dependencies = [
[[package]]
name = "jmap"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"aes-gcm",
"aes-gcm-siv",
@ -3607,7 +3607,7 @@ dependencies = [
[[package]]
name = "jmap_proto"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"fast-float",
@ -3988,7 +3988,7 @@ dependencies = [
[[package]]
name = "mail-server"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"common",
"directory",
@ -4008,7 +4008,7 @@ dependencies = [
[[package]]
name = "managesieve"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"bincode",
@ -4286,7 +4286,7 @@ dependencies = [
[[package]]
name = "nlp"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"bincode",
@ -4831,7 +4831,7 @@ dependencies = [
[[package]]
name = "pop3"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"common",
"directory",
@ -4990,7 +4990,7 @@ dependencies = [
[[package]]
name = "proc_macros"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"proc-macro2",
"quote",
@ -6520,7 +6520,7 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
[[package]]
name = "smtp"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"bincode",
@ -6609,7 +6609,7 @@ dependencies = [
[[package]]
name = "spam-filter"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"common",
"decancer",
@ -6663,7 +6663,7 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
[[package]]
name = "stalwart-cli"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"clap",
"console",
@ -6694,7 +6694,7 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
[[package]]
name = "store"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"arc-swap",
@ -6903,7 +6903,7 @@ dependencies = [
[[package]]
name = "tests"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"async-trait",
@ -7342,7 +7342,7 @@ dependencies = [
[[package]]
name = "trc"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"base64 0.22.1",
@ -7589,7 +7589,7 @@ checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821"
[[package]]
name = "utils"
version = "0.11.5"
version = "0.11.7"
dependencies = [
"ahash 0.8.11",
"base64 0.22.1",

View file

@ -5,7 +5,7 @@ authors = ["Stalwart Labs Ltd. <hello@stalw.art>"]
license = "AGPL-3.0-only OR LicenseRef-SEL"
repository = "https://github.com/stalwartlabs/cli"
homepage = "https://github.com/stalwartlabs/cli"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
readme = "README.md"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "common"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "directory"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "email"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "imap_proto"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "imap"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "jmap_proto"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "jmap"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -7,7 +7,7 @@ homepage = "https://stalw.art"
keywords = ["imap", "jmap", "smtp", "email", "mail", "server"]
categories = ["email"]
license = "AGPL-3.0-only OR LicenseRef-SEL"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "managesieve"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "nlp"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "pop3"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -7,7 +7,7 @@ homepage = "https://stalw.art/smtp"
keywords = ["smtp", "email", "mail", "server"]
categories = ["email"]
license = "AGPL-3.0-only OR LicenseRef-SEL"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "spam-filter"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "store"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "trc"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "event_macro"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
[lib]

View file

@ -1,6 +1,6 @@
[package]
name = "utils"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -1,6 +1,6 @@
[package]
name = "proc_macros"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
[lib]

View file

@ -1,6 +1,6 @@
[package]
name = "tests"
version = "0.11.5"
version = "0.11.7"
edition = "2024"
resolver = "2"

View file

@ -5,8 +5,8 @@
*/
use directory::{
backend::{internal::manage::ManageDirectory, RcptType},
QueryBy, Type, ROLE_USER,
QueryBy, ROLE_USER, Type,
backend::{RcptType, internal::manage::ManageDirectory},
};
use mail_send::Credentials;
@ -14,7 +14,7 @@ use mail_send::Credentials;
use store::{InMemoryStore, Store};
use crate::directory::{
map_account_id, map_account_ids, DirectoryTest, IntoTestPrincipal, TestPrincipal,
DirectoryTest, IntoTestPrincipal, TestPrincipal, map_account_id, map_account_ids,
};
use super::DirectoryStore;
@ -39,7 +39,7 @@ async fn sql_directory() {
let store = DirectoryStore {
store: config.stores.stores.remove(directory_id).unwrap(),
};
let base_store = config.stores.stores.get(directory_id).unwrap();
let base_store = &store.store;
let core = config.server;
// Create tables
@ -193,17 +193,19 @@ async fn sql_directory() {
..Default::default()
}
);
assert!(handle
.query(
QueryBy::Credentials(&Credentials::Plain {
username: "bill".to_string(),
secret: "invalid".to_string()
}),
true
)
.await
.unwrap()
.is_none());
assert!(
handle
.query(
QueryBy::Credentials(&Credentials::Plain {
username: "bill".to_string(),
secret: "invalid".to_string()
}),
true
)
.await
.unwrap()
.is_none()
);
// Get user by name
assert_eq!(