iequidoo
dbdf5f2746
feat: get_securejoin_qr(): Log error if group doesn't have grpid
...
This doesn't fix anything in UIs currently because they don't call `get_securejoin_qr()` for
unencrypted groups, but it's still better to log an error which will be shown in this case.
2025-08-12 19:59:00 -03:00
iequidoo
b4e28deed3
feat: lookup_key_contact_by_address(): Allow looking up ContactId::SELF without chat id
...
This doesn't fix anything currently, but let's allow such lookups to avoid future bugs.
2025-08-12 19:59:00 -03:00
iequidoo
f4a604dcfb
refactor: Chat::is_encrypted(): Make one query instead of two for 1:1 chats
2025-08-12 19:59:00 -03:00
Hocuri
b3c5787ec8
test: Log the number of the test account if there are multiple alices ( #7087 )
...
In order to debug some test failures wrt broadcast channels, I need to
read the log of some tests that have an alice0 and an alice1.
It's currently not possible to tell whether a line was logged by alice0
or alice1, so, I would like to change that with this PR.
Edit: Turns out that there are more tests that call their profiles
"alice1"/"alice2" (or "alice"/"alice2") than "alice0"/"alice1". So, I
changed the logging to count "alice", "alice2", "alice3", ….
Not sure whether I should adapt old tests; it might save someone some
confusion in the future, but I might also make a mistake and make it so
that the test doesn't properly test anymore.
2025-08-12 08:51:23 +00:00
dependabot[bot]
471d0469dd
chore(deps): bump actions/checkout from 4 to 5
...
Bumps [actions/checkout](https://github.com/actions/checkout ) from 4 to 5.
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/checkout/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-12 08:21:41 +00:00
dependabot[bot]
113eda575f
chore(deps): bump actions/download-artifact from 4 to 5
...
Bumps [actions/download-artifact](https://github.com/actions/download-artifact ) from 4 to 5.
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](https://github.com/actions/download-artifact/compare/v4...v5 )
---
updated-dependencies:
- dependency-name: actions/download-artifact
dependency-version: '5'
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-12 05:32:37 +00:00
link2xt
45f1da82fe
fix: take Chat-Group-Name into account when matching ad hoc groups
2025-08-12 01:10:49 +00:00
link2xt
5f45ff77e4
chore: typo fix
2025-08-12 01:10:49 +00:00
link2xt
1c0201ee3d
fix: assign messages to a group if there is a Chat-Group-Name
...
Otherwise messages sent to small groups
with only two members are incorrectly assigned
to 1:1 chat.
2025-08-12 01:10:49 +00:00
link2xt
c7340e04ec
feat: do not require resent messages to be from the same chat
...
Chat was only loaded to avoid removing GuaranteeE2ee
for protected chats, but resending a message
in protected chat is guaranteed to be encrypted anyway.
2025-08-11 20:11:43 +00:00
link2xt
0a32476dc5
fix: do not reset GuaranteeE2ee in the database when resending messages
...
Otherwise if the message is loaded by the UI
after GuaranteeE2ee is reset but before SMTP queue item
is created, the message may appear as unencrypted
even if it was actually resent as encrypted.
2025-08-11 20:11:43 +00:00
link2xt
e02bc6ffb5
ci: update Rust to 1.89.0
2025-08-11 19:40:07 +00:00
link2xt
f41a3970b2
fix: do not add key-contacts to unencrypted groups
...
Encrypted message may create unencrypted groups
if the message does not have a Chat-Group-ID.
This can happen if v1 client sends an encrypted
message to opportunistically encrypted ad hoc group.
In this case `from_id` corresponds to the key-contact,
but we should add address-contact of the sender
to the member list.
2025-08-11 10:33:27 +00:00
bjoern
6c536f3a9b
fix: log and set imex progress error ( #7091 )
...
IMEX_PROGRESS(0) event is fired in case of errors, however, the last
error was not set in this case.
this is similar to the fix at #4195
and improves the error shown in the dialog for android and iOS; desktop
does not show an error dialog at all.
<img width="320" alt="IMG_9995"
src="https://github.com/user-attachments/assets/7065fc3d-3f30-4691-b1b2-1950564a25e2 "
/>
relates to https://github.com/deltachat/deltachat-android/issues/3533
2025-08-09 01:17:27 +02:00
link2xt
4b24b6a848
refactor: skip loading the contact of 1:1 unencrypted chat to show the avatar
...
If the chat is unencrypted, it gets unencrypted icon.
There is no need to load the address-contact to get the same icon.
2025-08-08 19:08:23 +00:00
link2xt
5f254a929f
refactor: rename icon-address-contact to icon-unencrypted
...
The icon is mainly used to identify unencrypted chats
in the chatlist where encrypted and unencrypted chats are mixed.
It is used for group chats rather than only for 1:1 chats
with address-contacts.
2025-08-08 19:08:23 +00:00
B. Petersen
8df1a01ace
feat: better string when using disappearing messages of one year (365..367 days, so it can be tweaked later)
2025-08-08 18:45:35 +00:00
link2xt
27b5ffb34f
fix: do not remove query parameters from URLs
...
The fix is similar to the one done in
4ca0ce2fb2 ,
but now extended to requests other than empty POST requests as well.
2025-08-07 14:49:18 +00:00
link2xt
80af012962
fix: set correct sent_timestamp for saved outgoing messages
2025-08-07 07:58:53 +00:00
iequidoo
615c80bef4
feat: Contact::lookup_id_by_addr_ex: Prefer returning accepted contacts
...
We don't want to prefer returning verified contacts because e.g. if a bot was reinstalled and its
key changed, it may not be verified, and we don't want to bring the user to the old chat if they
click on the bot email address. But trying to return accepted contacts increases security and
doesn't break the described scenario.
2025-08-06 17:37:17 -03:00
iequidoo
f5f4026dbb
feat: Contact::lookup_id_by_addr_ex: Prefer returning key-contact
...
If an address-contact and a key-contact were seen at exactly the same time, that doesn't necessarily
mean that it's a random event, it might occur because some code updates contacts this way in some
scenario. While this is unlikely, prefer to look up the key-contact.
2025-08-06 17:37:17 -03:00
link2xt
b431206ede
fix: allow receiving empty files
2025-08-06 13:33:04 +00:00
iequidoo
c4878e9b49
fix: Run wal_checkpoint during housekeeping ( #6089 )
...
Work around possible checkpoint starvations (there were cases reported when a WAL file is bigger
than 200M) and also make sure we truncate the WAL periodically. Auto-checkponting does not normally
truncate the WAL (unless the `journal_size_limit` pragma is set), see
https://www.sqlite.org/wal.html .
2025-08-05 14:58:32 -03:00
B. Petersen
aa452971a6
fix: ignore case when trying to detect 'invalid unencrypted mail' and add an info-message
2025-08-05 15:58:43 +02:00
dependabot[bot]
2d798f7cfe
Merge pull request #7066 from chatmail/dependabot/cargo/toml-0.9.4
2025-08-04 23:53:05 +00:00
link2xt
08bb0484eb
chore(release): prepare for 2.10.0
v2.10.0
2025-08-04 22:33:59 +00:00
link2xt
b0b7337f5a
chore: upgrade async-imap to 0.11.1
2025-08-04 21:42:28 +00:00
Hocuri
93241a4beb
feat: Also lookup key contacts in lookup_id_by_addr() ( #7073 )
...
If there is both a key and an address contact, return the most recently
seen one.
2025-08-04 21:32:09 +02:00
iequidoo
4f1bf1f13c
chore(deny.toml): add exception for duplicate toml_datetime 0.6.11 dependency
2025-08-02 16:16:43 -03:00
iequidoo
2d0b7b5bd8
chore(cargo): bump human-panic from 2.0.2 to 2.0.3
2025-08-02 16:14:48 -03:00
dependabot[bot]
8fe3ce5cab
chore(cargo): bump strum_macros from 0.27.1 to 0.27.2
...
Bumps [strum_macros](https://github.com/Peternator7/strum ) from 0.27.1 to 0.27.2.
- [Release notes](https://github.com/Peternator7/strum/releases )
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Peternator7/strum/compare/v0.27.1...v0.27.2 )
---
updated-dependencies:
- dependency-name: strum_macros
dependency-version: 0.27.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 14:15:55 -03:00
dependabot[bot]
59a0f1d94f
chore(cargo): bump strum from 0.27.1 to 0.27.2
...
Bumps [strum](https://github.com/Peternator7/strum ) from 0.27.1 to 0.27.2.
- [Release notes](https://github.com/Peternator7/strum/releases )
- [Changelog](https://github.com/Peternator7/strum/blob/master/CHANGELOG.md )
- [Commits](https://github.com/Peternator7/strum/compare/v0.27.1...v0.27.2 )
---
updated-dependencies:
- dependency-name: strum
dependency-version: 0.27.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 13:55:09 -03:00
dependabot[bot]
5175dc3450
chore(cargo): bump criterion from 0.6.0 to 0.7.0
...
Bumps [criterion](https://github.com/bheisler/criterion.rs ) from 0.6.0 to 0.7.0.
- [Changelog](https://github.com/bheisler/criterion.rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/bheisler/criterion.rs/compare/0.6.0...0.7.0 )
---
updated-dependencies:
- dependency-name: criterion
dependency-version: 0.7.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 13:39:05 -03:00
dependabot[bot]
9a22ccd058
chore(cargo): bump hyper-util from 0.1.14 to 0.1.16
...
Bumps [hyper-util](https://github.com/hyperium/hyper-util ) from 0.1.14 to 0.1.16.
- [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.14...v0.1.16 )
---
updated-dependencies:
- dependency-name: hyper-util
dependency-version: 0.1.16
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 13:38:26 -03:00
dependabot[bot]
c06ed49a2a
chore(cargo): bump async-channel from 2.3.1 to 2.5.0
...
Bumps [async-channel](https://github.com/smol-rs/async-channel ) from 2.3.1 to 2.5.0.
- [Release notes](https://github.com/smol-rs/async-channel/releases )
- [Changelog](https://github.com/smol-rs/async-channel/blob/master/CHANGELOG.md )
- [Commits](https://github.com/smol-rs/async-channel/compare/v2.3.1...v2.5.0 )
---
updated-dependencies:
- dependency-name: async-channel
dependency-version: 2.5.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 13:33:11 -03:00
dependabot[bot]
2e51a5a454
chore(cargo): bump bolero from 0.13.3 to 0.13.4
...
Bumps [bolero](https://github.com/camshaft/bolero ) from 0.13.3 to 0.13.4.
- [Changelog](https://github.com/camshaft/bolero/blob/master/CHANGELOG.md )
- [Commits](https://github.com/camshaft/bolero/commits )
---
updated-dependencies:
- dependency-name: bolero
dependency-version: 0.13.4
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 12:59:56 -03:00
dependabot[bot]
75cc353528
chore(cargo): bump serde_json from 1.0.140 to 1.0.142
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.140 to 1.0.142.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.140...v1.0.142 )
---
updated-dependencies:
- dependency-name: serde_json
dependency-version: 1.0.142
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-02 12:51:47 -03:00
dependabot[bot]
3977580426
chore(cargo): bump toml from 0.8.23 to 0.9.4
...
Bumps [toml](https://github.com/toml-rs/toml ) from 0.8.23 to 0.9.4.
- [Commits](https://github.com/toml-rs/toml/compare/toml-v0.8.23...toml-v0.9.4 )
---
updated-dependencies:
- dependency-name: toml
dependency-version: 0.9.4
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2025-08-01 22:00:13 +00:00
link2xt
3a1370e174
chore(release): prepare for 2.9.0
v2.9.0
2025-07-31 18:57:58 +00:00
iequidoo
c218c05b96
fix: get_chat_msgs_ex(): Report local midnight in ChatItem::DayMarker
...
We were reporting the UTC midnight timestamp instead. For UTC-N timezones that means reporting
"yesterday".
Fixes https://github.com/deltachat/deltachat-desktop/issues/5215 .
2025-07-31 13:55:28 -03:00
iequidoo
db247d9f9a
refactor: Don't call add_or_lookup_key_contacts() in advance
...
Its result isn't needed in all the branches.
2025-07-31 12:07:58 -03:00
iequidoo
78b7715ea6
refactor: Rename add_or_lookup_key_contacts_by_address_list() to add_or_lookup_key_contacts()
...
- It's obvious that addresses are needed to add contacts, so `_by_address_list` looks excessive.
- The function only looks up `SELF` by address.
- The name was confusing because there's also `lookup_key_contacts_by_address_list()` that actually
looks up key contacts by addresses (not only `SELF`).
2025-07-31 12:07:58 -03:00
link2xt
ba76944d75
fix: display correct timer value for ephemeral timer changes
...
The timer change should not disappear,
but should display correct timer change.
2025-07-31 15:00:08 +00:00
cliffmccarthy
4a1a2122f0
feat(repl): Add import-vcard and make-vcard commands ( #7048 )
...
- Added import-vcard and make-vcard commands to deltachat-repl. These
wrap the corresponding import_vcard() and make_vcard() operations from
src/contact.rs. Each command takes a file path argument specifying the
location of the vCard file to be read or written. The make-vcard command
takes one or more IDs to write to the file.
- Documented commands in "Using the CLI client" section of README.md.
Co-authored-by: iequidoo <117991069+iequidoo@users.noreply.github.com >
2025-07-30 13:16:29 -03:00
link2xt
d80b749dec
chore(release): prepare for 2.8.0
v2.8.0
2025-07-28 19:31:43 +00:00
link2xt
039a8b7c36
fix: lookup self by address if there is no fingerprint or gossip
2025-07-28 19:18:07 +00:00
iequidoo
779f58ab16
feat: Remove ProtectionBroken, make such chats Unprotected ( #7041 )
...
Chats can't break anymore.
2025-07-28 16:01:14 -03:00
link2xt
b9183fe5eb
chore(release): prepare for 2.7.0
v2.7.0
2025-07-26 22:49:44 +00:00
Hocuri
9d342671d5
fix: Do not fail to upgrade if the verifier of a contact doesn't exist anymore ( #7044 )
...
Fix https://github.com/chatmail/core/issues/7043
2025-07-26 22:41:11 +02:00
link2xt
4e47ebd5fc
test: fix flaky test_webxdc_resend
2025-07-24 17:47:19 +00:00