Per the WHATWG (also W3C, choose the one you like) _[Encoding](https://encoding.spec.whatwg.org/)_ Technical Recommendation, all MIME text labelled as gb2312 should be treated as gbk (and consequently, a gb18030-gbk decoder) to properly handle mixtures from the later supersets. However, Mailman does not seem to use this behavior for such admixtures and spits back the raw base64 text, as noticed in zhwp's VPT.
This issue needs to be fixed in two steps:
- Aliasing. gb2312 should at least be aliased to gbk.
- Making a "union" decoder. WHATWG's TR uses a joint decoder of gb18030 and gbk, or in more simple terms a gb18030 decoder that also understands gbk (cp936)'s single-byte euro sign (U+20AC) at 0x80.
In addition to the GB's, Mailman should probably check for more of such aliasing problems highlighted in WHATWG's TR; after all, the wild web has so much non-standard behavior that browser makers did end up writing a "how to work with nonstandard things" guide.