Thunderbird's New Rust Integration: The Future of Email Clients?
Thunderbird's New Rust Integration: The Future of Email Clients?

Thunderbird's New Rust Integration: The Future of Email Clients?

Thunderbird's New Rust Integration: The Future of Email Clients?
Thunderbird's New Rust Integration: The Future of Email Clients?
As a Thunderbird user and Rust fan, I approve this integration. However I want to mention that Thunderbird is good as it is and actually don't think new features are needed. Only compatibility with other software or protocols could be better (which the Rust integration aims to improve). And to be honest, a way to disable some of the feature bloat would be preferable too, as I don't use lot of the additional stuff (but I make use of the RSS Feed reader).
JMAP support would make a huge difference to expand the only open/free (as in speech) competition Exchange has.
Agreed. Self hosting email with JMAP support has become easier with Stalwart. More email clients with JMAP support would be nice.
What's JMAP?
Thunderbird still uses mbox. Maildir is incomplete and experimental.
I really wish we could use maildir.
Yes it was shocking to learn about the file format. I reverse engineered the stuff that I need to know and its a complex mess of noodle soup (later found a description of it, but its not fully documented by Mozilla either). I am surprised that Thunderbird still uses this ancient and inefficient format.
I'm getting fed up about all those articles "rust x something: the future?", "I rewrote
<cli tool>
in rust it's now memory safe". I get the rust safeties and all, but that doesn't automatically make everything great, right ? You can still write shit code in any language that can RM -rf all your disk, or let security gaps here and there without intending to.It does make stuff great. Even Microsoft is trying out Rust in their shit operating system because apparently 30% of all CVEs are related to, you guessed it, memory issues. And Rust will most likely solve them all. Even the Linux kernel has Rust code in it now. If Rust was not of importance, why would the Linux kernel get rusty? Especially Linus Torvalds is very strict about these things. Sure, bad code rewritten in Rust does not make it any better than it originally was. Plus you get C-like speed with good syntax and memory safety, what more could you ask for?
Yes security issues will remain a problem no matter what language was used. You are talking about the possibility of a logic flaw being there, whereas rust 'just' prevents memory corruption.
Which is the more common security issue? Memory corruption by a mile. That's why many are excited by the rust rewrite
So you're right it isn't literally everything, but I'm not sure what would be. What would make you not fed up about it?
I think I'm more fed up with people making those quotes "rust will change everything" when, in fact, it will rule out many if not most memory corruption as you said. Reading your comment, I see now it's the mentality "everything need to be in rust" that bothers me the most, which in fact means "rust can bring memory safety" and not "rust will replace everything". Alas I'm seeing it used times and times again as the latter instead of the former.
Integrate with GTK and Qt first
This would be a ludicrous time investment for very little gain.
Maybe, but I find it kinda frustrating that they invested a lot of time in the direct opposite way. Thunderbird had Qt/GTK support in version 102. In the next release, they forced their own theme and moved some elements while removing Qt and GTK support with the nonsensical justification of "we'd have to hardcode every single possible color permutation that the user could theme" when you get the colors from a function. They then locked the threads about this. I assume they did some internal refactoring, but still, it feels frustrating.
(note that the new UI can be customizable to have the inbox be single-row and the mail content be on the bottom) (also 115 is 102's next release, thunderbird updates the major version number to whatever firefox's is at the time of release)
I honestly don't understand the love for Thunderbird... Tried it for a few months, loved it entirely until I discovered it was fucking losing days worth of emails
Lost, as in, nowhere to be found, no search or manual browse would find them, no way of restoring them. Had to go into OWA to see the missing emails
Then apparently I found out it's a known bug
I'm sorry but I would trade every bell and whistle for an email client that does not fucking lose your email
Maybe the issue was that you were using it to access some kind of Microsoft service and their improper IMAP implementation.
It was... I was accessing my work email which unfortunately runs on Exchange... having said that, sorry, either support whatever crap MS puts or out don't... "losing" emails cannot be part of a ready-for-public email client
Now, from what I read at the time, it was not "Owl for exchange"'s bug, it was Thunderbird. It apparently happens with other email sources as well, however you can "repair" your mailbox to get them back when you notice
I wonder if that's been fixed yet. You'd think so...
Gmail has a bad habit of losing my emails anyway. Maybe yours too if you ever used Google Inbox.
I migrated my main account to Inbox and it was honestly the best email experience I've had. Unfortunately, the forced migration following its collapse left my Gmail riddled with problems.
Granted, it's not losing days worth of email. It just occasionally attempts to automatically categorize emails into categories that don't exist, removing them from my inbox and leaving them in a weird uncategorized limbo space. Once there, I have to search for them specifically before they will show up anywhere.
The worst part is, it is so inconsistent that I have no clue when to expect it. I have missed major bills this way.
I have a coworker who is also an Inbox refugee. He is the only other person I've met with identical Gmail issues.
Victim of the Inbox move myself.... Same as it happens with Thunderbird, I started noticing something amiss when searching for emails I was certain I had were coming back empty
At first I thought my memory was not as good as I expected... But then realized what was going on
my problem was that it looked like it was designed in the 1960s.
I mean we are using Exchange email accounts at work with thunderbird, would be really lol if emails just get "lost". But yea for sure a problem of Thunderbird. No user nor microsoft problem... ;>
The email was right in my inbox in owa... It could be an ms issue although I had seen the email in Thunderbird, that's how I saw it first... Not sure how an email disappearing from my inbox is my fault
Thunderbird is my kind of bird
The Evolution email client is pretty great, and FairEmail for Android.
K-9 mail is better
K-9 mail is eventually going to become Thunderbird for Android, just for anyone who didn't know.
Different people, different taste.
I love FairEmail because of its "millions" of settings and the privacy features, for an example if you press a link, you'll get a popup with options (for an example, what app you want to open the link with). And if the link contains trackers, FairEmail will remove these by default and saying "tracking parameters removed" with yellow text in bold.
K-9 Mail feels incomplete in comparison. Have you tried FairEmail?
K-9 mail is what I originally used, but it isn't supported or being developed any more. There were some weird issues that I can't remember now that caused me to switch to FairEmail.
In the meantime, Evolution has had EWS support for years... no Rust involved.
Evolution is a good client that I used for a long time. But I switched to Thunderbird after their recent UI overhaul and I have to say it feels way more thought out and robust than evolution.
Thunderbird had it as a plugin to support EWS.
Who cares ? What matters is the features and how fast the app is. Not what language was used to achieve that.
Rust is wildly fast. Learning that it is being used for a program is good to know if you care about speed. If you read the article, it even addresses your exact critiques:
Moreover, Rust has demonstrated superior performance compared to JavaScript add-ons, resulting in a quicker and more responsive Thunderbird. Furthermore, the integration of Rust into Thunderbird will be facilitated by the fact that it is already utilized in Firefox, enabling Thunderbird to leverage existing infrastructure for testing and continuous integration.
So not only with thunderbird be faster because Rust is faster than JavaScript, but it eliminates 3rd party addons by being native which also further increases speed. Lastly, development time for new features and improvements is faster because they can now use using the mature tooling that Mozilla has for Rust.
So yeah, good to know its using Rust now.
Not the person you wrote to, but TB has native code in C++, so I don't really think the speed will change. The official website also doesn't advertise speed improvements. It argued that Rust is (almost) as fast as the current native C++ part in TB, and that's about it.
I wrote a simple commandline program in Rust to read mailbox file from Thunderbird and to output count of unread mails. The speed is insanity! Measuring the execution time with command time CMD
outputs execution time of total 0m0,001s
! While also providing all the features and checks from Rust (plus Clippy with pedantic options enabled), so I am confident it is not a buggy mess. I would need at least 10 years of professional experience in C to have this feeling of confidence.
The improvement here is switching from interpreted to compiled. It could have been C, Zig, Odin, or even C++ (but thank Satan it isn’t C++)
I’m not sure I understand why people like Rust over C, although I don’t have that much experience in enterprise coding. I’m generally distrustful of languages without a standardized specification, and I don’t really like that Rust has been added to the Linux Kernel. Torvalds giving in to public opinion isn’t something I thought I’d live to see…
I get the segmentation fault thing, but to be blunt, that sounds like a skill issue more than an actual computer science problem.
Maybe if things were less rushed and quality control was regarded more highly, we wouldn’t have such insanities as an email client (or an anything client) written in JavaScript in the first place.
Rust is likely going to suffer the same problem as JS, where people indirectly include 6,000 crates and end up with 30 critical CVEs in their email client that they can’t even fix because the affected crate was abandoned 5 years ago…
Why does every mention of Rust have to spawn these comments?
The story right after this one for me is how KeepassXC is porting to Qt6. I bet nobody has knee-jerk responded to that story bitching about the fact that they mentioned Qt. It is just the anti-Rust zealots that do this.
This article talks about the problems they were trying to solve, the tools they chose, and how those tools solve those problems. What is wrong with that?
Are you offering up informed commentary countering why you would have made different choices and why?
You do not need to attack every mention of a technology just because it threatens your historical preferences.
To be fair, Rust Evangelists are fucking annoying and it's fun to hate them.
How do I know? Would you like to talk about lord and savior, Ferris?
people who like fast apps should care because like 99% of current software developers are building electron apps instead of giving us something that actually lets your high end computer behave like a high end computer.
the only modern chat application that doesn't run electron today is Telegram.
the only cloud note taking app that doesn't run electron is ...uh. doesn't even exist.
the only...
i can't even think of something i use that was released after 2016 on my computer that doesn't run at a crawl because of electron. fuck electron.
How many people still use an email client? Genuine question.
I use either my phone or a web interface.
^ Boils down to not being hostage to a single provider and whatever it offers.
And your Phone is not using a Client?
Of course it is, but I clearly meant a desktop client.
I only recently start using it after also being a browser email user all my life.
Kinda wondering what took me so long Thunderbird is great! don't have to relearn questionable Ui between different email providers or re-login to check two mailboxes on the same provider.
Only annoying thing is not supporting ProtonMail out of the box.
That annoying thing is more on Protonmail though and I don't mean that as a negative, just more difficult to connect when the provider wants to keep things secure.
Only annoying thing is not supporting ProtonMail out of the box.
That's Protons fault, they're the ones that decided to ignore all the open and standard e-mail, contacts and calendar protocols out there and built their custom-everything stack to keep you vendor-locked into their interfaces.
Web interfaces are so much worse than local apps IMO. And that doesn’t just include email, I always choose a local app over anything that runs in my browser.
How many email accounts do you have? It might be a huge factor. I have about 7 accounts I need to check regularly and I cannot imagine doing it manually for each. I can see it working for one or maybe two though.
I do, i dont want to have to access 5 accounts using the browser on 3 different websites
Unfortunaly protonmail is not possible local (afaik) so i have to check there in the Browser.
Me. Outlook on my windows work box is hard to beat imo. Personal? All android's default and web-ui
I use a client because I don't want microsoft to remember me when I go on other microsoft site besides their web email client.
I guess I can use a dedicated browser for email, but that is pretty much just a email client using more resources.
If you self host your E-mail it’s way more recourse efficient not to host a web interface
I use Thunderbird on a Debian desktop and a client on my phone Fairmail https://email.faircode.eu/
I have several mails for different projects. Also private + university mail. Then I have my Google mail that I exclusively use for everything related to android/app store.
Checking all those mail accounts at once, managing folders/filters and signatures is all way easier with a desktop mail client.
Some years ago I was like you. I only needed to read mail and I have to admit that a desktop client is not really necessary in that case.
I want to, but none work properly. KMail is broken on NixOS, Evolution doesn't work well with KDE, and Thunderbird was just a broken mess last time I used it a few years ago when I was distro-hopping. Email is really not that important to me anymore either. Check it on the shitter or before bed and that's it.