Skip to content

Conversation

@Simon-Laux
Copy link
Member

@Simon-Laux Simon-Laux commented Oct 29, 2025

This is the branch for #7367
closes #7367

Currently removed tests

  • test_something.py::test_reaction_to_partially_fetched_msg
  • python/tests/test_1_online.py::test_webxdc_download_on_demand
  • src/calls/calls_tests.py::test_no_partial_calls
  • src/message/message_tests.rs::test_markseen_not_downloaded_msg
  • src/receive_imf/receive_imf_tests.rs::test_download_later
  • src/receive_imf/receive_imf_tests.rs::test_create_group_with_big_msg
  • src/receive_imf/receive_imf_tests.rs::test_prefer_references_to_downloaded_msgs
  • src/receive_imf/receive_imf_tests.rs::test_partial_download_key_contact_lookup
  • src/webxdc/webxdc_tests.rs::test_webxdc_update_for_not_downloaded_instance
  • src/download.rs::test_download_limit
  • src/download.rs::test_partial_receive_imf
  • src/download.rs::test_partial_download_and_ephemeral
  • src/download.rs::test_status_update_expands_to_nothing
  • src/download.rs::test_mdn_expands_to_nothing
  • src/download.rs::test_partial_download_trashed
  • src/reaction.rs::test_partial_download_and_reaction

Progress of the tests

Overview about the recycled(♻️) and dropped(🗑️) tests of the tests that I removed in #7373

All the recycled tests were already recycled/re-made except for some which are still to do:
(none)

Furthermore there need to be new tests to test the downloading/scheduling changes.


TODO Tests

  • sending pre-message, post-message
  • metadata in pre-message
  • process receiving
  • display attachment info in pre-message
  • test scheduler imap fetching
  • test failing download sets state to failed
  • multi device tests
  • deletion tests, incl. sender-side deletion, whole chat deletion

postponed to do tests

(none)

discarded/ignored test ideas

maybe we should reconsider / discuss those?

  • test that full message, replacing pre-message does not work if the message encryption state is not the same for both messages (both full- and pre-message)
    • unencrypted pre- and full-message are not sent

Known bugs:

@Simon-Laux Simon-Laux changed the title [Branch] Pre-messages / next version of download on demand [Branch] pre-messages / next version of download on demand Oct 29, 2025
@link2xt link2xt force-pushed the pre-messages branch 3 times, most recently from 2f1c383 to 6bcc795 Compare December 11, 2025 12:00
@link2xt link2xt force-pushed the pre-messages branch 6 times, most recently from 8443b17 to 702771f Compare December 11, 2025 21:24
@link2xt link2xt force-pushed the pre-messages branch 2 times, most recently from bb0fd7c to a98fe05 Compare December 14, 2025 17:54
@link2xt link2xt changed the title [Branch] pre-messages / next version of download on demand feat: pre-messages / next version of download on demand Dec 14, 2025
@iequidoo

This comment was marked as resolved.

@iequidoo iequidoo force-pushed the pre-messages branch 2 times, most recently from 4a119fc to 84ce946 Compare December 30, 2025 04:30
@iequidoo

This comment was marked as resolved.

@iequidoo

This comment was marked as resolved.

@iequidoo iequidoo force-pushed the pre-messages branch 2 times, most recently from 18346a1 to 77ab447 Compare January 2, 2026 20:01
iequidoo and others added 23 commits January 8, 2026 12:22
It currently fails because pre-messages aren't deleted on IMAP.
Hyphen shouldn't be surrounded by spaces in general.
…th pre-message ones

When inserting pre-message checks in the middle, if they evaluate to false, the remaining checks
aren't performed. While this may be correct currently, it's hard to maintain. Better move the
pre-message checks into a separate block.
…_pre_message()

Now it goes before `scan_folders()`. Scanning folders isn't that important, it's even debounced to
once per minute. Before, `download_msgs()` even preceded the whole `fetch_idle()`.
It's the post-message metadata by its nature and it's even put into the Chat-Post-Message-Metadata
header.
This shouldn't cause message reordering issues because the UIs don't allow to set too small
DownloadLimit, but this will help download small, e.g. chat messages first and only then big
emails. Even if we decide to revert this suggestion, the test is still useful.
It never worked as expected: if messages showed up on IMAP later, they weren't deleted. Messages
must be trashed with the `deleted` flag set, not just deleted from the db.
I.e. if DeleteServerAfter is set or BccSelf is unset (single-device mode) for chatmail. Looks like
this never worked as expected.
@iequidoo

This comment was marked as outdated.

Copy link
Collaborator

@link2xt link2xt left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will merge this as one commit after tagging 2.37.0. Any additional changes can be separate PRs on top.

@link2xt link2xt merged commit 2631745 into main Jan 8, 2026
30 checks passed
@link2xt link2xt deleted the pre-messages branch January 8, 2026 22:14
@iequidoo
Copy link
Collaborator

iequidoo commented Jan 9, 2026

There's no good commit message however. I think in such cases we need to copy the description from the issue, it's good enough here ("Motivation" and "Implementation" sections look enough). Otherwise w/o access to github it will be hard to understand many things. I'd consider amending the commit and force-pushing main

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Tracking Issue] Pre-Messages

5 participants