Why not copy to sent folder?

I don’t understand the philosophy of not copying the sent messages to the sent folder. Is this not what email clients (thunderbird) do? It seems more natural than the inbox.

If relevant, the “copy to sent” is more appealing to me for archival purposes - a history in a common format that i can port between systems without being dependent on deltachat or having another thing to port over. I’m not as interested in the multiple-device feature.

Thanks

from FAQ - Delta Chat :

The copy is sent to the Inbox, and then moved to the DeltaChat folder; it’s not put into the “Sent” folder. Delta Chat never uploads anything to the Sent folder because this would mean uploading a message twice (once through SMTP, and once through IMAP to Sent folder).

in other words, “copy to sent” would waste lots of data and time.

apart from that, having parts of a conversation in Sent and other parts in INBOX clutters threads.

(if i recall correctly, there was also a forum discussion about that at some point, but i cannot find it :slight_smile: )

You can also configure Thunderbird to Bcc: a copy somewhere, by default it suggest to Bcc: to self. This way all your messages will be stored in the Inbox, both incoming and outgoing.

The default of saving to Sent is mostly historic, old clients were running on the same machine as the email server and got their emails delivered directly to the user “inbox”. Clients such as elm then had a function to save sent emails to a local sent folder and the latest versions of them still have no threading support. With the widespread use of IMAP on personal computers the default changed from saving to Sent locally to saving to Sent remotely. But this is not necessarily a good default because it breaks threaded view if you participate in a thread yourself.

I tend to have all my mails in a single folder and rely on the client filtering and search functions instead.

2 Likes

why would “copy to sent” use any more data or time than “copy to inbox”? maybe i don’t understand the email process well enough. Also, data usage seems like more of a concern for mobile. for my use case on desktop, email data usage is irrelevant. Is the delta-chat philosophy focused on mobile usage?

i don’t follow - is this referencing a limitation of the internal code structure of delta chat? or a limitation of the imap protocol when a mailbox is accessed by two clients simultaneously?
EDIT: Oh - the client view like when you see the email tree/chain, right? i wasn’t aware that that broke when using separate inbox/sent folders. This would be another good point for the “one folder” philosophy.

if I’m understanding you right, I see a lot of merit to this philosophy. why do we force folders when we could have the client filter automatically by sender/recipient?

If this “one folder” philosophy is what is driving the “send to inbox” behavior, then I would propose that instead of sending a copy to the inbox, delta chat sends a copy to whatever folder delta-chat is “synced with”. That is, if delta chat is displaying and working from the inbox, then the copy would be sent to the inbox. If delta chat is working from another specific imap folder (perhaps a subfolder of the inbox), then the message should be uploaded there.

Note that the same imap mailbox will be used with split inbox/sent folders for many people for all their other emails, and it will be inconsistent to have sent emails in the sent folder, but sent delta chat emails in the inbox folder. Returning the emails to the same folder delta chat is displaying and working from will allow encapsulation of this new philosophy and not force an inconsistent philosophy on top of users’ existing inboxes.

Also, i would propose you change the faq to share this new bold philosophy, rather than discussing data usage.

yes as most messenger usage is on smartphones these days.

send copy to self is internally called bcc_self which describes better what it actually does.
It signals your smtp server to send a copy to yourself.
In contrast ‘copy to inbox’ or ‘copy to sent’ folder would require your email client to upload the email additionally via IMAP, using double the data.

fair enough.

oh ok so less data if you bcc yourself rather than separately copying it to the imap folder. that also likely explains why “send to self” hasn’t been working for me with my custom smtp server that forwards emails over the pstn as texts - I wasn’t checking for any bcc header to forward emails to.

I think we’re on the same page now.

My feature proposal would be to change “send copy to self” to a 3-way toggle between:

  • copy sent messages via imap (requires twice the data compared to bcc yourself)
  • bcc yourself on sent messages to (requires almost no extra data)
  • do not copy sent messages (will not work with multiple devices)

The first option would be default for the desktop application. copied messages would be copied to the same folder that delta chat was monitoring/working from.
The second option would be default for the mobile application

Thanks for all your responses

this is already the case now. once delta chat sees a “bcc_self” message in the inbox, it is moved to the “folder that delta chat was monitoring/working from”, usually DeltaChat.

this, “Send Copy to Self”+“Move automatically to DeltaChat folder” is mostly equal to your feature proposal “copy sent messages via imap”+“copied messages would be copied to the same folder that delta chat was monitoring/working from”.

but the implemented approach does not double the data usage.

so, your feature proposal seems to describe mostly the already implemented state. of course, there may be bugs :slight_smile:

That sounds similar to what I was describing. Strictly speaking it’s not the same thing though. When you send an email with thunderbird the imap copy in the sent folder does not have a bcc header. The ocd in me doesn’t like the fact that you’re not saving the original email, but instead the original email with a bcc header tacked on. Also, it doesn’t seem as clean of a process (race condition?). For example, if you close delta chat before the sent email has come back to the inbox and before delta chat has had the opportunity to move the new email to the proper folder, will it will show up in another email client in the main inbox?

ocd asside it also means that I have to program my smtp server gateway or make do without copies of sent messages or make do without delta chat. If most email clients could be expected to save a copy via imap, then i have do do this programing special for delta chat to handle what would normally have been done by the email client. I admit my use case is rare if not completely unique, so I would understand if it wasn’t a priority. But I still see merit in my suggestion if delta chat does not allow you the option to save email copies as you would expect an email client to do.

The ocd in me doesn’t like the fact that you’re not saving the original email, but instead the original email with a bcc header tacked on.

this is actually not true.

it is the other way round:

Thunderbird & co. do not upload the SMTP-original to IMAP but add some more headers - as BCC.

the “Send Copy to Self” does not modify anything in mail headers or on IMAP, so you really receiver what the other recipients receive. the “E-Mail BCC headers” added by thunderbird etc. are artificial, they are not needed for the functionality of SMTP sending mails somewhere. Delta Chat does not add these headers.

Here are all of the headers from an email i sent from thunderbird:

Message-ID: <23j4g534g52hj345hj234g5j2g34kj523k4hg@--------.com>
Date: Fri, 24 Mar 2023 09:48:49 -0500
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101
 Thunderbird/102.9.0
Content-Language: en-US
To: --- ---------- <-------@gmail.com>
From: ----- ------ <----@-----.com>
Subject: -------- --- -----------
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit

I don’t see any “e-mail bcc headers”. But lets assume one or more of them were indeed added by thunderbird and not included in the original sent email.

My problem isn’t so much that delta chat is adding extra annotations to the email. For example, i found an email (i think sent or received by delta chat) where there was a “Chat-Version: 1.0” header. That’s perfectly fine with me (although perhaps “Delta-Chat-Version” would prevent the chance of collisions with other chat style email clients).

My problem is that delta-chat does not allow you to save copies of your sent emails without changing (not just annotating) the email itself by adding a bcc to yourself. Or, to look at it another way, delta chat is hacking and using existing headers in ways that are inconsistent with their typical meaning.

My problem is that delta-chat does not allow you to save copies of your sent emails without changing (not just annotating) the email itself by adding a bcc to yourself. Or, to look at it another way, delta chat is hacking and using existing headers in ways that are inconsistent with their typical meaning.

again, this is not true.

i think, here is a misunderstanding about how SMTP and IMAP work.

for the “Send Copy to Self” functionality, Delta Chat does not need to add a BCC-header or any other MIME-header to the mail or modify the mail otherwise. the mail stays completely unchanged. “Send Copy to Self” just adds “Self” to the SMTP-recipient list, which is not part of the mail, but only an SMTP protocol detail.

technically, you get a more original copy of the mail sent out, as a “second upload” - which may modify mime header, but that is a bit nitpicking and opinionated.

(to test: send a message with thunderbird BCC’ing someone. then compare the headers of the receiver and your copy. they are different. for reasons, sure, but arguing that this approach is more original than “Send Copy to Self” seems weird)

in general, for an overview about the standards used and supported by Delta Chat, see https://github.com/deltachat/deltachat-core-rust/blob/master/standards.md#standards-used-in-delta-chat

2 Likes

oh. yeah just tried and it added some other headers (Return-Path, Delivered-To, Received, Authentication-Results) but not Bcc. thank you for taking the time to explain that. I haven’t researched these new headers to develop a solid opinion about whether they modify the original email or not - perhaps that is a philosophical issue.

I still vote for a “copy via imap” feature.

Hopefully I’ve explained my perspective good enough that you could understand my desired behavior and philosophy. As I mentioned earlier, I understand if that would be low priority, but you have a “feature proposal” section so you asked for it :slight_smile:

Thanks again for your time and for developing delta chat

2 Likes