Hacker News new | past | comments | ask | show | jobs | submit login
Thunderbird in 2019 (blog.mozilla.org)
341 points by richardboegli 3 months ago | hide | past | web | favorite | 163 comments



I love thunderbird because it's the only email client that does everything I want. I tried CLI clients, they are great and customizable, but CLI is a bit bare for email (images, html, fonts...)

Things I'd like to see improved:

- Native CardDAV and CalDAV support (there is caldav, but no discoverability of calendars).

- Native PGP.

- Better search, the UI is horrible and the search string is hard to get right (need fuzzy search and partial contact completion).

- A bit of UX work, some preferences are just a nightmare to find.

- Automation (auto tags, auto threading (for example, I get an order confirmation from webshop X, and a while after a shipping confirmation from webshop X, I want those to be grouped)).

- Improved storage engine, thunderbird is often freezing to compress folders.

- Critical bugd being fixed, like "imap"->"local folder" messages vanishing.


Native PGP is something I'd be very happy to see. Enigmail is needlessly complex with long setup wizards that frequently fail and a lot of legacy code supported for old distros. Services such as ProtonMail show that focusing on modern conventions and picking the right defaults can really bring encryption to normal users.


Full-text indexing for PGP mail would be nice too once it's native (Mailpile and CanaryMail helped pave the way on this I believe).


Agreed. I used Mailpile for a while, a lot of interesting ideas there.

As for PGP Thunderbird could use one nice idea that the browser extension Mailvelope uses: have bundled OpenPGP implementation in JavaScript (OpenPGP.js) for most users (guarantees easy setup) and a bridge to call GnuPG for experts.


Have you tried the latest version of Enigmail with P≡P and Autocrypt integration?


Yeah, it makes a real mess. It generates random numbers of key pairs for each user, breaks subject line encryption randomly, and just generally sucks. I hope it gets better, but it’s definitely not something you want to enable at this time, I regret doing it. At this point it’s easier to have one person help 50 people manually generate and exchange keys in an office setting.


I agree wholeheartedly! It's interesting that trying to make to process easier actually made it hard for both novices and experts.

Too bad it's enabled by default and plagued by issues: https://pep.foundation/blog/enigmailpep-current-update-1024-...


I really, really want it to work. I'm hopeful it will get better. I don't like PGP keyservers, they aren't very reliable, I wish I could remove all the old keys I've lost. And I don't like publishing my email address like that. Plus, the most of my GPG email use is with keys from people I know that we've sent each other directly. Overall I'm pretty satisfied with Enigmail running in the old PEP-free mode.


I'm also running PeP-free mode and I'm satisfied with it. I'm thinking that maybe after initial configuration it just works so the problem is largely setup.

As for keyservers even GnuPG is diminishing their role. Web Key Directory is promoted as a replacement for discovery and updates of keys. Coincidentally Enigmail will automatically fetch recipients keys using WKD when composing an email. For example kernel is using it (https://www.kernel.org/category/signatures.html#using-the-we...) so does ProtonMail.


Actually Enigmail couldn't generate user's key (I wanted to do a clean install and see the provisioning process for normal users) and later got stuck on some silly, completely unnecessary step (generating revocation certificate).

As for PeP I don't quite understand how it works and what is it for (and I'm quite proficient with OpenPGP in general). I don't mind Autocrypt, it's good for people on commodity mail providers, but I rather prefer Web Key Directory where possible.


A small note: beside CLI MUAs there is another text-based but graphic-capable MUAs, those inside of Emacs, Notmuch in my case, and this one can really beat not only TB but also GMail, earlier not-so-crappy versions included.

Native CardDAV integration can come via KHard or other sources, CalDAV can be integrated with org-agenda, GNUPG while not native is really quick to add, search is at another level + tags & saved searches, automation is via external tools like afew and it can be (with a not so small works, unfortunately) really efficient, for instance I auto-archive pdf attachments of my monthly bills in a proper tree, with proper filenames and a note in the org-agenda.

The real problem is only that no one still do not package anything in a sole comprehensive software with a simple config. You have to make it yourself perhaps with the help of org-mode and a bit of extra scripting. A price not anyone is willing to pay but a real opportunity for ThunderBird IMO.

Everything is there, needs only integration for casual users.


> Native CardDAV and CalDAV support (there is caldav, but no discoverability of calendars).

This would have been great about 5 years ago, and still would be useful, but I think we're going in the direction of unified protocols, like ActiveSync, JMAP, MAPI/EWS etc.

IMHO x-DAV should have been there from day one. I'm using SOGo for my family's groupware and although SOGo provide plugins for Thunderbird, I've been missing an integrated, seamless approach.


> I'm using SOGo for my family's groupware and although SOGo provide plugins for Thunderbird

I used to use SOGo but found it used way too much resources. None of us really even used 'webmail' so I ditched SOGO.

I went with https://radicale.org most of my family either uses mail clients, Thunderbird, (with Lightning), Canary Mail (the mac user), DAVx⁵ (formerly Davdroid). Radicale allows for ldap authentication which was a must for us.

On a side note the SOGO Integrator plugin took AGES to be updated for Thunderbird 60. I found https://gitlab.com/CardBook/CardBook/ to be WAY better, particularly as it replaces the crufty-old Thunderbird addressbook.


On a side note I have been curious about https://www.etesync.com but haven't tried that.


ActiveSync is the best email protocol but as far as I know is very costly. JMAP is comparable to ActiveSync but will see will gain enough adoption when RFC is finished.


Could you share your ActiveSync experience?

I've wanted to use z-push with a PSQL backend for a while, mostly to cut off gmail and repatriate my email archives


I personally found z-push very buggy. Also you need your own DAV servers for calendar and contacts AFAIK. I found Horde and SOGo much more reliable, I went eventually with SOGo as I thought it was weird using PHP for a long running server. With php stuff (horde and z-push) I had to edit too many timeouts etc.


Thanks, I was also considering sogo but I thought z-push would be more reliable as it is older.


I mean, people use it, it's not terrible, I just found it unreliable since at the end of the day it's a PHP app. Though Horde (which is also PHP) was miles better. I think z-push uses the php imap library, which is quite ineffecient. See https://wiki.horde.org/activesync#toc29

SOGo being written in obj-c means it's fundamentally much better suited to this task.


Speaking of CalDAV, the only thing I care about is the actual support of the calendar. Every time Thunderbird updates the Calendar “addon” loses compatibility and I'm without a calendar for a couple of weeks. Come to think about it, I don't even remeber for how long I've been without the calendar after the last update.


> - Improved storage engine, thunderbird is often freezing to compress folders.

Have you tried migrating to using maildir instead of mbox?


Not the OP but help pages seem to suggest Maildir support in TB is not necessarily production quality:

> Maildir is disabled by default because there are still many bugs. It is not 100% ready for users.

Source: https://support.mozilla.org/en-US/kb/maildir-thunderbird


I wonder how up-to-date that warning is, given that the feature was introduced in TB 38 and we're now on TB 60.

Edit: there's still 35 bugs tagged maildir (albeit all unconfirmed or new): https://bugzilla.mozilla.org/buglist.cgi?classification=Clie...


I always thought the search was excellent when I used it. At one point I had a 100k of emails. But I could find what ever I needed. Meanwhile Outlook failed with a certain local file size limit and caused endless problems. They were apparently okay with that and resisted change to something that actually worked.


The quick search bar is the one thing I find exasperating about Thunderbird. The advanced search works as you would expect, but I have no idea what the quick search is supposed to do. It does not do the one thing I'd expect it to do - a substring match on the email addresses and subject.


The search is not bad when you know what you are looking for. It's fuzzy search that is missing, and a few UI adjustments.


I'm not saying it was perfect, but it was far better than Outlook. And I have never once had to purchase recovery utils for Thunderbird, but to fix the fragile pst Outlook uses. I cant even count the number of times I had to do recovery for someone because IT was busy. Thunderbird never failed. At one point I just outright installed Thunderbird, changed the icon to Outlook and no one complained. I think I told them it was just the new interface.

Plus Outlook was a security nightmare anyways.


While we're writing a wishlist, native Wayland support wouldn't go amiss. That goes for Firefox too!


> While we're writing a wishlist, native Wayland support wouldn't go amiss. That goes for Firefox too!

That will happen after it makes it's way into standard Firefox releases as Thunderbird is based off ESR. It is happening.

See Martin's reply:

https://mastransky.wordpress.com/2018/10/09/firefox-on-wayla...

> Martin Stransky October 9, 2018 at 8:12 pm

> Unfortunately Thunderbird 60 is based on Firefox 60ESR which misses lots of Wayland patches.

> We can consider backport but I’d leave it on X11 for now and fine tune the patches on Firefox first.

Overall progress can be monitored here https://bugzilla.mozilla.org/show_bug.cgi?id=635134

I have been wanting to switch from i3 to Sway for some time now and not have blurry fonts in Mozilla products. (That's what happens if you use them through XWayland).


>"Native CardDAV and CalDAV support (there is caldav, but no discoverability of calendars)."

I use the TbSync and Provider for CalDAV and CardDAV add-ons. So far it works perfectly. But yes, I would prefer built-in native support.



I wish thunderbird supports native reply reminders like in gmail/outlook. I always have to remind myself to follow up with people who haven't replied to my emails. I've been using threaded messages to combat this, but it gets kind of messy when email chains get lengthy.

Also, I wish there were more tutorials online for workflow processes on thunderbird. With more funding by mozilla and dev support, I hope people make higher quality tutorials online, many of them are highly dated.

More robust addons. I've tried dozens but I currently only use 2 now, one for attaching images with website URLs and another for image-previewing multiple attachments.

I haven't really bothered compressing anything because it freezes my PC everytime. I set everything to IMAP, my localstorage on thunderbird is about 100 GB since I send out and receive a lot of large files. It's not a great way of handling things, but it works since my server has a 3 million file limitation. Storage is cheap, but security is nonexistent in this regard.

Automation with autothreading would definitely be a nice feature. I personally don't use any autotagging in any email system, I normally just rewrite subject headers instead / use filters alot / get better at searching.

Fuzzy searching really needs some work. Usually, I will know exactly what email to search for (be it an automated subject header with a unique identifier, or a person I deal with), but I cannot find it on my first try.

Second, from a UX design prospective, I wish thunderbird would have an accordion-like collapsible method for threaded messages, indicated by a "..." in the UX. For instance, I might have a 10+ chain response email, I only need to see the first 2 emails sent, and the last 2 in the chain, not the 6 in the middle (collapse by default). This is mostly for items that need a lot of clarifications.

UX needs improvement for handling multiple emails. As of now , I just forward every email to my main email and filter out appropiately. I don't see a better way of doing things in thunderbird.

Thunderbird doesn't support threaded messages outside main inbox, AFAIK.

Baynesian junk filter could use some improvements as well. Some vendors will mix spam and important mail from the same email address. Thunderbird doesn't do a great job filtering these out, even after training junk filter consistently.


I'd like to add the account settings section to the list. Whenever I want to change or review the server settings (IMAP/SMTP/POP), I always have to look for it like 30 seconds, since they are not in the same location (which is technically okay, since they are different services).


I’ve switched to MailMate after years of thunderbird and am very happy with it. It ticks all the boxes you mention.


MailMate is OSX only and proprietary, which kind of makes it a very different beast.


Yes I am on linux, and I wouldn't want a closed source email client.


"-Native PGP" - Take a look at this talk and be careful what you wish for: https://media.ccc.de/v/35c3-9463-attacking_end-to-end_email_...


While valid and interesting (good to know, and to share) for most people GNUPG-signed+encrypted emails are nice as a privacy protection tools against mass data mining. Even in today's society I't a bit hard to imaging Alphabet, Yandex, Microsoft etc do such kind of attacks...


Yes, but i believe tools/features like these advertise a sense of a level of security to the user which is, evidently and also to the protocols involved inherently, not what they might be led to believe. Given it's usually sensitive context, this can be quite dangerous.


The last I heard from Thunderbird in 2018, the story was Mozilla making preparations to divest themselves from the project and spin it off to "the community" (a.k.a. Apache graveyard).

This post makes it sound like the Thunderbird team has been growing within Mozilla during 2018, and is targeting another 75% headcount increase in 2019.

I mean, that's awesome, as someone who wants there to be a viable desktop email client option out there. But geeze... what a muddled mess of messaging and pivots from this organization.


I was once told by a Mozilla policy person in DC that Thunderbird was outdated and people should use webmail. They liked Gmail better and didn't see the point of using an IMAP client. It was a weird conversation.

I understood it was just their personal opinion, but finding myself advocating for Thunderbird against someone who works for Mozilla was a little strange. My take away was that Mozilla doesn't really know what its priorities should be and there is significant disagreement within the org about what they should be spending resources on.


There's a wide spectrum of people at Mozilla. It can range from "oh, I broke Thunderbird? Here, let me fix it for you." to "Thunderbird? Why haven't you died yet?"

In terms of who fit where, a few of the people at the head of the Mozilla Foundation were definitely strongly supportive, but I think most of the upper-tier management levels tended to be against Thunderbird as too much of a distraction from fixing issues [1]. This resulted in a lot of mixed messaging about how much Mozilla was or was not supporting Thunderbird. By the time you get down to most of the development staff, there was usually a desire to be kind and helpful towards Thunderbird but utter confusion as to whether or not they could be so due to the aforementioned mixed messaging.

[1] I'd argue that this was strongly short-sighted. To me, Mozilla deciding to ultimately screw over embedding, and a lot of the issues with Thunderbird would have been solved with a big push to a new, stable embedding. I even made arguments to that affect nearly a decade ago, but to no avail...


Thunderbird was outdated?

Yes, together with nearly any other MUAs except few termina's based ones and Emacs based one. And that's clearly demonstrate how someone decide to push them to the oblivion. Someone that's probably interest in webmails...

> didn't see the point of using an IMAP client

Well, me neither. I use a local client that's operate on my very personal, well backed-up, maildir. My "imap client" (mbsync) is a mere imap sync tools not much different than intra-server sync tools like Dovecot DSync...

On "the better" part... Well, for me is better to have my messages on my iron, to act on them locally so at lightspeed and without the need of a connection and an working remote imap just to search or refile or compose messages. Also I do not know why I may prefer to download my MUA anytime I access my mail (like webmails) when I can have one, lighter and powerful locally...

It's a matter of taste :-)

Someone like freedom, someone like jails. Mozilla most important "business" is a browser so essentially a modern way to the jail (not because of itself, of course). Perhaps they have to choose, perhaps since they move big money they have managers more interested in money and trends than in tech, or even incapable of really understand tech and simply following current trends trying to feel "up to date"...


I've gotten the impression that Mozilla people haven't liked Thunderbird or Firefox for a very long time, and would rather be Mozilla Web Services or something.


Is not Firefox the raison d’etre of the Mozilla Foundation? It seems ridiculous for them to lose sight of that.


I didn't realize they offered web services to any significant degree. Any prominent examples besides MDN?


Mozilla did divest themselves and spin it off; but the community was not a graveyard:

https://blog.mozilla.org/thunderbird/2017/05/thunderbirds-fu...


It is still a separate project. Mozilla is just collecting donations for them:

"While Thunderbird is now an independent project separate from Mozilla, Mozilla has agreed to collect donations on our behalf"

( quote above is from https://donate.mozilla.org/en-US/thunderbird?utm_source=tb_b... )


The disclaimer at the bottom of the donate page is strange:

>Contributions go to the Mozilla Foundation, (...) to support Thunderbird. Mozilla reserves the right to find another use for the funds if it determines that Thunderbird is no longer furthering Mozilla’s mission.

Is that true if it's now a separate project?


I've set up a regular monthly donation specifically to support Thunderbird development because having a FLOSS email client I can trust is extremely important to me.


I also donated today after reading their 2019 post. I've relied on Thunderbird for years. Having an independent, open source, and cross-platform email client with no vendor lock-in is important to me.


Thanks, this was really confusing me for a while since their donation link points to Mozilla, but they have this text right on their application launch page: "Thunderbird is no longer funded by Mozilla."


It is weird to see it at blogs.mozilla.org then…


It is not weird, just because it is now independent it does not mean they cannot collaborate or that Mozilla wont help them in restricted but significant ways.


> "Our team grew considerably in 2018, to eight staff working full-time on Thunderbird. At the beginning of this year we are going to be adding as many as six new members to our team."

Who are these staff members working full-time for, then?


Contractors chosen by the Thunderbird Council (a group of volunteers from the community) and paid by third-party donations. Mozilla just serves as the fiscal intermediary.


Lots of things are path dependent. Probably the threat of an unmaintained email client is why they got enough donations to hire full time developers.


The big problem I see is entrenchment... it's an app where nothing can change. They can't go ahead and just do a Chrome 69 with it.

What I would love to see is a small team in Mozilla create a spin-off Electron app, and do it well. Electron has a bad rap, but it's mostly due to being misused. Electron can be used well (VS Code for example).

Mozilla LightningBird for example. I could get on board with that. Heck, I'd probably help out.

Edit: Jeeze! You guys sure hate Electron. Just because a tool is misused so often, doesn't mean it's a bad tool.


Electron apps are usually pretty terrible.

They have issues with:

1. Memory usage and cpu usage (you're running a browser to run your application)

2. Platform look and feel (doesn't exist in javascript)

3. Platform and windowing behaviors.

I agree with the other commented to you.. if it changed to electronic, I would drop it as well.


Considering Thunderbird uses XUL and JavaScript, it has all the same problems.


Plus the wee existential problem that its platform is going away, instead of improving.


Hence the spin-off app. A ground-up, UX focused app which does not have to meet feature parity, would attract users who are already confused by email clients.

This is a different target audience to the people who typically use Thunderbird at this time.

For some people Apple Mail is enough.


Those people are targeted by Geary.


TBH, anyone I interact with who is tech savvy doesn't use email, so I really don't need those features.


> anyone I interact with who is tech savvy doesn't use email

You live in a strange bubble.


We're not corresponding via email... ¯\_(ツ)_/¯

Between github, SMS, social media, IRC & slack, video-conferencing, blogs, RSS, etc., email has become the medium of last resort. I still get a lot of email, but it's mostly automated notifications, and I usually have to log in somewhere to actually recieve a document because email is insecure.


On the other hand, I find slack and its ilk terrible compared to email.

Plenty of people I know use that at work, but email is really nice, and I love the features Thunderbird has.


I'm not expressing a preference, just pointing out what people do. You'd better like the features email has because it has a hell of a lot of inertia at this point. That said, it does have the killer feature of genuine interoperability, which virtually none of the new contenders even try for.


If someone do not use email hardly can be considered tech savvy. Sorry.

Perhaps he/she work for a company that do not really know IT so force their workers to use limited and limiting platforms, but it that's remain for personal world then no, it's might appear to you a tech savvy person but that's only due to Kant-ian glasses, not reality.


Email clients need an html engine, so all that added baggage kinda comes with the territory.


They need a stripped down HTML engine for rending incoming emails and composing emails. With an electron-based app how are you going to prevent HTML from rending in the view?


> What I would love to see is a small team in Mozilla create a spin-off Electron app

Now this is something you don't read everyday on Hacker News...


With such downvotes, I start to think electron hate is a cult.


I think it's due to a majority of those who have been around the block a few times knowing a trainwreck of a fad when they see one. At the end of the day it's basically taking a web page and throwing it into a container without browser controls. Remember when Windows 95 IE4 enhancements got so much flak and jeers from hackers due to MSHTML? Electron feels even worse than that.

The Web still sucks, and we don't need to shove The Web into native applications. Learn to make an actual program. Heck, QT exists, learn to use it.

I'm not saying you can't use an HTML layout engine for help and info screens, but for the entire program it's pants-on-head stupid. The time spent trying to warp one's web designer skills to make an "app" could have been used to learn how to make an actual application that would've been portable, and take less than a gig of RAM.

I use Teams at work, and it's taking 300+ MB of RAM on startup when it's basically a glorified chat client. Insanity.


> we don't need to shove The Web into native applications

90% of the time I'd agree with this sentiment, but modern email clients need to be able to render rich web content. A browser engine integration is just the reality, at some level.


>but modern email clients need to be able to render rich web content

No they don't.


If they want users they do.

I get more HTML emails than plain-text. I won't switch to a mail client that can't render the majority of my inbox.


I don't think I have any HTML emails that require more than web 2.0 stylings, which isn't really much more than lynx would support, plus images.

Its not clear to me you need anything resembling a modern web browser to render HTML emails. Do they even commonly use HTML5 features?


Then your term "modern" is wrongly used here. I haven't seen any substantial change in the last 10-15 years in regards to HTML mails.


Haha, it absolutely is. Thunderbird’s engine is not really that different in its core ideas.


You have an a bit cached but true point, that's is: there was a so big push to web tech that actual local graphics libraries was left in an old era without real updates. That's the case even of Qt and their QML mess. That's the case of GTk mess etc.

However have a browser as a framework and environment for anything is even worse than actual X server architectures.

So yes, we need to rethink desktops, perhaps looking at past solutions like LispM GUIs and Plan9/Rio but certainly not move toward actual trend.


Explain how QML is a mess? I've been using it almost as long as it exists - which is much longer than the life of the average hot JS framework - and didn't notice the mess. It has problems and limitations like everything, but overall it's very productive.


Essentially because require tons of fragile boilerplate code to work and it's mostly designed with web principle in mind, not desktop one.

You essentially can't found a QML GUI that not exhibit tons of error, from commercial one like TeamViewer to Kde/Plasma. It's surely more flexible than classic widgets but it's flexibility is not designed in a manageable way.


> require tons of fragile boilerplate code to work

Well yeah, you need to implement the properties and data models in C++ and export them - if you are doing it right that is. But the UI code is very quick and easy to write in return!

> it's mostly designed with web principle in mind, not desktop one

Not mainly desktop, true - it is designed mainly for touchscreens, mobile or embedded. It is easy to use exactly because it's not a web technology bent for user interfaces.

> exhibit tons of error

Not for the things I've been working on, which includes KDE / Plasma and many commercial applications.


I don't get it, why can't anything change? In fact, the platform in which Thunderbird runs - XULRunner - is the equivalent of Electron for the Gecko engine, and a bunch of different applications have been done with it.


I use Thunderbird because it is an application. If it became a Javascript app I and many others would surely switch to some other application.



Most of the actual guts of Thunderbird are in mailnews/, particularly mailnews/base and mailnews/db for the this-is-what-eats-the-CPU things. That code is almost entirely in C++, although there is an effort to try to rewrite stuff in JS (which has gone slowly because, hey, that's 100KLOC of C++ you have to move at once).


Thunderbird is an XML+CSS+Javascript app. Just like Electron (well, Electron is not XML).


By that definition would you call Firefox before version ~40 a javascript app? It obviously isn't despite using XUL and the elements implicit in that. The same is true of Thunderbird.


Yes, I would and would not ;-)

The technology in use is called XPFE. For a full (graphical) overview, see http://mb.eschew.org/1

It is different sorts of XML (XBL, XUL, RDF, DTD) controlled via Javascript and styled by CSS running on top of a C++ runtime. The components, the runtime exposes, can be accessed directly from within Javascript. Most of the application specific stuff is written in the XML+JS+CSS domain. There may be the one or other app-specific support library, but in the end, they all run on top of the same xulrunner binary.


The underlying rendering engine is in C++, of course. As is the JS implementation.

Which is to say, exactly like Electron. The only relevant difference that I can see between XUL and Electron is that the former had its own non-HTML-based markup language for UI.


Curious what you'd have called it.


Looking at the languages used in Thunderbird source (https://wiki.mozilla.org/Tree_Rules/comm-central#Thunderbird):

    $ cloc  build/ ldap/ editor/ mailnews/ mail/
        3938 text files.
        3848 unique files.                                          
         949 files ignored.

    github.com/AlDanial/cloc v 1.80  T=6.01 s (497.6 files/s, 127309.9 lines/s)
    ---------------------------------------------------------------------------------------
    Language                             files          blank        comment           code
    ---------------------------------------------------------------------------------------
    C++                                    360          36718          26562         207587
    JavaScript                            1098          39149          63692         195828
    CSS                                    278           7371           2664          30455
    C                                       83           5339           8278          29463
    C/C++ Header                           413           7091           8979          24034
    IDL                                    238           3205              0          18852
    XML                                     40           1365            690          16902
    JSON                                    24              7              0           5367
    DTD                                    180            772           1360           5344
    Python                                  24            893           2422           3740
    NAnt script                            118            489              0           2512
    Objective C++                            5            461            163           2231
    HTML                                    62            178             22           1666
    XHTML                                   14            186             98           1096
    INI                                     28             46             12            687
    Windows Module Definition                7             24            156            354
    LESS                                     1             33             52            183
    make                                     4             36             22            133
    TOML                                     1             17              7            110
    Freemarker Template                      6             24              0             98
    WiX source                               1             11             25             71
    Ant                                      1              6              5             49
    Markdown                                 1             10              0             49
    Bourne Shell                             3              8             11             23
    Windows Resource File                    2              6             11             15
    ---------------------------------------------------------------------------------------
    SUM:                                  2992         103445         115231         546849
    ---------------------------------------------------------------------------------------


You forgot db/mork, which is another ~100K-ish LOC (at least as measured by wc -l).


Oops! I'm not actually familiar with the Thunderbird source's organization, so I just went by what was marked as owned by Thunderbird in that wiki page I linked.


In practice, Thunderbird is all of comm-central sans suite/ and chat/. calendar/ used to be Sunbird [a standalone calendar client], but those people decided to channel all of their resources into Lightning instead, so all of the Sunbird-specific stuff was ripped out.

Lightning is strictly speaking an independent project from Thunderbird, but it is far and away the most-used extension in Thunderbird and parts of it (particularly the backend) have essentially moved into the TB distribution for various policy reasons. There's some other stuff that's basically build system, release engineering, or testing gunk, but that stuff is mostly Python anyways and won't impact the SLOC metrics too badly.


Mere line count does not tell a truth, simply because you can do more thing with a SLoC in a language than another, also sometime to be on certain platform you need an enormous amount of code only for them that's have no other purpose that boilerplate for a platform.

Too simplistic :-)


Most of the backend is written in C++. This is the mail protocol suite, the message database store logic, most of the internal account glue stuff, and even the bits that drive the main message listing (although that's moving to JS because Mozilla is killing off nsITreeView, a move which I fear for the performance implications of). The parts that are in JS are most of the code that drives the actual display. Of the MVC for the display, essentially the main model and view are both implemented in C++ whereas the controller is JS.

The largest pieces of the backend that are in JS are the RSS functionality and gloda (one of the search backends), as well as half of the MIME parser.


is there a node_modules directory that didn't get ignored?


Thunderbird is a XUL implementation with a lot of JavaScript being used for its UI. It's as close as you can get to being the Electron of Firefox without being in a PPA.

The most recent version (Thunderbird 60) introduced sweeping UI changes that went much deeper than even Chrome 69's.


There is a big difference between using an object model designed for UIs and using the DOM or canvas, even with the same language (JS). An appropriate model can vastly simplify and accelerate layout and painting. I'm thinking of QML here - the performance situation is probably similar with XUL, ugly as it may be.


A total rewrite almost sank Netscape[1] long ago. It's still generally a bad idea.

There's an electron based mail client called Mailspring[2], and having used it for a few months, I definitely understand the antipathy towards electron. You might like it.

[1]: https://www.joelonsoftware.com/2000/04/06/things-you-should-... [2]: https://getmailspring.com/


Huge rewrites of firefox are saving it today. Seems like the best way is to rewrite in chunks allowing you to use new bits in the existing application.


Incremental rewrites. The netscape rewrite was started from scratch, IIRC.


It's incredible how much this still holds true today. Thanks @spolsky!


Thunderbird still has a critical bug open that literally deletes your email. I have been bitten by it once and lost hundreds of email permanently. Not fun. I am subscribed to the ticket and every month or so someone posts an outraged "me too".

https://bugzilla.mozilla.org/show_bug.cgi?id=462156


https://bugzilla.mozilla.org/show_bug.cgi?id=462156#c141: "This bug has lasted this long because there is no reproducible test case, so thus no way for an engineer to diagnose the problem and test a patch."

I sympathize, but I'm not sure what you expect the team to do. The bug seems highly intermittent even when it does occur and there doesn't seem to be anything in common between the systems that are affected.


Normal troubleshooting for intermittent issues is to add logging and diagnostics around possible areas it's happening and have users send in traces when it bites them again.


Sure, if you have some idea what the set of "possible areas" are. If you read the comments, it's possible there are several multiple overlapping bugs. And I don't see a whole lot of traces from those afflicted.

I agree such bugs are at best obnoxious and at worst cataclysmic. But having been on the receiving end of such nebulous intermittent reports myself, I'm not going to simply conclude the team is incompetent or uninterested.


Got biten by this bug. One time after more than a decade of Thunderbird use.

The mails were still on the server but having to create a new profile and redownload everything and retrain the spam filter was not fun.

It is not what I'd call an intermittent issue: it is a black swan. Happens very rarely but with huge consequences for the user. If it happens a second time thunderbird is being uninstalled and put on a blacklist of software to avoid.


> I sympathize, but I'm not sure what you expect the team to do.

i mean, as a user this would suggest that the product is outright not fit for purpose.

i would expect the team to include a clear and obvious warning on the homepage (preferably near the download link) that emails are subject to deletion due to this bug.


Thanks for posting this link - that's scary! There are people who have lost thousands of mails due to this bug..

I've been using Thunderbird for years and have never encountered this issue (cross fingers, knock on wood) but reading that thread makes me seriously consider whether I should migrate to another email client. Or at least have regular reliable backup.


Holy damn that's bad! The bug's been open 10 years too!


I recently discovered this add-on:

* https://addons.thunderbird.net/en-US/thunderbird/addon/tbsyn...

* https://addons.thunderbird.net/en-US/thunderbird/addon/eas-4...

An actual working atcivesync support for calendar and contacts.

With Exchange being still very pervasive in corporate environments, it's quite useful.


Oh thank you! I really wish Thunderbird would support EAS/MAPI over HTTP/EWS. They're so widely used and it's irritating to have to use the memory hog that is Evolution.


Are you sure? I'll grant you neither are particularly small but on this laptop a TB with no accounts set up uses more memory than the various Evo processes with several Exchange mailboxes open. Nothing scientific but a quick look at memory % in "glances".


Update: works really well, shame it doesn't do email at the same time, but I guess it's a WIP. Cheers!


As an aside, if using IMAP for the exchange account (as @shmerl suggests) doesn't work for you, you might have better luck with DavMail [1]. I've used it in the past before my workplace enabled IMAP access for exchange mailboxes.

[1] http://davmail.sourceforge.net/


Luckily in my case, I can use IMAP. But lack of calendar and contacts was very annoying, until I found this add-on.


I second the use of tbsync and the activesync plugins. I switched to thunderbird with these plugins after trying out the exchange support with Evolution-ews. In my unscientific observations, my memory and cpu usage was a lot higher when using evolution when compared to thunderbird. Although to be fair evolution had really nice integration with "gnome online accounts", but in the end I found thunderbird was good enough for exchange with these two plugins.


What calendar do you use? Lightning doesn't work with the latest version of Thunderbird.


Thunderbird is, hands down, my most used desktop app, if we're not counting IDEs and editors. Definitely would recommend; Thunderbird is awesome.


Honestly, I thought I liked Outlook on Windows until I gave Thunderbird a try. It's just so much faster.


Not counting browsers?


Maybe they don't surf the web all day at work.


Reference; research; testing and debugging web sites in the 5 major desktop browsers; communication and data entry apps required for work that have a horrible desktop client, or no desktop client at all; etc. There's a lot of useful, work related things browsers provide access to.


Glad to see UX on that list. Under the hood Thunderbird is incredibly powerfull, but actually using it beyond the most basic workflows is mildly painful. With competition from highly polished webmail clients with autolabeling features I find it hard to actually recommend Thunderbird to anyone unless they need PGP (which is even more painful in Thunderbird, but PGP in the cloud is a different threat model).


As a daily user my personal preference almost align with their goals. I look forward very much to the day that I can stop using mail-notification in Gnome. The Thunderbird built-in system has seemingly broken polling feature (not sure if it does anything when running minimized), and has no option to specify folders that you want fast notification when a new mail arrives. I always miss Gnome mail-notification when I am using Windows, and sometimes have my laptop running Gnome next to the Windows computer just for this purpose.

The second feature I would very much like them to work on is search. It is horrifically slow, seems to miss some mail (html only maybe?) and the result window has terrible UI. You can't preview why the search found something so either you run a more narrow search or manually go through each email it found. There is also no threading in the result window so you lose a lot of context.


Agreed. I love Thunderbird, and gave it a shot last year as my work email client (exchange). Loved almost everything, but ultimately the search and lack of threading sent me back to outlook web access.


Thanks for this great news for people hungry for good desktop alternatives for the abundant webmails. Please spend part of the effort on Lightning (the calendar add-on).


IMO the real revolution might be a decision to integrate notmuch so to move from a '90s-like UI/workflow to a modern era one so powerful that can easily outshine webmails.

Also, with a proper maildir cloning support (mbsync like for instance) it may give to the casual users the opportunity to have locally their messages.

Otherwise anything Mozilla can do can at maximum keep a zombie alive simply because of lack of less ugly widespread and generic alternatives.


It's good to hear that Thunderbird is getting more resources. One UI bug that I didn't see mentioned in the post though, and that shouldn't exist in 2019, is that Thunderbird loses the scroll position of a tab when changing tabs. I hope this will get fixed soon.


Lol, Thunderbird seemingly has plenty of major loss-of-data bugs (I lost all my archives recently; synced up to the server -- that bug seems to be several years old (but rare)).

I'd almost guarantee that your tab-scroll-position bug is fixed first. It seems to be the way of things.

Thunderbird seems incredibly janky to me (unstable and easy to break, rough around the edges). Maybe my experience is rare ... would love to see it become solid and fast.


You lost everything and it was totally gone? Or did you have a backup and restored?


Well I had a backup of sorts, domestic environment, but did lose data (yes I shouldn't have trusted it).

Still haven't managed to debug so can't use Thunderbird properly yet; changing app is a major upheaval after a decade or more [not quite continuous use, tried Kmail, Opera, and a few others like Sylpheed, Mutt(!), in the interim -- after Pine, proprietary apps TB was my first desktop MUA].

So, I need to audition new MUAs (family friendly), then recover what I can.


Mailspring? [1] Its FOSS.

[1] https://getmailspring.com


Only part of it is FOSS (the UI basically), the sync engine is closed source and using Mailspring requires creating a Mailspring account FWIW.


I wonder what's in their privacy policy. I don't mind paying but wish everyone didn't use the same semi-copy pasted privacy policies for liability reasons.

Edit: typical 'your pii is an asset we transfer when we get acquired' clause

Information Shared with Third Parties. We may share aggregated information and non-identifying information with third parties for industry research and analysis, demographic profiling and other similar purposes.

Information Disclosed in Connection with Business Transactions. Information that we collect from our users, including PII, is considered to be a business asset. Thus, if we are acquired by a third party as a result of a transaction such as a merger, acquisition or asset sale or if our assets are acquired by a third party in the event we go out of business or enter bankruptcy, some or all of our assets, including your PII, may be disclosed or transferred to a third party acquirer in connection with the transaction


Doesn't it use MailCore and SquirrelMail?


It's good to hear that people are interested in actually getting something set up to track performance metrics, but I won't believe it until I actually see it.

One thing I would add to performance metrics is that tests for very large folders (of about 1M) should be added. I was talking with someone last night who was complaining about how long it took to delete 200K messages from his inbox, so it's not a wholly implausible metric. I just worry that people are going to focus on metrics that go "oh, there's no issue with a 1K message folder since it's all within the 16ms budget" without looking to see their impact on 10K or 100K folders, which is where people really complain about performance.


Issues with large (as in message count) mailboxes is a common thing nowadays. Don't know about client side as I've been working on the server side for past few years (see https://wildduck.email/). Clients with large mailboxes cause a lot of issues both server implementation wise and operation wise. For example some widely used IMAP server software dies if an IMAP client tries to SELECT a maildir folder with >320k messages (every message in the folder yields in some file system calls while SELECTing, it takes some time and then the process that handles the client connection just crashes due to some overflow or whatever). Also there's older versions of Outlook (eg. 2010) that tend to sync state by FETCHing FLAGS of all messages in all folders every X minute and causing huge amounts of traffic and so on.


I'm not terribly surprised. It's easy to forget that mailboxes are actually databases, and at the scale of GB databases, you're going to start stealing ideas from the database community on how to manage databases rather than relying on the filesystem to act as a database for you.

Thunderbird itself does a nastily poor job of scaling to massive folders, since it assumes that it can do UI-thread-synchronous operations like "get a list of every message in the database." (And fixing it is hard... as I have way too much experience with).


Really good to see Thunderbird getting some attention and a dedicated development team. I have to use Microsoft Exchange at work and Thunderbird (i'm on version 60) with a couple of plugins, has been the client that has worked best for me on linux.


I use Thunderbird pretty much just for FiltaQuilla extension, which runs shell commands when email matching some filter arrives. It would be nice to have this functionality built-in and extended (e.g. email data could be passed to stdin).

The biggest drawbacks is overall slowness (especially when syncing with server) and search UI (which really needs to be condensed). BTW it would be nice to have option to search for all mails involving some address by just right-clicking the address, like in Mailspring.


First of all I’m very happy to see a community-driven Thunderbird that’s still alive and kicking. I used Thunderbird before and I can see myself returning to it.

Now I'm on MacOS and I use MailMate, see: https://freron.com/

I wish Thunderbird would be more like it. It's simple, fast, uses Markdown in its editor, has nice keyboard shortcuts, plays well with Gmail's labels, has smart filters and works well with multiple accounts and aliases.

Seeing some of the comments, I’m surprised to see people putting emphasis on Thunderbird’s calendar or missing CardDav support. Well, MailMate provides no such support.

I.e. for calendars I simply use Apple’s Calendar, for contacts I use Apple’s Contacts. I don’t need my email client to handle these.

That Thunderbird can do it, that’s cool, but I think Thunderbird has problems in handling email that should be fixed first. And I’m glad to see them invest in better Gmail support. I don’t even use Gmail as my personal account, but in this day and age it’s a must and the features (like labels) will prove handy for other email providers too.


I just switched away from Thunderbird after I found out about a long standing bug where the search index may not be updated sometimes, resulting in some emails not being discoverable with search.

Not able to find emails in my email client is a 100% deal breaker.

Back to Outlook I go. It's search isn't perfect, but at least emails show up eventually.


Not really a good reason for switching. Make sure you regularly rebuild your search indexes in Outlook because I have several helpdesk calls that were fixed that way (partial results, last seen in OL 2016) ...


I actually like Thunderbird since when I discovered MRC Compose extension[0] which provides a UI similar to Outlook in the To, CC and BCC fields. Having to input one by one the email addresses is troublesome in my use case (lots of addresses to manipulate when replying). It's a pity it isn't a default behaviour.

[0] https://addons.thunderbird.net/en-US/thunderbird/addon/mrc-c...


I wonder if Mozilla evaluates hiring teams in areas with lower avg income but still reasonable quality of CS education like Eastern Europe, Russia, etc. to get faster product development for the same donations.


Every time I am excited to try Thunderbird I am sent packing because of all the features that are barely implemented or don't work well.

The practice of having plugins do core functionality is just not a good idea. Things that 90% of the users use should ship in the product.

For instance, cloud Exchange support is lacking. I couldn't even login to my work account, while other clients (Windows Mail, iOS, Outlook, etc...) have no issues whatsoever.

The calendar is just awful. The contacts is completely bare bones.

Here is hoping the new folks breathe some life into it.


Is anyone successfully using Thunderbird with Google calendar? I gave up on it a couple years ago and just use the website, but I'd love to use it again if possible. I honestly can't remember what issues I had, but I do remember near the end I was using it as a view only feature, but for actually stating hangouts or creating new meetings I still had to use the website anyway.


It's working OK for me (via the Provider for Google Calendar add-on), though I haven't tried starting hangouts.


yes, daily


An email client that doesn't have a mobile companion app is an immediate thumbs down for me. I want a consistent experience for something as important as email, whether I'm on a laptop or on my phone.

Sigh. That probably means Thunderbird mobile is going to take till... 2021? 2022?


Could you say more about why that is?

For me it's like a Swiss Army knife versus my full kitchen. I use a basic email client on my phone for on-the-go stuff (seeing what has come in, making quick replies). But for doing anything serious, I want a full keyboard and reasonable screen real estate. I don't think it's possible to have a particularly consistent experience, so I'm fine with using a different client on my phone.


I like special features of AirMail, for instance, where you can snooze certain emails. If they only had a desktop client, then I can't snooze on the go on my phone. And now I have to context switch and remember to delay certain tasks to when I get to my laptop.

Email clients also sometimes impose some level of formatting, and I'd like that to be consistent across mobile/web as well


I'm still on Thunderbird 52 because the upgrade to 60 ruined my calendar. I hope the next ESR version works better. :-/

I don't even use Thunderbird for email anymore, so I guess what I really want is a standalone calendaring application that I can migrate to.


I have a couple family members that were heavy Thunderbird users. They recently switched off it because it was chewing up CPU when in the backgound, and the spam filtering doesn't really work. Glad to hear they are getting some more engineers.


Amazing how they are working on speed when thunderbird is about 20x faster than gmail


one thing I'm really hoping for is more support for calendars. I see no way to view / change the color of events. while I can add them to categories, it is much easier for me to color code them.


[flagged]


Why is this dumb comment on every Mozilla post? It's starting to sound like FUD. Especially when the alternative is a browser engine whose development is dictated by an advertising company.


User was created today, probably just to make the dumb comment.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: