holger krekel
f55d4fa73a
rename process_low_level_event to process_ffi_event
2020-04-13 17:39:31 +02:00
holger krekel
ce00c627d4
don't run Eventlogging by default -- the tests instantiate it, though.
2020-04-13 17:39:31 +02:00
holger krekel
d3c6f530e2
introduce global plugin manager
2020-04-13 17:39:31 +02:00
holger krekel
cf6391d51b
move event tracking to new tracker.py file
...
some api cleanups
2020-04-13 17:39:31 +02:00
holger krekel
57311d731e
simplify logging
2020-04-13 17:39:31 +02:00
holger krekel
95d45b386f
separate out FFI eventracking to only be used in running tests
2020-04-13 17:39:31 +02:00
holger krekel
bbc8bed39c
move temp_plugin to account
2020-04-13 17:39:31 +02:00
holger krekel
ec67b3975c
good bye global plugin manager ... we only do per-account object plugin_management for now
2020-04-13 17:39:31 +02:00
Alexander Krotov
e9967c32e6
chat: filter parent messages by state instead of UID
...
Since introduction of server message deletion, message may not have
server UID even when it is not a draft or pending message. To handle
such messages correctly, we explicitly check message state.
2020-04-13 17:38:42 +02:00
Alexander Krotov
493a213d41
sql: move QueryReturnedNoRows and NULL handling into query_row_optional()
2020-04-13 17:38:42 +02:00
Alexander Krotov
f65dbee74b
Add basic test for ChatId.parent_is_encrypted()
2020-04-13 17:38:42 +02:00
Alexander Krotov
f51fd1267f
chat: move parent_query() and related methods from Chat to ChatId
2020-04-13 17:38:42 +02:00
Hocuri
711f3f69da
Emit an event when SMTP fails (the same is already done for IMAP)
2020-04-12 18:17:24 +03:00
Friedel Ziegelmayer
24f4cbbb27
refactor: replace failure
...
- failure is deprecated
- thiserror for deriving Error impl
- anyhow for highlevel error handling
2020-04-10 22:39:28 +02:00
Alexander Krotov
d31265895d
Update rPGP to 0.5.2
2020-04-03 12:57:13 +03:00
bjoern
6e35a879a3
Merge pull request #1375 from deltachat/robust-hide-device-expired-messages
...
Make "hide_device_expired_messages" more robust
2020-04-03 11:48:09 +02:00
Alexander Krotov
9c2a3b8a82
Chatlist::try_load: make hide_device_expired_messages errors non-fatal
2020-04-03 12:13:42 +03:00
Alexander Krotov
916fab7d4b
hide_device_expired_messages: allow missing self or device chat
2020-04-03 12:12:56 +03:00
Alexander Krotov
3163ef87c6
imap: display errors with {}, not {:?}
2020-04-01 23:27:15 +03:00
Alexander Krotov
1934181b52
Terminate new SQL statement lines with \
...
This way rustfmt can change indentation. However, care should be taken
to keep a space before each \
2020-04-01 20:06:27 +03:00
Alexander Krotov
1b815a7d96
Display an error if message cannot be trashed
2020-04-01 20:06:27 +03:00
Alexander Krotov
4e0a08106d
ChatId.get_param: remove unnecessary type annotation
2020-04-01 20:06:27 +03:00
Alexander Krotov
e8cc739fbd
Reload chatlist when "delete_device_after" is set
2020-04-01 20:06:27 +03:00
Alexander Krotov
fc57cbfb49
Refactor hiding of expired messages
...
Now there is only one function: hide_device_expired_messages().
If any messages are hidden event DC_EVENT_MSGS_CHANGED(0,0) is emitted
now, which is more correct than DC_EVENT_CHAT_MODIFIED and also triggers
chatlist reload.
2020-04-01 20:06:27 +03:00
Alexander Krotov
7522fec044
Do not emit "chat modified" events when loading chatlist
...
Otherwise chatlist will be loaded twice, once right after hiding expired
messages, and once in response to event emitted by try_load().
2020-04-01 20:06:27 +03:00
Alexander Krotov
237dabb907
Do not hide hidden messages in ChatId.delete_device_expired_messages()
...
This prevents infinite event loop, when chatlist is reloaded in response
to event, and event is emitted by hiding messages before chatlist reload.
2020-04-01 20:06:27 +03:00
Alexander Krotov
3686048ab6
chatlist: hide all expired messages before loading
2020-04-01 20:06:27 +03:00
Alexander Krotov
2bf4c5d7e7
Emit "chat modified" event when messages expire
2020-04-01 20:06:27 +03:00
Alexander Krotov
051d80b2f3
Move delete_device_expired_messages() to ChatId
...
This allows to check if chat is a self-talk or device chat.
Messages are deleted only in viewed chats now.
2020-04-01 20:06:27 +03:00
Alexander Krotov
adaa1e856c
chat: add ChatId.is_self_talk() and ChatId.is_device_talk()
2020-04-01 20:06:27 +03:00
Alexander Krotov
4daa57c98e
delete_device_expired_messages: set text to DELETED for hidden messages
...
This makes debugging easier: DELETED messages should never be shown.
2020-04-01 20:06:27 +03:00
Alexander Krotov
7e67b2cbb3
Do not delete messages from special chats
2020-04-01 20:06:27 +03:00
Alexander Krotov
270d18a88a
Move prune_tombstones() to sql:: and call from housekeeping()
2020-04-01 20:06:27 +03:00
Alexander Krotov
25f8a735a9
get_chat_msgs: remove locally expired messages
...
Expired messages are hidden right before retrieving messages from the
database, so expired messages are not shown to the user.
2020-04-01 20:06:27 +03:00
Alexander Krotov
9eb672ea17
Move removal of chat message tombstones to a separate function
...
DELETE operation may be slow compared to UPDATE. It is better to do in
a separate job.
2020-04-01 20:06:27 +03:00
Alexander Krotov
9febc762da
Add chat::delete_device_expired_messages() function
2020-04-01 20:06:27 +03:00
Alexander Krotov
4b742c220c
Add Context.get_config_delete_device_after() method
...
In contrast to get_config_delete_server_after(), value 1 does not mean
"delete at once", because it does not make sense to delete messages
immediately after receivning them.
2020-04-01 20:06:27 +03:00
Alexander Krotov
9d03d441e1
Add Config::DeleteDeviceAfter option
2020-04-01 20:06:27 +03:00
B. Petersen
ff8b249cc6
For now, 'Saved messages' are auto-deleted from the server, but not from device
2020-04-01 20:06:27 +03:00
B. Petersen
248e6ea5e7
make clippy happy
2020-04-01 20:06:27 +03:00
B. Petersen
be0afdebfd
target comments of @link2xt, fix ci
2020-04-01 20:06:27 +03:00
B. Petersen
9f19d20344
implement message estimating
2020-04-01 20:06:27 +03:00
B. Petersen
aea8a32ba5
add 'estimatedeletion' to repl tool
2020-04-01 20:06:27 +03:00
B. Petersen
d1a4c82937
prototype ffi for ephemeral messages
2020-04-01 20:06:27 +03:00
Alexander Krotov
4f73812673
Prioritize message deletion over message moving
...
If Delta Chat goes online and gets an expired message is in the Inbox,
it should delete it instead of moving and then deleting.
2020-04-01 20:06:27 +03:00
Alexander Krotov
33150615a1
Improve logging for server UID updates in precheck_imf()
...
Log all folders and UIDs and warn about UID changes without folder change.
2020-04-01 20:06:27 +03:00
Alexander Krotov
491f83c86d
Remove ServerFolder and ServerUid job parameters
...
They were used by MarkseenMdnOnImap
2020-04-01 20:06:27 +03:00
Alexander Krotov
41f776763b
Remove MarkseenMdnOnImap
...
MarkseenMdnOnImap stored server folder and UID which are never updated
by update_server_uid. Now hidden entries are created for MDNs, so they
should be handled as ordinary messages.
2020-04-01 20:06:27 +03:00
Alexander Krotov
65fdfac866
Remove unused dest_uid argument from Imap.mv()
...
It was always set to 0 because we don't know the destination UID.
2020-04-01 20:06:27 +03:00
Alexander Krotov
cb0c00bc6d
Log rfc724_mid in DeleteMsgOnImap
2020-04-01 20:06:27 +03:00