How to build docs and how to contribute documentation
I have mailman 3 working with sendmail (FreeBSD system) and when I was setting this up I found the "Sendmail" section of the docs to be somewhat thin:
https://docs.mailman3.org/projects/mailman/en/latest/src/mailman/docs/mta.ht...
It points to two different versions of the mailertable hack:
https://gist.github.com/Maeglin73/72eb5b1e4ee66a383c2aa454726be9a5
https://gitlab.com/mailman/mailman/-/work_items/307#note_632495542
I got a version of this to work but was not satisfied because it required hacking either mailman or sendmail config to cleanup the domain in the recipient address.
Eventually I realized that "mailman inject" could be use in very similar way to how mailman 2 lists work with sendmail (alias pipe to a command). This provides a path to submit messages without using LMTP.
First, how does one build the mailman 3 documentation? I am mildly experienced with sphinx so the actual changes are not an issue. But I was only able to build mailman-suite-doc documentation; it wasn't obvious to me now to build docs for mailman core (let alone an of the other pages I find on docs.mailman3.org).
Next, how are code and documentation contributions submitted for consideration? I'm a lot more familiar with github than gitlab and know how to fork but it didn't look like I would be able to submit a pull request.
Craig
Craig Leres via Mailman-users writes:
I got a version of this to work but was not satisfied because it required hacking either mailman or sendmail config to cleanup the domain in the recipient address.
You're talking about the ".private" extension on the domain? I think you can just put that in the "alternate domain" attribute. Postfix sometimes requires a similar dummy domain, so it's documented in the Postfix section of mta.rst.
First, how does one build the mailman 3 documentation?
Thanks for stepping up on this! I imagine Sendmail configuration has been something of a pain point for *BSDs.
For Mailman core, "tox run -e docs". I suppose it's similar for other modules if there is a configuration for tox there. We would like to move away from tox, I think, but it's a huge amount of configuration, including a certain number of packages that need to be available to sphinx. And there's a lot of muscle memory built up now. ;-)
Next, how are code and documentation contributions submitted for consideration? I'm a lot more familiar with github than gitlab and know how to fork but it didn't look like I would be able to submit a pull request.
We ask that you write a NEWS item (docs/NEWS.rst), and include that in the MR. Add "(:mr:42)" at the end, for value of "42" = the merge request number assigned by GitLab. Just a one-liner saying docs for Sendmail configuration were added is fine.
Once you've forked from gitlab.com/mailman/mailman, in your own fork you find the "merge requests" item in the sidebar. That should take you to your merge requests. I gather from your question you have none yet, so you should see a empty page with a "create merge request" button in the middle.
GitLab has been experimenting with alternative UIs recently, so you may not see a sidebar, etc. If so, tell me what you do see, I'll try to help out.
-- GNU Mailman consultant (installation, migration, customization) Sirius Open Source https://www.siriusopensource.com/ Software systems consulting in Europe, North America, and Japan
On 5/1/26 09:18, Stephen J. Turnbull wrote:
Craig Leres via Mailman-users writes:
I got a version of this to work but was not satisfied because it required hacking either mailman or sendmail config to cleanup the domain in the recipient address.
You're talking about the ".private" extension on the domain? I think you can just put that in the "alternate domain" attribute. Postfix sometimes requires a similar dummy domain, so it's documented in the Postfix section of mta.rst.
That works great, thanks!
Next, how are code and documentation contributions submitted for consideration? I'm a lot more familiar with github than gitlab and know how to fork but it didn't look like I would be able to submit a pull request.
We ask that you write a NEWS item (docs/NEWS.rst), and include that in the MR. Add "(:mr:42)" at the end, for value of "42" = the merge request number assigned by GitLab. Just a one-liner saying docs for Sendmail configuration were added is fine.
I don't quite understand this step. My mr is 1496 and the "docs" pipeline seems happy. Do I add a commit to the mr I just created and add something to src/mailman/docs/NEWS.rst? I would guess under "3.3.11" in the "Other" section?
Once you've forked from gitlab.com/mailman/mailman, in your own fork you find the "merge requests" item in the sidebar. That should take you to your merge requests. I gather from your question you have none yet, so you should see a empty page with a "create merge request" button in the middle.
(As with github) gitlab noticed when I pushed a commit to my fork and gave me a button to create the merge request.
Craig
On 5/5/26 15:37, Craig Leres via Mailman-users wrote:
On 5/1/26 09:18, Stephen J. Turnbull wrote:
We ask that you write a NEWS item (docs/NEWS.rst), and include that in the MR. Add "(:mr:42)" at the end, for value of "42" = the merge request number assigned by GitLab. Just a one-liner saying docs for Sendmail configuration were added is fine.
I don't quite understand this step. My mr is 1496 and the "docs" pipeline seems happy. Do I add a commit to the mr I just created and add something to src/mailman/docs/NEWS.rst? I would guess under "3.3.11" in the "Other" section?
Yes, adding the item in the 3.3.11 Other section is appropriate. The reference would be (:mr:1496)
-- Mark Sapiro <mark@msapiro.net> The highway is for gamblers, San Francisco Bay Area, California better use your sense - B. Dylan
participants (3)
-
mailman26@xse.com -
Mark Sapiro -
Stephen J. Turnbull