diff --git a/CHANGELOG.md b/CHANGELOG.md index 63af2105d..3c110eb00 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,74 @@ # Changelog +## [2.0.0] - 2025-07-09 + +This release changes the way the core handles contact keys. +Instead of tracking OpenPGP keys corresponding to the +contacts in [Autocrypt](https://autocrypt.org/) peerstate, +the core creates a new "key-contact" for each known public key. +Reception of a message signed with a new unknown key +no longer results in warnings about setup changes, +but creates a new contact and a new 1:1 chat if necessary. +Additionally, there are "address-contacts" corresponding +to the e-mail addresses. + +### Features / Changes + +- Key-contacts ([#6796](https://github.com/chatmail/core/pull/6796), [#6941](https://github.com/chatmail/core/pull/6941)). +- Increase event channel size from 1000 to 10000. +- Minimize the amount of data preserved for trashed messages. +- Show broadcast channels in their own, proper "Channel" chat ([#6901](https://github.com/chatmail/core/pull/6901), [#6975](https://github.com/chatmail/core/pull/6975)). +- Check images passed as `File` before making them `Image`. + +### API-Changes + +- CFFI: Add dc_contact_is_key_contact() ([#6955](https://github.com/chatmail/core/pull/6955)). +- Contact::get_all(): Support listing address-contacts. +- [**breaking**] Add InBroadcastChannel, OutBroadcastChannel chattypes, add create_broadcast_channel() ([#6901](https://github.com/chatmail/core/pull/6901)). +- deltachat-rpc-client: Add Message.get_read_receipts(). + +### Fixes + +- Remove display name from get_info(). This information usually goes at the top of the log and we don't want users to include it in bug reports. +- Wait for scheduler tasks shutdown in parallel. +- Update deltachat-repl help and autocomplete to match implementation ([#6978](https://github.com/chatmail/core/pull/6978), ([#6979](https://github.com/chatmail/core/pull/6979)). +- Send Autocrypt header in MDNs. This is needed to assign MDNs to key-contacts. +- Prefer encrypted List-Id header ([#6983](https://github.com/chatmail/core/pull/6983)). +- Treat "tgs" as Viewtype::File. +- Treat and send images that can't be decoded as Viewtype::File. +- Decide on filename used for sending depending on the original Viewtype. +- Migrate_key_contacts(): Remove "id>9" from encrypted messages SELECT. +- Save msgs to key-contacts migration state and run migration periodically ([#6956](https://github.com/chatmail/core/pull/6956)). +- Do not try to lookup key-contacts for unencrypted 1:1 messages. +- Add query to post request for account creation ([#6989](https://github.com/chatmail/core/pull/6989)). + +### CI + +- Update Rust to 1.88.0. + +### Documentation + +- Remove outdated comment that says MDNs are unencrypted. + +### Refactor + +- Upgrade to Rust 2024. +- Build_body_file(): Remove guessing mimetype by file extension. + +### Tests + +- Add online test for read receipts. +- Add a test reproducing chat assignment bug. + +### Miscellaneous Tasks + +- cargo: Bump smallvec from 1.15.0 to 1.15.1. +- cargo: Bump syn from 2.0.101 to 2.0.104. +- cargo: Bump hyper-util from 0.1.13 to 0.1.14. +- cargo: Bump toml from 0.8.19 to 0.8.23. +- cargo: Bump proptest from 1.6.0 to 1.7.0. +- cargo: Bump libc from 0.2.172 to 0.2.174. + ## [1.160.0] - 2025-06-22 ### API-Changes @@ -6356,3 +6425,4 @@ https://github.com/chatmail/core/pulls?q=is%3Apr+is%3Aclosed [1.159.4]: https://github.com/chatmail/core/compare/v1.159.3..v1.159.4 [1.159.5]: https://github.com/chatmail/core/compare/v1.159.4..v1.159.5 [1.160.0]: https://github.com/chatmail/core/compare/v1.159.5..v1.160.0 +[2.0.0]: https://github.com/chatmail/core/compare/v1.160.0..v2.0.0 diff --git a/Cargo.lock b/Cargo.lock index 6721ccea3..5ef400446 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1285,7 +1285,7 @@ dependencies = [ [[package]] name = "deltachat" -version = "1.160.0" +version = "2.0.0" dependencies = [ "anyhow", "async-broadcast", @@ -1394,7 +1394,7 @@ dependencies = [ [[package]] name = "deltachat-jsonrpc" -version = "1.160.0" +version = "2.0.0" dependencies = [ "anyhow", "async-channel 2.3.1", @@ -1416,7 +1416,7 @@ dependencies = [ [[package]] name = "deltachat-repl" -version = "1.160.0" +version = "2.0.0" dependencies = [ "anyhow", "deltachat", @@ -1432,7 +1432,7 @@ dependencies = [ [[package]] name = "deltachat-rpc-server" -version = "1.160.0" +version = "2.0.0" dependencies = [ "anyhow", "deltachat", @@ -1461,7 +1461,7 @@ dependencies = [ [[package]] name = "deltachat_ffi" -version = "1.160.0" +version = "2.0.0" dependencies = [ "anyhow", "deltachat", diff --git a/Cargo.toml b/Cargo.toml index 76b0dd51f..4dd48fbaf 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat" -version = "1.160.0" +version = "2.0.0" edition = "2024" license = "MPL-2.0" rust-version = "1.85" diff --git a/deltachat-ffi/Cargo.toml b/deltachat-ffi/Cargo.toml index 9f87b8ecb..7c35de52b 100644 --- a/deltachat-ffi/Cargo.toml +++ b/deltachat-ffi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat_ffi" -version = "1.160.0" +version = "2.0.0" description = "Deltachat FFI" edition = "2018" readme = "README.md" diff --git a/deltachat-jsonrpc/Cargo.toml b/deltachat-jsonrpc/Cargo.toml index 61f82a713..3aad7816d 100644 --- a/deltachat-jsonrpc/Cargo.toml +++ b/deltachat-jsonrpc/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat-jsonrpc" -version = "1.160.0" +version = "2.0.0" description = "DeltaChat JSON-RPC API" edition = "2021" license = "MPL-2.0" diff --git a/deltachat-jsonrpc/typescript/package.json b/deltachat-jsonrpc/typescript/package.json index 80fa13ad7..d98f8faaf 100644 --- a/deltachat-jsonrpc/typescript/package.json +++ b/deltachat-jsonrpc/typescript/package.json @@ -54,5 +54,5 @@ }, "type": "module", "types": "dist/deltachat.d.ts", - "version": "1.160.0" + "version": "2.0.0" } diff --git a/deltachat-repl/Cargo.toml b/deltachat-repl/Cargo.toml index fa310214f..bded4f39b 100644 --- a/deltachat-repl/Cargo.toml +++ b/deltachat-repl/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat-repl" -version = "1.160.0" +version = "2.0.0" license = "MPL-2.0" edition = "2021" repository = "https://github.com/chatmail/core" diff --git a/deltachat-rpc-client/pyproject.toml b/deltachat-rpc-client/pyproject.toml index 16ec5a7bc..a17cb7f98 100644 --- a/deltachat-rpc-client/pyproject.toml +++ b/deltachat-rpc-client/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deltachat-rpc-client" -version = "1.160.0" +version = "2.0.0" description = "Python client for Delta Chat core JSON-RPC interface" classifiers = [ "Development Status :: 5 - Production/Stable", diff --git a/deltachat-rpc-server/Cargo.toml b/deltachat-rpc-server/Cargo.toml index fe6c808f6..2138aa38c 100644 --- a/deltachat-rpc-server/Cargo.toml +++ b/deltachat-rpc-server/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "deltachat-rpc-server" -version = "1.160.0" +version = "2.0.0" description = "DeltaChat JSON-RPC server" edition = "2021" readme = "README.md" diff --git a/deltachat-rpc-server/npm-package/package.json b/deltachat-rpc-server/npm-package/package.json index e631919a0..d9e0a672f 100644 --- a/deltachat-rpc-server/npm-package/package.json +++ b/deltachat-rpc-server/npm-package/package.json @@ -15,5 +15,5 @@ }, "type": "module", "types": "index.d.ts", - "version": "1.160.0" + "version": "2.0.0" } diff --git a/python/pyproject.toml b/python/pyproject.toml index adfa22965..0446a7e84 100644 --- a/python/pyproject.toml +++ b/python/pyproject.toml @@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta" [project] name = "deltachat" -version = "1.160.0" +version = "2.0.0" description = "Python bindings for the Delta Chat Core library using CFFI against the Rust-implemented libdeltachat" readme = "README.rst" requires-python = ">=3.8" diff --git a/release-date.in b/release-date.in index 684ade132..9cf2257a9 100644 --- a/release-date.in +++ b/release-date.in @@ -1 +1 @@ -2025-06-22 \ No newline at end of file +2025-07-09 \ No newline at end of file