Skip to content

Commit 8d35124

Browse files
authored
Add PHEP 3 to PyHC's Website (#375)
* Add PHEP 3: table entry, blog post, support subpage * Reflect PHEP 3 in grading guidelines & review template
1 parent 0557aee commit 8d35124

7 files changed

Lines changed: 63 additions & 8 deletions

File tree

_data/pheps.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,17 @@
2828
Status: Final
2929
Title: PHEP Template
3030
Type: Informational
31+
- Author: Shawn Polson <pyhc-confidential@lasp.colorado.edu> <https://orcid.org/0000-0003-0619-5745>
32+
Content-Type: text/markdown; charset="UTF-8"; variant="CommonMark"
33+
Created: 06-Jun-2024
34+
DOI: 10.5281/zenodo.17794207
35+
Discussions-To: https://github.com/heliophysicsPy/standards/pull/29
36+
Filename: phep-0003.md
37+
PHEP: 3
38+
Post-History: 06-Jun-2024, 11-Jun-2024, 02-Jul-2024, 17-Jul-2024, 23-Jul-2024, 05-Sep-2024,
39+
09-Sep-2024, 28-Oct-2025, 02-Dec-2025
40+
Resolution: https://doi.org/10.5281/zenodo.15080483, https://github.com/heliophysicsPy/standards/pull/29
41+
Revision: 1
42+
Status: Final
43+
Title: PyHC Python & Upstream Package Support Policy
44+
Type: Standards Track
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
layout: page
3+
title: PHEP 3 Support Schedule
4+
permalink: /docs/pheps/phep-3-support-schedule/
5+
exclude: true
6+
---
7+
8+
TODO.
9+
10+
Per PHEP 3's "How to Teach This" section:
11+
- 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).
12+
- 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.

_pages/docs/pheps.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,3 +29,11 @@ PyHC Enhancement Proposals are developed via the <a href="https://github.com/hel
2929
</p>
3030
{% assign id = 2 %}
3131
{% include phep_table.html sorted_pheps=sorted_pheps table_id=id %}
32+
33+
<br>
34+
35+
<h3>Subpages</h3>
36+
<p>
37+
These subpages provide additional content for accepted PHEPs.
38+
</p>
39+
- [PHEP 3 Support Schedule](/docs/pheps/phep-3-support-schedule/)
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
layout: post
3+
title: "Announcing PHEP 3"
4+
author: sapols
5+
---
6+
7+
<img src="/../img/page_images/phep3-gantt.jpg" alt="PHEP 3 Support Window" style="display: block; margin-left: auto; margin-right: auto; width: 60%">
8+
9+
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.
10+
11+
PHEP 3 recommends that all PyHC packages adopt the following support policy, based on [SPEC 0](https://scientific-python.org/specs/spec-0000/):
12+
13+
- **Support Python versions for 36 months** (3 years) after their initial release
14+
- **Support core Scientific Python packages for 24 months** (2 years) after their initial release
15+
- **Adopt new versions within 6 months** of their release
16+
17+
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.
18+
19+
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)!

_pyhc_projects/package_review_template.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,10 @@ This is based on the [PyHC Project Review Guidelines](https://github.com/helioph
3131
- [ ] Project imports the minimum number of packages necessary [[10](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]
3232
- [ ] Binary files are added to the package repository only when necessary [[14](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]
3333

34-
**5. Python 3**
35-
- [ ] Package is compatible with python 3 [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]
34+
**5. PHEP 3 (Python & Upstream Package Support)**
35+
- [ ] Package supports Python versions released within the last 36 months [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]
36+
- [ ] Package supports upstream core Scientific Python packages released within the last 24 months [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]
37+
- [ ] Package supports new dependency versions within 6 months of their release [[11](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]
3638

3739
**6. License**
3840
- [ ] Project has a license [[5](https://github.com/heliophysicsPy/standards/blob/main/standards.md#standards)]

_pyhc_projects/pyhc_project_grading_guidelines.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ The six standards against which we assess a project are the following:
3838
* Documentation
3939
* Testing
4040
* Software Maturity
41-
* Python3
41+
* PHEP 3 (Python & Upstream Package Support)
4242
* License
4343

4444
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
135135
</tr>
136136
</table>
137137

138-
### Python3
138+
### PHEP 3 (Python & Upstream Package Support)
139139

140-
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)
140+
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).
141141

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

img/page_images/phep3-gantt.jpg

150 KB
Loading

0 commit comments

Comments
 (0)