Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions _data/pheps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,3 +28,17 @@
Status: Final
Title: PHEP Template
Type: Informational
- Author: Shawn Polson <pyhc-confidential@lasp.colorado.edu> <https://orcid.org/0000-0003-0619-5745>
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
12 changes: 12 additions & 0 deletions _pages/docs/phep-3-support-schedule.md
Original file line number Diff line number Diff line change
@@ -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.
8 changes: 8 additions & 0 deletions _pages/docs/pheps.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,11 @@ PyHC Enhancement Proposals are developed via the <a href="https://github.com/hel
</p>
{% assign id = 2 %}
{% include phep_table.html sorted_pheps=sorted_pheps table_id=id %}

<br>

<h3>Subpages</h3>
<p>
These subpages provide additional content for accepted PHEPs.
</p>
- [PHEP 3 Support Schedule](/docs/pheps/phep-3-support-schedule/)
19 changes: 19 additions & 0 deletions _posts/2025-12-02-phep-3-announcement.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
layout: post
title: "Announcing PHEP 3"
author: sapols
---

<img src="/../img/page_images/phep3-gantt.jpg" alt="PHEP 3 Support Window" style="display: block; margin-left: auto; margin-right: auto; width: 60%">

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.

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)!
6 changes: 4 additions & 2 deletions _pyhc_projects/package_review_template.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,10 @@ 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 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)]
Expand Down
12 changes: 6 additions & 6 deletions _pyhc_projects/pyhc_project_grading_guidelines.md
Original file line number Diff line number Diff line change
Expand Up @@ -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)
Expand Down Expand Up @@ -135,22 +135,22 @@ See the [PyHC Community Standards, points 1, 3, 4, 6, 7, 10, and 14](https://git
</tr>
</table>

### 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).

<table>
<tr>
<td><img src="https://img.shields.io/badge/Requires%20improvement-red.svg" alt="Requires improvement"></td>
<td>Package is not compatible with Python 3, nor does it appear to be working towards that goal.</td>
<td>Package does not support Python versions or upstream packages within the required timeframes, with no plan to update.</td>
</tr>
<tr>
<td><img src="https://img.shields.io/badge/Partially%20met-orange.svg" alt="Partially met"></td>
<td>Project is working towards being compatible with Python 3.</td>
<td>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.</td>
</tr>
<tr>
<td><img src="https://img.shields.io/badge/Green-brightgreen.svg" alt="Green"></td>
<td>Project is compatible with Python 3.</td>
<td>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.</td>
</tr>
</table>

Expand Down
Binary file added img/page_images/phep3-gantt.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.