Files
hdf5/.github/CODEOWNERS
T
Scot Breitenfeld f3e380ce17 Add per-area review checklist action and restructure CODEOWNERS (#6418)
* Add per-area review checklist action and restructure CODEOWNERS

CODEOWNERS:
- Replace 11-person global catch-all with specific path rules per area,
  assigning reviewers based on their actual strengths
- Global fallback is now @fortnern only for uncovered root files
- Remove @derobins, @epourmal, @qkoziol, @mkitti per team discussion

review-checklist GitHub Action (.github/workflows/review-checklist.yml):
- Posts a per-area sign-off checklist on every PR to develop (non-forks only)
- Reviewer lists and path patterns derived directly from CODEOWNERS
- Assigns ONE reviewer per area using fewest-open-PRs load balancing
- Complex changes (≥ 300 lines or any public/developer header modified)
  always go to the first (senior) owner listed; routine changes are
  load-balanced across all owners (500-line threshold for test/)
- Cohesion: reuses an already-assigned reviewer for related areas where
  owner lists overlap, avoiding e.g. src/ and test/ going to different people
- Skips auto-assign if an area owner is already manually requested
- Checklist auto-checks when an owner approves; tracks latest review state
  so a subsequent "request changes" unchecks the box

The previous regex only matched *public.h and *develop.h, missing hdf5.h
itself (the umbrella header), all VFD driver headers included by hdf5.h
(H5FDcore.h, H5FDmpio.h, H5FDsubfiling.h, etc.), and VOL connector headers
(H5VLconnector.h, H5VLnative.h, etc.).  Changes to any of these now
correctly trigger senior-owner assignment.
2026-06-04 16:21:53 -05:00

49 lines
3.4 KiB
Plaintext

# Lines starting with '#' are comments.
# Each line is a file pattern followed by one or more owners.
# Last matching pattern takes the most precedence.
# Global fallback — fires only for files not covered by a more specific rule
# below. Keep this list small; add specific path rules instead of expanding it.
* @jhendersonHDF
# ── Language bindings ─────────────────────────────────────────────────────────
/fortran/ @brtnfld @bmribler
/java/ @jhendersonHDF @mattjala
/c++/ @bmribler @glennsong09
# ── Core C library ────────────────────────────────────────────────────────────
/src/ @fortnern @jhendersonHDF @mattjala @vchoi-hdfgroup @glennsong09
/src/H5FDsubfiling/ @jhendersonHDF @brtnfld @fortnern
/utils/ @brtnfld @mattjala @jhendersonHDF @bmribler
# ── Tests ─────────────────────────────────────────────────────────────────────
/test/ @fortnern @jhendersonHDF @mattjala @vchoi-hdfgroup @glennsong09
/testpar/ @jhendersonHDF @fortnern @mattjala @brtnfld
# ── High-level API ────────────────────────────────────────────────────────────
/hl/ @brtnfld @mattjala
# ── Tools ─────────────────────────────────────────────────────────────────────
/tools/ @jhendersonHDF @mattjala @bmribler
# ── Examples ──────────────────────────────────────────────────────────────────
/HDF5Examples/ @brtnfld @jhendersonHDF @mattjala @vchoi-hdfgroup @glennsong09
# ── Build system ──────────────────────────────────────────────────────────────
/CMakeLists.txt @jhendersonHDF @mattjala @lrknox
/CMakePresets.json @jhendersonHDF @mattjala @lrknox
*.cmake @jhendersonHDF @mattjala @lrknox
/config/ @jhendersonHDF @mattjala @lrknox
# ── Documentation ─────────────────────────────────────────────────────────────
/docs/ @brtnfld @gheber @vchoi-hdfgroup @glennsong09 @lrknox
/docs/INSTALL* @lrknox @hyoklee
/release_docs/ @lrknox @hyoklee @glennsong09
# ── CI / GitHub Actions ───────────────────────────────────────────────────────
/.github/ @hyoklee @lrknox @jhendersonHDF @glennsong09
# The HDF Group website verification — must stay in sync with hdfgroup.org
/.github/.well-known @lkurz @lrknox