|
| 1 | +.. _maintainer-guide: |
| 2 | + |
| 3 | +Maintainer guide |
| 4 | +================ |
| 5 | + |
| 6 | +Maintainers ensure that the project remains reliable, sustainable, and aligned |
| 7 | +with :ref:`its mission<CHARTER>`. Maintainers oversee contributions, manage |
| 8 | +releases, guide contributors, and uphold project standards. |
| 9 | + |
| 10 | +Maintainers are stewards of both the code-base and the community. Strive to |
| 11 | +balance technical excellence with empathy and collaboration. Core |
| 12 | +responsibilities are described below. |
| 13 | + |
| 14 | +Code stewardship |
| 15 | +---------------- |
| 16 | + |
| 17 | +* Review and merge pull requests (PRs) carefully and fairly. |
| 18 | +* Ensure that all code follows project **coding standards**, **testing**, and |
| 19 | + **documentation** requirements. |
| 20 | +* Keep the main branch in a **buildable and releasable** state. |
| 21 | +* Maintain compatibility across supported platforms (e.g., Linux, macOS, BSDs, |
| 22 | + Windows). |
| 23 | + |
| 24 | +Community management |
| 25 | +-------------------- |
| 26 | + |
| 27 | +* Engage respectfully with users and contributors via: |
| 28 | + |
| 29 | + - GitHub issues and pull requests |
| 30 | + - Mailing list and chat |
| 31 | + - HPC community events |
| 32 | + |
| 33 | +* Mentor new contributors and ensure a welcoming, inclusive culture. |
| 34 | +* Enforce and model the project’s `Code of conduct`_. |
| 35 | + |
| 36 | +.. _Code of conduct: https://github.com/envmodules/modules?tab=coc-ov-file#readme |
| 37 | + |
| 38 | +Issue and pull request triage |
| 39 | +----------------------------- |
| 40 | + |
| 41 | +* Label issues appropriately (``bug``, ``enhancement``, ``question``, etc.). |
| 42 | +* Review pull requests for: |
| 43 | + |
| 44 | + - Completeness (tests, docs) |
| 45 | + - Coding style and maintainability |
| 46 | + - Reproducibility of reported issues |
| 47 | + |
| 48 | +* Merge (rebase merging) once review and CI checks are passed. |
| 49 | + |
| 50 | +Documentation & communication |
| 51 | +----------------------------- |
| 52 | + |
| 53 | +* Keep user and developer documentation up to date. |
| 54 | +* Maintain consistency between ``README``, ``INSTALL``, and manual pages. |
| 55 | +* Communicate major changes through release notes, mailing list, chat and |
| 56 | + social media. |
| 57 | + |
| 58 | +Infrastructure & tooling |
| 59 | +------------------------ |
| 60 | + |
| 61 | +* Maintain CI pipelines and automated test coverage. |
| 62 | +* Manage GitHub Actions, Cirrus, test scripts, and build tools. |
| 63 | +* Ensure reproducibility and backward compatibility across builds. |
| 64 | + |
| 65 | +Reference materials |
| 66 | +------------------- |
| 67 | + |
| 68 | +* :ref:`CHARTER` |
| 69 | +* :ref:`GOVERNANCE` |
| 70 | +* :ref:`CONTRIBUTING` |
| 71 | +* :ref:`create-new-release` |
| 72 | +* `Security policy`_ |
| 73 | + |
| 74 | +.. _Security policy: https://github.com/envmodules/modules/security |
| 75 | + |
| 76 | +.. vim:set tabstop=2 shiftwidth=2 expandtab autoindent: |
0 commit comments