[GSoC 2026] Question regarding generic template fallback support in Mailman Core
Dear Mailman Developers,
I hope you are doing well.
I am currently contributing to Postorius and working on a merge request related to improving documentation for template fallback behavior (MR link: https://gitlab.com/mailman/postorius/-/merge_requests/1063).
While implementing this, I added support for displaying list:member:generic:header and list:member:generic:footer in the UI, assuming these are valid fallback templates used by Mailman Core.
However, the CI pipeline is failing during tests that attempt to create these templates via Mailman Core, which suggests that these template names may not be recognized or supported.
I wanted to clarify:
Does Mailman Core officially support list:member:generic:* templates as valid template names?
If yes, is there any additional configuration required to make them available?
If not, should Postorius only reference them in documentation (as fallback behavior) without exposing them as selectable templates?
I want to ensure that the implementation aligns correctly with Mailman Core behavior before proceeding further.
Thank you for your time and guidance.
Best regards, Sumit Goyal
sumit goyal via Mailman-Developers writes:
While implementing this, I added support for displaying list:member:generic:header and list:member:generic:footer in the UI, assuming these are valid fallback templates used by Mailman Core.
grep -r is your friend. You also need to know that Mailman doesn't provide for new templates; the template names are more or less hardcoded into the workflow's code. There is no provision to register more.
You will discover that all references to "list:member:generic" are to
"list:member:generic:footer". ../interfaces/template.py will show
you how it is used. There are several dozen references in the gettext
message catalogs, so you likely want to pipe through "grep -vF /messages/".
However, the CI pipeline is failing during tests that attempt to create these templates via Mailman Core,
I'm not sure why an attempt to create "list:member:generic:header" would fail, but "list:member:generic:footer" already exists, so an attempt to create it would likely violate a database uniqueness constraint.
For the convenience of reviewers, you should including links (not screenshots) to the errors reported on GitLab.
If not, should Postorius only reference them in documentation (as fallback behavior) without exposing them as selectable templates?
I'm not sure how the selectable templates are added to the database, which is where Postorius would find them. (Postorius would not know where they are in the file system because the suite is designed so that Postorius and HyperKitty can be hosted on different nodes from Mailman core.)
If you are working on this for the GSoC qualifying MR, I recommend that you do the documentation patch first, then work on the menu item issue.
-- GNU Mailman consultant (installation, migration, customization) Sirius Open Source https://www.siriusopensource.com/ Software systems consulting in Europe, North America, and Japan
participants (2)
-
Stephen J. Turnbull -
sumit goyal