From 2237783f75aebb9e17deba5e4f66c54bfc679537 Mon Sep 17 00:00:00 2001 From: sapols Date: Tue, 2 Dec 2025 14:43:33 -0700 Subject: [PATCH 1/4] Add PHEP 3: table entry, blog post, support subpage --- _data/pheps.yml | 14 ++++++++++++ _pages/docs/phep-3-support-schedule.md | 12 ++++++++++ _pages/docs/pheps.md | 8 +++++++ .../2025-12-02-phep-3-announcement.markdown | 21 ++++++++++++++++++ img/page_images/phep3-gantt.jpg | Bin 0 -> 153679 bytes 5 files changed, 55 insertions(+) create mode 100644 _pages/docs/phep-3-support-schedule.md create mode 100644 _posts/2025-12-02-phep-3-announcement.markdown create mode 100644 img/page_images/phep3-gantt.jpg diff --git a/_data/pheps.yml b/_data/pheps.yml index dc2fed5..1673125 100644 --- a/_data/pheps.yml +++ b/_data/pheps.yml @@ -28,3 +28,17 @@ Status: Final Title: PHEP Template Type: Informational +- Author: Shawn Polson + Content-Type: text/markdown; charset="UTF-8"; variant="CommonMark" + Created: 06-Jun-2024 + DOI: 10.5281/zenodo.17794207 + Discussions-To: https://github.com/heliophysicsPy/standards/pull/29 + Filename: phep-0003.md + PHEP: 3 + Post-History: 06-Jun-2024, 11-Jun-2024, 02-Jul-2024, 17-Jul-2024, 23-Jul-2024, 05-Sep-2024, + 09-Sep-2024, 28-Oct-2025, 02-Dec-2025 + Resolution: https://doi.org/10.5281/zenodo.15080483, https://github.com/heliophysicsPy/standards/pull/29 + Revision: 1 + Status: Final + Title: PyHC Python & Upstream Package Support Policy + Type: Standards Track diff --git a/_pages/docs/phep-3-support-schedule.md b/_pages/docs/phep-3-support-schedule.md new file mode 100644 index 0000000..cdf5bdc --- /dev/null +++ b/_pages/docs/phep-3-support-schedule.md @@ -0,0 +1,12 @@ +--- +layout: page +title: PHEP 3 Support Schedule +permalink: /docs/pheps/phep-3-support-schedule/ +exclude: true +--- + +TODO. + +Per PHEP 3's "How to Teach This" section: +- The PyHC Tech Lead will maintain a new web page on the PyHC website detailing the support policy and include a graphical timeline of the schedule (similar to the Gantt chart above). + - Automated email reminders will be sent via the PyHC mailing list quarterly and near important drop/support dates to remind package maintainers of the schedule. diff --git a/_pages/docs/pheps.md b/_pages/docs/pheps.md index c80b6c6..4f13efc 100644 --- a/_pages/docs/pheps.md +++ b/_pages/docs/pheps.md @@ -29,3 +29,11 @@ PyHC Enhancement Proposals are developed via the + +PyHC has formally adopted **[PHEP 3: PyHC Python & Upstream Package Support Policy](https://github.com/heliophysicsPy/standards/blob/main/pheps/phep-0003.md)**! This new PHEP establishes a unified, time-based approach to dependency support across the PyHC ecosystem, bringing our community into alignment with the broader Scientific Python ecosystem. + +PHEP 3 recommends that all PyHC packages adopt the following support policy, based on [SPEC 0](https://scientific-python.org/specs/spec-0000/): + +- **Support Python versions for 36 months** (3 years) after their initial release +- **Support core Scientific Python packages for 24 months** (2 years) after their initial release +- **Adopt new versions within 6 months** of their release + +This policy applies to Python itself and to the upstream [core Scientific Python packages](https://scientific-python.org/specs/core-projects/): NumPy, SciPy, Matplotlib, pandas, scikit-image, NetworkX, scikit-learn, xarray, IPython, and Zarr. + +PHEP 3 replaces the previous PyHC standard #11, which simply mandated Python 3 support. This new standard provides clear, predictable timelines for both adopting new dependency versions and dropping support for older ones—giving package maintainers and users alike a reliable roadmap for dependency management. + +To learn more, read **[the full PHEP 3 document](https://github.com/heliophysicsPy/standards/blob/main/pheps/phep-0003.md)**. We will also maintain a [PHEP 3 Support Schedule page](/docs/pheps/phep-3-support-schedule/) with a graphical timeline and quarterly reminders to help package maintainers stay on track. Questions or feedback? Join the discussion on [PyHC's mailing list or Slack](/contact)! diff --git a/img/page_images/phep3-gantt.jpg b/img/page_images/phep3-gantt.jpg new file mode 100644 index 0000000000000000000000000000000000000000..88c20c5f7f97a338dcc325078d18154c6a250a13 GIT binary patch literal 153679 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 Date: Tue, 2 Dec 2025 14:45:23 -0700 Subject: [PATCH 2/4] Trim text --- _posts/2025-12-02-phep-3-announcement.markdown | 2 -- 1 file changed, 2 deletions(-) diff --git a/_posts/2025-12-02-phep-3-announcement.markdown b/_posts/2025-12-02-phep-3-announcement.markdown index 6229338..e25f95d 100644 --- a/_posts/2025-12-02-phep-3-announcement.markdown +++ b/_posts/2025-12-02-phep-3-announcement.markdown @@ -16,6 +16,4 @@ PHEP 3 recommends that all PyHC packages adopt the following support policy, bas This policy applies to Python itself and to the upstream [core Scientific Python packages](https://scientific-python.org/specs/core-projects/): NumPy, SciPy, Matplotlib, pandas, scikit-image, NetworkX, scikit-learn, xarray, IPython, and Zarr. -PHEP 3 replaces the previous PyHC standard #11, which simply mandated Python 3 support. This new standard provides clear, predictable timelines for both adopting new dependency versions and dropping support for older ones—giving package maintainers and users alike a reliable roadmap for dependency management. - To learn more, read **[the full PHEP 3 document](https://github.com/heliophysicsPy/standards/blob/main/pheps/phep-0003.md)**. We will also maintain a [PHEP 3 Support Schedule page](/docs/pheps/phep-3-support-schedule/) with a graphical timeline and quarterly reminders to help package maintainers stay on track. Questions or feedback? Join the discussion on [PyHC's mailing list or Slack](/contact)! From 6c7dc1ccad96ce345aa601de08b275bd6b3944fb Mon Sep 17 00:00:00 2001 From: sapols Date: Thu, 8 Jan 2026 14:04:45 -0700 Subject: [PATCH 3/4] Reflect PHEP 3 in grading guidelines & review template --- _pyhc_projects/package_review_template.md | 4 ++-- _pyhc_projects/pyhc_project_grading_guidelines.md | 12 ++++++------ 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/_pyhc_projects/package_review_template.md b/_pyhc_projects/package_review_template.md index 7796866..058d62a 100644 --- a/_pyhc_projects/package_review_template.md +++ b/_pyhc_projects/package_review_template.md @@ -31,8 +31,8 @@ This is based on the [PyHC Project Review Guidelines](https://github.com/helioph - [ ] Project imports the minimum number of packages necessary [[10](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] - [ ] Binary files are added to the package repository only when necessary [[14](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] -**5. Python 3** -- [ ] Package is compatible with python 3 [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] +**5. PHEP 3 (Python & Upstream Package Support)** +- [ ] Package supports Python versions and upstream packages per [PHEP 3](https://doi.org/10.5281/zenodo.17794207) [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] **6. License** - [ ] Project has a license [[5](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] diff --git a/_pyhc_projects/pyhc_project_grading_guidelines.md b/_pyhc_projects/pyhc_project_grading_guidelines.md index 6b0057e..1c0c168 100644 --- a/_pyhc_projects/pyhc_project_grading_guidelines.md +++ b/_pyhc_projects/pyhc_project_grading_guidelines.md @@ -38,7 +38,7 @@ The six standards against which we assess a project are the following: * Documentation * Testing * Software Maturity -* Python3 +* PHEP 3 (Python & Upstream Package Support) * License An explanation of each standard (and sub-standards therein) are defined in the [PyHC Community Standards](https://github.com/heliophysicsPy/standards/blob/main/standards.md) @@ -135,22 +135,22 @@ See the [PyHC Community Standards, points 1, 3, 4, 6, 7, 10, and 14](https://git -### Python3 +### PHEP 3 (Python & Upstream Package Support) -This deals with a project's compatibility with Python 3. See the [PyHC Community Standards, point 11](https://github.com/heliophysicsPy/standards/blob/main/standards.md) +This deals with a project's support for Python versions and upstream Scientific Python packages per [PHEP 3](https://doi.org/10.5281/zenodo.17794207). See the [PyHC Community Standards, point 11](https://github.com/heliophysicsPy/standards/blob/main/standards.md). - + - + - +
Requires improvementPackage is not compatible with Python 3, nor does it appear to be working towards that goal.Package does not support Python versions or upstream packages within the required timeframes, with no plan to update.
Partially metProject is working towards being compatible with Python 3.Package supports most required Python versions and upstream packages, but may be missing support for some recent releases or still depends on versions older than allowed.
GreenProject is compatible with Python 3.Package supports all Python versions released within the last 36 months, upstream packages released within the last 24 months, and adopts new versions within 6 months of release.
From 6b5713debbfb7f4bd5994b7cf0b9f7b341c57c15 Mon Sep 17 00:00:00 2001 From: sapols Date: Thu, 8 Jan 2026 14:13:27 -0700 Subject: [PATCH 4/4] Expand PHEP 3 bullet --- _pyhc_projects/package_review_template.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/_pyhc_projects/package_review_template.md b/_pyhc_projects/package_review_template.md index 058d62a..cb304be 100644 --- a/_pyhc_projects/package_review_template.md +++ b/_pyhc_projects/package_review_template.md @@ -32,7 +32,9 @@ This is based on the [PyHC Project Review Guidelines](https://github.com/helioph - [ ] Binary files are added to the package repository only when necessary [[14](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] **5. PHEP 3 (Python & Upstream Package Support)** -- [ ] Package supports Python versions and upstream packages per [PHEP 3](https://doi.org/10.5281/zenodo.17794207) [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] +- [ ] Package supports Python versions released within the last 36 months [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] +- [ ] Package supports upstream core Scientific Python packages released within the last 24 months [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] +- [ ] Package supports new dependency versions within 6 months of their release [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)] **6. License** - [ ] Project has a license [[5](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]