link2xt
721b9cebef
build: pin mypy to 1.18.2
...
mypy depends on librt since 1.19.0
and it fails to build with PyPy 3.10.
2025-11-28 22:14:38 +00:00
link2xt
0d50d8703f
build: use SPDX license expression in Python package metadata
...
License classifiers are replaced with `license`.
This is supported since `setuptools` v77.0.0:
<https://setuptools.pypa.io/en/stable/history.html#v77-0-0 >
Without this change we get
`SetuptoolsDeprecationWarning: License classifiers are deprecated.`
with a reference to
<https://packaging.python.org/en/latest/guides/writing-pyproject-toml/#license >
2025-11-28 22:14:38 +00:00
link2xt
9aba299c75
build: increase minimum supported Python version to 3.10
...
Python 3.9 is not supported since 2025-10-31:
https://devguide.python.org/versions/
mypy just dropped support for Python 3.9:
<1a6ff59049 >
2025-11-28 22:14:38 +00:00
iequidoo
2854f87a9d
fix: CREATE INDEX imap_only_rfc724_mid ON imap(rfc724_mid) ( #7490 )
...
This effectively readds the old `imap_rfc724_mid` built only on `rfc724_mid`, otherwise
`sql::prune_tombstones()` which is called from `housekeeping()` becomes very slow because of no
suitable index.
2025-11-27 22:23:03 -03:00
iequidoo
145a5813e8
feat: Don't send Chat-Group-Avatar header in unencrypted groups
...
`chat::set_chat_profile_image()` already checks that the group has grpid, still it makes sense to
check that a message is encrypted when sending, in case if the chat has a profile image in the db
for some reason.
2025-11-27 22:02:11 -03:00
iequidoo
4cb129a67e
fix: Don't send self-avatar in unencrypted messages ( #7136 )
...
We don't display avatars for address-contacts, so sending avatars w/o encryption is not useful and
causes e.g. Outlook to reject a message with a big header, see
https://support.delta.chat/t/invalid-mime-content-single-text-value-size-32822-exceeded-allowed-maximum-32768-for-the-chat-user-avatar-header/4067 .
2025-11-27 22:02:11 -03:00
link2xt
7bf7ec3d32
api(deltachat-rpc-client): add Message.exists()
2025-11-28 00:30:36 +00:00
link2xt
8a7498a9a8
fix: handle the case when account does not exist in get_existing_msg_ids()
...
If account is removed, this means the messages are removed as well.
We do not reuse account IDs, so the account will not reappear.
2025-11-28 00:30:36 +00:00
dependabot[bot]
c41a69ea1e
chore(cargo): bump image from 0.25.8 to 0.25.9
...
Bumps [image](https://github.com/image-rs/image ) from 0.25.8 to 0.25.9.
- [Changelog](https://github.com/image-rs/image/blob/main/CHANGES.md )
- [Commits](https://github.com/image-rs/image/compare/v0.25.8...v0.25.9 )
---
updated-dependencies:
- dependency-name: image
dependency-version: 0.25.9
dependency-type: direct:production
update-type: version-update:semver-patch
...
Co-authored-by: iequidoo <dgreshilov@gmail.com >
2025-11-27 18:39:17 +01:00
link2xt
38a547dfda
build: make scripts for remote testing usable
...
This updates `scripts/remote_tests_{rust,python}.sh`.
The scripts were previously used to run tests
from CI on remote faster machine,
but they are still usable to run tests remotely
e.g. from a laptop that is on battery.
2025-11-26 17:12:25 +00:00
link2xt
7c998af973
ci: set timeout-minutes for all jobs in ci.yaml workflow
...
Default is 360 minutes, that is 6 hours.
If the job is running for more than 1 hour,
it is surely stuck, no need to keep running it.
2025-11-26 17:06:20 +00:00
link2xt
6b6ec2a4b7
fix: use the same webxdc ratelimit for all email servers
...
This removes another distinction between chatmail and non-chatmail
and fixes flaky tests/test_webxdc.py::test_webxdc
Closes <https://github.com/chatmail/core/issues/7522 >
2025-11-26 00:47:43 +00:00
dependabot[bot]
b1fa1055d7
chore(cargo): bump bytes from 1.10.1 to 1.11.0
...
Bumps [bytes](https://github.com/tokio-rs/bytes ) from 1.10.1 to 1.11.0.
- [Release notes](https://github.com/tokio-rs/bytes/releases )
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.10.1...v1.11.0 )
---
updated-dependencies:
- dependency-name: bytes
dependency-version: 1.11.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 16:05:26 -03:00
dependabot[bot]
15ce05b0c7
chore(cargo): bump libc from 0.2.176 to 0.2.177
...
Bumps [libc](https://github.com/rust-lang/libc ) from 0.2.176 to 0.2.177.
- [Release notes](https://github.com/rust-lang/libc/releases )
- [Changelog](https://github.com/rust-lang/libc/blob/0.2.177/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/libc/compare/0.2.176...0.2.177 )
---
updated-dependencies:
- dependency-name: libc
dependency-version: 0.2.177
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 14:56:34 +00:00
dependabot[bot]
8112183429
chore(cargo): bump quote from 1.0.41 to 1.0.42
...
Bumps [quote](https://github.com/dtolnay/quote ) from 1.0.41 to 1.0.42.
- [Release notes](https://github.com/dtolnay/quote/releases )
- [Commits](https://github.com/dtolnay/quote/compare/1.0.41...1.0.42 )
---
updated-dependencies:
- dependency-name: quote
dependency-version: 1.0.42
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 14:56:11 +00:00
holger krekel
b9ae74fab2
feat: deltachat_rpc_client.Rpc accepts rpc_server_path for using a particular deltachat-rpc-server ( #7493 )
...
also simplifies and make more readable popen-call to rpc-server
addresses #7428
2025-11-25 11:02:42 +01:00
dependabot[bot]
fdff90eba4
chore(cargo): bump sanitize-filename from 0.5.0 to 0.6.0
...
Bumps [sanitize-filename](https://github.com/kardeiz/sanitize-filename ) from 0.5.0 to 0.6.0.
- [Commits](https://github.com/kardeiz/sanitize-filename/commits )
---
updated-dependencies:
- dependency-name: sanitize-filename
dependency-version: 0.6.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:30:50 +00:00
dependabot[bot]
a4a54d3648
chore(cargo): bump nu-ansi-term from 0.50.1 to 0.50.3
...
Bumps [nu-ansi-term](https://github.com/nushell/nu-ansi-term ) from 0.50.1 to 0.50.3.
- [Release notes](https://github.com/nushell/nu-ansi-term/releases )
- [Changelog](https://github.com/nushell/nu-ansi-term/blob/main/CHANGELOG.md )
- [Commits](https://github.com/nushell/nu-ansi-term/compare/v0.50.1...v0.50.3 )
---
updated-dependencies:
- dependency-name: nu-ansi-term
dependency-version: 0.50.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:12:49 +00:00
dependabot[bot]
98fb760f49
chore(cargo): bump rustls-pki-types from 1.12.0 to 1.13.0
...
Bumps [rustls-pki-types](https://github.com/rustls/pki-types ) from 1.12.0 to 1.13.0.
- [Release notes](https://github.com/rustls/pki-types/releases )
- [Commits](https://github.com/rustls/pki-types/compare/v/1.12.0...v/1.13.0 )
---
updated-dependencies:
- dependency-name: rustls-pki-types
dependency-version: 1.13.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:07:20 +00:00
dependabot[bot]
f553c094eb
chore(cargo): bump quick-xml from 0.38.3 to 0.38.4
...
Bumps [quick-xml](https://github.com/tafia/quick-xml ) from 0.38.3 to 0.38.4.
- [Release notes](https://github.com/tafia/quick-xml/releases )
- [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md )
- [Commits](https://github.com/tafia/quick-xml/compare/v0.38.3...v0.38.4 )
---
updated-dependencies:
- dependency-name: quick-xml
dependency-version: 0.38.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:06:55 +00:00
dependabot[bot]
bbb4bed996
chore(cargo): bump syn from 2.0.106 to 2.0.110
...
Bumps [syn](https://github.com/dtolnay/syn ) from 2.0.106 to 2.0.110.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/2.0.106...2.0.110 )
---
updated-dependencies:
- dependency-name: syn
dependency-version: 2.0.110
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:06:38 +00:00
dependabot[bot]
25088f2dcb
chore(cargo): bump parking_lot from 0.12.4 to 0.12.5
...
Bumps [parking_lot](https://github.com/Amanieu/parking_lot ) from 0.12.4 to 0.12.5.
- [Release notes](https://github.com/Amanieu/parking_lot/releases )
- [Changelog](https://github.com/Amanieu/parking_lot/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Amanieu/parking_lot/compare/parking_lot-v0.12.4...parking_lot-v0.12.5 )
---
updated-dependencies:
- dependency-name: parking_lot
dependency-version: 0.12.5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:05:37 +00:00
dependabot[bot]
552e9f4052
chore(cargo): bump proptest from 1.8.0 to 1.9.0
...
Bumps [proptest](https://github.com/proptest-rs/proptest ) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/proptest-rs/proptest/releases )
- [Changelog](https://github.com/proptest-rs/proptest/blob/main/CHANGELOG.md )
- [Commits](https://github.com/proptest-rs/proptest/compare/v1.8.0...v1.9.0 )
---
updated-dependencies:
- dependency-name: proptest
dependency-version: 1.9.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:04:44 +00:00
dependabot[bot]
b3616a013f
chore(cargo): bump toml from 0.9.7 to 0.9.8
...
Bumps [toml](https://github.com/toml-rs/toml ) from 0.9.7 to 0.9.8.
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.9.7...toml-v0.9.8 )
---
updated-dependencies:
- dependency-name: toml
dependency-version: 0.9.8
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 03:04:29 +00:00
dependabot[bot]
c378b1218d
chore(cargo): bump tokio-util from 0.7.16 to 0.7.17
...
Bumps [tokio-util](https://github.com/tokio-rs/tokio ) from 0.7.16 to 0.7.17.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-util-0.7.16...tokio-util-0.7.17 )
---
updated-dependencies:
- dependency-name: tokio-util
dependency-version: 0.7.17
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 02:24:48 +00:00
dependabot[bot]
21f6e7c676
chore(cargo): bump rusqlite from 0.36.0 to 0.37.0
...
Bumps [rusqlite](https://github.com/rusqlite/rusqlite ) from 0.36.0 to 0.37.0.
- [Release notes](https://github.com/rusqlite/rusqlite/releases )
- [Changelog](https://github.com/rusqlite/rusqlite/blob/master/Changelog.md )
- [Commits](https://github.com/rusqlite/rusqlite/compare/v0.36.0...v0.37.0 )
---
updated-dependencies:
- dependency-name: rusqlite
dependency-version: 0.37.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 02:08:51 +00:00
dependabot[bot]
ac543ad251
chore(cargo): bump hyper-util from 0.1.17 to 0.1.18
...
Bumps [hyper-util](https://github.com/hyperium/hyper-util ) from 0.1.17 to 0.1.18.
- [Release notes](https://github.com/hyperium/hyper-util/releases )
- [Changelog](https://github.com/hyperium/hyper-util/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hyperium/hyper-util/compare/v0.1.17...v0.1.18 )
---
updated-dependencies:
- dependency-name: hyper-util
dependency-version: 0.1.18
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 02:07:16 +00:00
dependabot[bot]
183898b137
chore(cargo): bump human-panic from 2.0.3 to 2.0.4
...
Bumps [human-panic](https://github.com/rust-cli/human-panic ) from 2.0.3 to 2.0.4.
- [Changelog](https://github.com/rust-cli/human-panic/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-cli/human-panic/compare/v2.0.3...v2.0.4 )
---
updated-dependencies:
- dependency-name: human-panic
dependency-version: 2.0.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 02:06:07 +00:00
dependabot[bot]
56204ae701
chore(cargo): bump hyper from 1.7.0 to 1.8.1
...
Bumps [hyper](https://github.com/hyperium/hyper ) from 1.7.0 to 1.8.1.
- [Release notes](https://github.com/hyperium/hyper/releases )
- [Changelog](https://github.com/hyperium/hyper/blob/master/CHANGELOG.md )
- [Commits](https://github.com/hyperium/hyper/compare/v1.7.0...v1.8.1 )
---
updated-dependencies:
- dependency-name: hyper
dependency-version: 1.8.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-25 02:04:59 +00:00
dependabot[bot]
7906405400
chore(deps): bump cachix/install-nix-action from 31.8.1 to 31.8.4
...
Bumps [cachix/install-nix-action](https://github.com/cachix/install-nix-action ) from 31.8.1 to 31.8.4.
- [Release notes](https://github.com/cachix/install-nix-action/releases )
- [Changelog](https://github.com/cachix/install-nix-action/blob/master/RELEASE.md )
- [Commits](fd24c48048...0b0e072294 )
---
updated-dependencies:
- dependency-name: cachix/install-nix-action
dependency-version: 31.8.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-11-24 23:25:32 +00:00
Hocuri
531e0bc914
refactor!: Remove some unneeded stock strings ( #7496 )
...
There are quite some unneeded stock strings; this PR removes some of
them. None of these stock strings were actually set by the UI, or even
have translations in Transifex.
- We don't have AEAP anymore.
- The "I added/removed member" and "I left the group" strings are
anyways not meant to be shown to the user. Also, starting to translate
them now would leak the device language.
BREAKING CHANGE: This can theoretically be a breaking change because a
UI could reference one of the removed stock strings, so I marked it as
breaking just in case.
2025-11-24 19:55:12 +01:00
link2xt
3637fe67a7
feat: Hide To header in encrypted messages
2025-11-24 02:33:56 -03:00
holger krekel
8eef79f95d
refactor: strike events in rpc-client request handling, get result from queue
2025-11-23 21:23:53 +01:00
link2xt
6077499f07
chore(release): prepare for 2.28.0
v2.28.0
2025-11-23 17:08:42 +00:00
Simon Laux
94d2d8cfd7
feat: add api to get information about diskspace usage of database. (jsonrpc method: get_storage_usage_report_string) ( #7486 )
...
new jsonrpc api: `get_storage_usage_report_string(accountId)`
new rust API: `get_storage_usage(&context)`
2025-11-23 15:18:00 +00:00
iequidoo
ba3cad6ad6
docs: Mark db encryption support as deprecated ( #7403 )
...
- Db encryption does nothing with blobs, so fs/disk encryption is recommended.
- Isolation from other apps is needed anyway.
- Experimental database encryption was removed on iOS and Android.
- Delta Touch is using CFFI API with a manually entered password because Ubuntu Touch does not offer
filesystem or disk encryption, but we don't want new users of these APIs, such as bot developers.
2025-11-22 18:36:40 -03:00
link2xt
c9c362d5ff
api: get_existing_msg_ids()
...
This API allows to check if the message with
given ID exists and distinguish between
message not existing and database error.
It might also be faster than
checking messages one by one
if multiple messages need to be checked
because of using a single SQL transaction.
2025-11-22 18:19:44 +00:00
iequidoo
6514b4ca7f
fix: Look up or create ad-hoc group if there are duplicate addresses in "To"
...
Fix `test_unencrypted_doesnt_goto_self_chat` as well, it was only testing the first message because
of using the same Message-ID for all messages.
2025-11-22 02:48:27 -03:00
link2xt
e7e31d7914
ci: do not use --encoding option for rst-lint
...
It was removed in rst-lint 2.0:
7b43036b4d
2025-11-22 05:26:03 +00:00
B. Petersen
51d6855e0d
fix: add missing stock strings
2025-11-21 14:42:50 +01:00
Hocuri
2f90b55309
feat: Stock string for joining a channel ( #7480 )
...
Add a stock string `%1$s invited you to join this channel.\n\nWaiting
for the device of %2$s to reply…`, which is shown when a user starts to
join a channel.
I did _not_ add an equivalent to `%1$s replied, waiting for being added
to the group…`, which is shown when vg-auth-required was received. I
don't think that this would add any information that's interesting to
the user, other than 'something is happening, hang on'. And the more
text on the screen, the less likely that anyone reads it. But if others
think differently, we can also add it.
With this PR, joining a channel looks like this:
```
Msg#2003: info (Contact#Contact#Info): Messages are end-to-end encrypted. [NOTICED][INFO]
Msg#2004: info (Contact#Contact#Info): Alice invited you to join this channel.
Waiting for the device of Alice to reply… [NOTICED][INFO]
Msg#2007🔒 : (Contact#Contact#2001): You joined the channel. [FRESH][INFO]
```
2025-11-20 21:13:04 +00:00
link2xt
be3e202470
feat: allow adding second transport
2025-11-20 15:51:19 +00:00
link2xt
57aadfbbf6
chore: update preloaded DNS cache
2025-11-19 19:55:53 +00:00
link2xt
849cde9757
refactor: remove some easy to remove unwrap() calls
2025-11-19 17:38:58 +00:00
link2xt
b4cd99fc56
docs: replace some references to Delta Chat with chatmail
2025-11-19 04:11:12 +00:00
iequidoo
9305a0676c
fix: Assign outgoing self-sent unencrypted messages to ad-hoc groups with only SELF ( #7409 )
...
Before, outgoing self-sent unencrypted messages were assigned to the self-chat. Now we assign them
to ad-hoc groups with only SELF instead of 1:1 chats with address contacts corresponding to our own
addresses because we don't want to create such address contacts; we still use SELF for `from_id` of
such messages. Not assigning such messages to the encrypted chat should be safe enough and such
messages can actually be sent by the user from another MUA.
2025-11-18 20:34:56 -03:00
B. Petersen
39c9ba19ef
docs: add missing RFC 9788, link 'Header Protection for Cryptographically Protected Email' as other RFC
2025-11-18 23:16:10 +01:00
link2xt
af574279fd
docs: remove unsupported RFC 3503 ($MDNSent flag) from the list of standards
2025-11-18 21:44:41 +00:00
Hocuri
713c929e03
refactor: Rename add_encrypted_msg -> add_e2ee_notice
2025-11-18 18:58:26 +01:00
Hocuri
c83c131a37
feat: Rephrase "Establishing end-to-end encryption" -> "Establishing connection"
2025-11-18 18:58:26 +01:00