[Python-Dev] Migrate python-dev to Mailman 3?

Barry Warsaw barry at python.org
Thu Oct 26 22:11:04 EDT 2017


On Oct 26, 2017, at 10:01, Donald Stufft <donald at stufft.io> wrote:

> Pipermail is *horrible*

Pipermail also has a fatal flaw, and we have been hit by it several times in our past.  It’s fundamental to Pipermail’s design and can’t be fixed.  Fortunately, HyperKitty was designed and implemented correctly so it doesn’t suffer this flaw.

Pipermail indexes messages sequentially, and if you ever regenerate the archive from the source mbox, it’s is almost guaranteed that your messages will get different URLs.  Worse, you can’t even automate a mapping from new URLs to old URLs.  This is especially likely in archives that go back as far as python-dev does, because there was a bug back in the day where even the source mbox file got corrupted, where the separator between messages was broken.  We tried to implement a fix for that, but it’s a heuristic and it’s not perfect.

We say that Pipermail does not have “stable urls”.  Thankfully HyperKitty does!  So even if you regenerate the HyperKitty archive, your messages will end up with the same URLs.

This let’s us implement Archived-At stably, and the algorithm at [1] even lets us pre-calculate the URL, so we can even include the URL to where the message *will* be once it’s archived, even without talking to HyperKitty, or any of the other archivers that are enabled (and support the algorithm of course).

So HyperKitty is miles ahead of Pipermail in design and implementation.  Sure it’s different, but people also forget how really buggy Pipermail was for a long time.  (And trust me, you really don’t even want to look at the code. ;)

Cheers,
-Barry

[1] https://wiki.list.org/DEV/Stable%20URLs
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: Message signed with OpenPGP
URL: <http://mail.python.org/pipermail/python-dev/attachments/20171026/27cbb79d/attachment.sig>


More information about the Python-Dev mailing list