Re: [Virtual PATCH] Add an option to wrap a patch in <pre> in git-imap-send which ironically results in a cleaner patch from Thunderbird.
From: Ben Bucksch <hidden>
Date: 2016-06-15 22:46:10
I do not think of a reason, why any sane user would want to send a patch as HTML.
The patch is not sent as HTML. It is merely passed to the mailer as HTML. The "reason" is that HTML allows more information: It allows to separate human language text from preformatted text / source code. Human language text follows other rules in some (I'll call them "more capable", to be just as advocating) mailers than others: text flow / wrapping, link and quote recognition etc.pp. all make sense for human language text / normal emails, but not for source code. Plain text is inherently limited in which information it can convey (no links, no quotes, no flow etc.pp.). For more information, see the long email thread that preceeded. I don't feel like repeating it.
This configuration variable sounds more like "imap.forceThunderbirdToSendNonFlowedTextByExploitingItsBug" than "imap.html", in other words.
I agree that "html" is not a good wording, given the immediate disgust that it invokes with many people in the community. (Which is partially warranted, and partially irrational.) I'd propose a less inflammatory wording (and posts): imap.preformatted imap.thunderbird (The first is better, because other mailers might have the same problem, now or in the future, and might benefit from the same workaround).
What worries me the most is if there is any guarantee that this bug you are exploiting
FWIW, it's not a bug that he's exploiting. mailto:foo@example.com?subject=""&html-body="" is a feature (not sure if documented).
_will not be fixed_ in future versions of Thunderbird.
What you see is not a bug in Thunderbird.
I see your patch deals only with ampersand, less-than, greater-than and dquot. Do you know if this is enough
Yes, this is enough to escape literals in HTML code.
or would letters outside US-ASCII need to be expressed in ampersand-hash "character reference" notation?
If so, this this was a bug before and after the patch. What matters for non-ascii is the charset, and that's the same problem for plaintext and HTML. You'll just have to set the right charset header, and I think he does that.