Skip to content

Conversation

@Simon-Laux
Copy link
Contributor

@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
  • test_something.py::test_download_limit_chat_assignment
  • 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/message/message_tests.rs::test_msg_seen_on_imap_when_downloaded
  • 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_partial_group_consistency
  • 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:

  • test_partial_group_consistency
  • test_msg_seen_on_imap_when_downloaded
  • test_download_limit_chat_assignment

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
  • test_download_limit_chat_assignment
  • multi device tests
  • deletion tests

postponed to do tests

  • rust: test_msg_seen_on_imap_when_downloaded (I guess this is for syncing seen state between devices)
  • rust: test_partial_group_consistency

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

@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
- Remove partial downloads (remove creation of the stub messages) (#7373)
- Remove "Download maximum available until" and remove stock string `DC_STR_DOWNLOAD_AVAILABILITY` (#7369)
- Send pre-message on messages with large attachments (#7410)
- Pre messages can now get read receipts (#7433)

Co-authored-by: Hocuri <hocuri@gmx.de>
@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
Comment on lines +1475 to +1478
"CREATE TABLE download_new (
rfc724_mid TEXT NOT NULL DEFAULT '',
msg_id INTEGER NOT NULL DEFAULT 0
) STRICT;
Copy link
Collaborator

Choose a reason for hiding this comment

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

@link2xt I'm wondering whether this should be UNIQUE on rfc724_mid or msg_id? I guess it doesn't really make sense to have the same message in there twice?

Previously, the uid_next wasn't advanced, which didn't create any
problems, but it also was inefficient, because another loop was done
trying to fetch the message again (and then finally skipping it, because
it's already known).
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

4 participants