From cc36376166dfac01c2d981da03d91e8e5773e5fc Mon Sep 17 00:00:00 2001 From: Xavier Delaruelle Date: Thu, 16 Oct 2025 07:05:42 +0200 Subject: [PATCH] doc: add maintainer-guide Signed-off-by: Xavier Delaruelle --- .hunspell.en.dic | 5 ++ NEWS.rst | 1 + doc/source/devel/add-new-maintainer.rst | 4 +- doc/source/devel/maintainer-guide.rst | 76 +++++++++++++++++++++++++ 4 files changed, 84 insertions(+), 2 deletions(-) create mode 100644 doc/source/devel/maintainer-guide.rst diff --git a/.hunspell.en.dic b/.hunspell.en.dic index c5d3071d..8e43fa4b 100644 --- a/.hunspell.en.dic +++ b/.hunspell.en.dic @@ -1296,3 +1296,8 @@ evaluateModulefile Ebuild furo rtd +PRs +buildable +Reproducibility +rebase +reproducibility diff --git a/NEWS.rst b/NEWS.rst index 73063c29..220a20cc 100644 --- a/NEWS.rst +++ b/NEWS.rst @@ -25,6 +25,7 @@ Modules 5.6.1 (not yet released) :ref:`module(1)` man page. (fix issue #590) * Doc: add warning in :ref:`INSTALL-win` to mention :command:`ml` command name conflict with *MSVC x86 toolchain* ``ml.exe``. (fix issue #589) +* Doc: add :ref:`maintainer-guide`. .. _Furo: https://github.com/pradyunsg/furo diff --git a/doc/source/devel/add-new-maintainer.rst b/doc/source/devel/add-new-maintainer.rst index 5b0e4904..038c2d06 100644 --- a/doc/source/devel/add-new-maintainer.rst +++ b/doc/source/devel/add-new-maintainer.rst @@ -6,8 +6,8 @@ Add a new maintainer This document is a guide on how to set a new person as a maintainer for Modules project. -* Confirm they have read and understood the `Code of conduct`_ and - :ref:`Technical charter` of the project +* Confirm they have read and understood the :ref:`maintainer-guide`, `Code of + conduct`_ and :ref:`Technical charter` of the project * Add to the `maintainer GitHub's team`_ * Invite to the `modules-maintainers chat room`_ * Subscribe to the `modules-maintainers mailing-list`_ diff --git a/doc/source/devel/maintainer-guide.rst b/doc/source/devel/maintainer-guide.rst new file mode 100644 index 00000000..491bd77c --- /dev/null +++ b/doc/source/devel/maintainer-guide.rst @@ -0,0 +1,76 @@ +.. _maintainer-guide: + +Maintainer guide +================ + +Maintainers ensure that the project remains reliable, sustainable, and aligned +with :ref:`its mission`. Maintainers oversee contributions, manage +releases, guide contributors, and uphold project standards. + +Maintainers are stewards of both the code-base and the community. Strive to +balance technical excellence with empathy and collaboration. Core +responsibilities are described below. + +Code stewardship +---------------- + +* Review and merge pull requests (PRs) carefully and fairly. +* Ensure that all code follows project **coding standards**, **testing**, and + **documentation** requirements. +* Keep the main branch in a **buildable and releasable** state. +* Maintain compatibility across supported platforms (e.g., Linux, macOS, BSDs, + Windows). + +Community management +-------------------- + +* Engage respectfully with users and contributors via: + + - GitHub issues and pull requests + - Mailing list and chat + - HPC community events + +* Mentor new contributors and ensure a welcoming, inclusive culture. +* Enforce and model the project’s `Code of conduct`_. + +.. _Code of conduct: https://github.com/envmodules/modules?tab=coc-ov-file#readme + +Issue and pull request triage +----------------------------- + +* Label issues appropriately (``bug``, ``enhancement``, ``question``, etc.). +* Review pull requests for: + + - Completeness (tests, docs) + - Coding style and maintainability + - Reproducibility of reported issues + +* Merge (rebase merging) once review and CI checks are passed. + +Documentation & communication +----------------------------- + +* Keep user and developer documentation up to date. +* Maintain consistency between ``README``, ``INSTALL``, and manual pages. +* Communicate major changes through release notes, mailing list, chat and + social media. + +Infrastructure & tooling +------------------------ + +* Maintain CI pipelines and automated test coverage. +* Manage GitHub Actions, Cirrus, test scripts, and build tools. +* Ensure reproducibility and backward compatibility across builds. + +Reference materials +------------------- + +* :ref:`CHARTER` +* :ref:`GOVERNANCE` +* :ref:`CONTRIBUTING` +* :ref:`create-new-release` +* `Security policy`_ + +.. _Security policy: https://github.com/envmodules/modules/security + +.. vim:set tabstop=2 shiftwidth=2 expandtab autoindent: