Skip to content

Commit 553a2a2

Browse files
authored
Merge pull request #163 from diffpy/migration
Migration
2 parents 45d87f5 + 85eeade commit 553a2a2

22 files changed

Lines changed: 238 additions & 97 deletions

.github/ISSUE_TEMPLATE/release_checklist.md

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,25 @@
1-
---
1+
---
2+
23
name: Release
34
about: Checklist and communication channel for PyPI and GitHub release
45
title: "Ready for <version-number> PyPI/GitHub release"
56
labels: "release"
67
assignees: ""
8+
79
---
810

911
### PyPI/GitHub rc-release preparation checklist:
1012

1113
- [ ] All PRs/issues attached to the release are merged.
1214
- [ ] All the badges on the README are passing.
1315
- [ ] License information is verified as correct. If you are unsure, please comment below.
14-
- [ ] The `FALLBACK_VERSION` in `setup.py` has been updated to the latest version on PyPI.
15-
- [ ] Locally rendered documentation contains all appropriate pages, including API references (check no modules are
16-
missing), tutorials, and other human-written text is up-to-date with any changes in the code.
16+
- [ ] Locally rendered documentation contains all appropriate pages, tutorials, and other human-written text is up-to-date with any changes in the code.
17+
- [ ] All API references are included. To check this, run `conda install scikit-package` and then `package build api-doc`. Review any edits made by rerendering the docs locally.
1718
- [ ] Installation instructions in the README, documentation, and the website are updated.
1819
- [ ] Successfully run any tutorial examples or do functional testing with the latest Python version.
1920
- [ ] Grammar and writing quality are checked (no typos).
2021
- [ ] Install `pip install build twine`, run `python -m build` and `twine check dist/*` to ensure that the package can be built and is correctly formatted for PyPI release.
22+
- [ ] Dispatch matrix testing to test the release on all Python versions and systems. If you do not have permission to run this workflow, tag the maintainer and say `@maintainer, please dispatch matrix testing workflow`.
2123

2224
Please tag the maintainer (e.g., @username) in the comment here when you are ready for the PyPI/GitHub release. Include any additional comments necessary, such as version information and details about the pre-release here:
2325

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Build and Publish Docs on Dispatch
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
get-python-version:
8+
uses: scikit-package/release-scripts/.github/workflows/_get-python-version-latest.yml@v0
9+
with:
10+
python_version: 0
11+
12+
docs:
13+
uses: scikit-package/release-scripts/.github/workflows/_release-docs.yml@v0
14+
with:
15+
project: diffpy.pdffit2
16+
c_extension: true
17+
headless: false
18+
python_version: ${{ fromJSON(needs.get-python-version.outputs.latest_python_version) }}
Lines changed: 61 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,76 @@
1-
name: Release (GitHub/PyPI) and Deploy Docs
1+
name: Build Wheel and Release
22

3+
# Trigger on tag push or manual dispatch.
4+
# Tag and release privilege are verified inside the reusable workflow.
35
on:
46
workflow_dispatch:
57
push:
68
tags:
7-
- "*" # Trigger on all tags initially, but tag and release privilege are verified in _build-wheel-release-upload.yml
9+
- "*"
10+
11+
# ── Release modality ──────────────────────────────────────────────────────────
12+
# Three options are provided below. Only ONE job should be active at a time.
13+
# To switch: comment out the active job and uncomment your preferred option,
14+
# then commit the change to main before tagging a release.
15+
# ─────────────────────────────────────────────────────────────────────────────
816

917
jobs:
18+
# Option 1 (default): Release to GitHub, publish to PyPI, and deploy docs.
19+
#
20+
# The wheel is uploaded to PyPI so users can install with `pip install`.
21+
# A GitHub release is created with the changelog as the release body, and
22+
# the Sphinx documentation is rebuilt and deployed to GitHub Pages.
23+
#
24+
# Choose this for open-source packages distributed via PyPI and/or
25+
# conda-forge where broad public availability is the goal.
1026
build-release:
1127
uses: scikit-package/release-scripts/.github/workflows/_build-wheel-release-upload.yml@v0
1228
with:
1329
project: diffpy.pdffit2
1430
c_extension: true
15-
maintainer_GITHUB_username: sbillinge
31+
maintainer_github_username: sbillinge
1632
secrets:
1733
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
1834
PAT_TOKEN: ${{ secrets.PAT_TOKEN }}
35+
36+
# Option 2: Release to GitHub and deploy docs, without publishing to PyPI.
37+
#
38+
# A GitHub release is created and the Sphinx docs are deployed, but the
39+
# wheel is not uploaded to PyPI. The source code remains publicly visible
40+
# on GitHub and can be installed directly from there.
41+
#
42+
# Choose this when the package is public but you prefer to keep it off the
43+
# default pip index — for example, if you distribute via conda-forge only,
44+
# or if the package is not yet ready for a permanent PyPI presence.
45+
#
46+
# To use: comment out Option 1 above and uncomment the lines below.
47+
# build-release-no-pypi:
48+
# uses: scikit-package/release-scripts/.github/workflows/_build-release-github-no-pypi.yml@v0
49+
# with:
50+
# project: diffpy.pdffit2
51+
# c_extension: true
52+
# maintainer_github_username: sbillinge
53+
# secrets:
54+
# PAT_TOKEN: ${{ secrets.PAT_TOKEN }}
55+
56+
# Option 3: Release to GitHub with wheel, license, and instructions bundled
57+
# as a downloadable zip attached to the GitHub release asset.
58+
#
59+
# The wheel is built and packaged together with INSTRUCTIONS.txt and the
60+
# LICENSE file into a zip that is attached directly to the GitHub release.
61+
# Users with access to the (private) repo download the zip, follow the
62+
# instructions inside, and install locally with pip. No PyPI or conda-forge
63+
# upload occurs, and no docs are deployed.
64+
#
65+
# Choose this for private or restricted packages where distribution must be
66+
# controlled: only users with repo access can download the release asset,
67+
# making the GitHub release itself the distribution channel.
68+
#
69+
# To use: comment out Option 1 above and uncomment the lines below.
70+
# build-release-private:
71+
# uses: scikit-package/release-scripts/.github/workflows/_build-release-github-private-pure.yml@v0
72+
# with:
73+
# project: diffpy.pdffit2
74+
# maintainer_github_username: sbillinge
75+
# secrets:
76+
# PAT_TOKEN: ${{ secrets.PAT_TOKEN }}

.github/workflows/check-news-item.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Check for News
33
on:
44
pull_request_target:
55
branches:
6-
- main
6+
- main # GitHub does not evaluate expressions in trigger filters; edit this value if your base branch is not main
77

88
jobs:
99
check-news-item:
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
name: Matrix and Codecov
2+
3+
on:
4+
# push:
5+
# branches:
6+
# - main
7+
release:
8+
types:
9+
- prereleased
10+
- published
11+
workflow_dispatch:
12+
13+
jobs:
14+
matrix-coverage:
15+
uses: scikit-package/release-scripts/.github/workflows/_matrix-and-codecov-on-merge-to-main.yml@v0
16+
with:
17+
project: diffpy.pdffit2
18+
c_extension: true
19+
headless: false
20+
secrets:
21+
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

AUTHORS.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ contributors. This is an open-source project and we hope and expect
2323
that the list of contributors will expand with time. Many thanks to
2424
all current and future contributors!
2525

26-
For more information on the DiffPy project email sb2896@columbia.edu
26+
For more information on the DiffPy project email sbillinge@ucsb.edu
2727

2828
DiffPy was initiated as part of the Distributed Data Analysis of Neutron
2929
Scattering Experiments (DANSE) project, funded by the National Science

CODE-OF-CONDUCT.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ Enforcement
6767

6868
Instances of abusive, harassing, or otherwise unacceptable behavior may be
6969
reported to the community leaders responsible for enforcement at
70-
sb2896@columbia.edu. All complaints will be reviewed and investigated promptly and fairly.
70+
sbillinge@ucsb.edu. All complaints will be reviewed and investigated promptly and fairly.
7171

7272
All community leaders are obligated to respect the privacy and security of the
7373
reporter of any incident.

LICENSE.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ the following paper in your publication:
1313
in crystals (https://stacks.iop.org/0953-8984/19/335219), *J. Phys.: Condens. Matter*, 19, 335219 (2007)
1414

1515
Copyright 2006-2007, Board of Trustees of Michigan State University,
16-
Copyright 2008-2025, Board of Trustees of Columbia University in the
16+
Copyright 2008-2026, Board of Trustees of Columbia University in the
1717
city of New York. (Copyright holder indicated in each source file).
1818

1919
For more information please visit the project web-page:

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ If you use diffpy.pdffit2 in a scientific publication, we would like you to cite
7979
Installation
8080
------------
8181

82-
diffpy.pdffit2 supports Python 3.11, 3.12, and 3.13.
82+
diffpy.pdffit2 supports Python 3.12, 3.13, and 3.14.
8383

8484
Windows, macOS (non-Arm64), Linux
8585
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

cookiecutter.json

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
{
2-
"maintainer_name": "Simon Billinge",
3-
"maintainer_email": "sb2896@columbia.edu",
4-
"maintainer_github_username": "sbillinge",
2+
"author_names": "Simon Billinge",
3+
"author_emails": "sbillinge@ucsb.edu",
4+
"maintainer_names": "Simon Billinge",
5+
"maintainer_emails": "sbillinge@ucsb.edu",
6+
"maintainer_github_usernames": "sbillinge",
57
"contributors": "Pavol Juhas, Chris Farrow, Simon Billinge, Billinge Group members",
68
"license_holders": "The Trustees of Columbia University in the City of New York",
79
"project_name": "diffpy.pdffit2",
@@ -11,8 +13,8 @@
1113
"package_dir_name": "diffpy.pdffit2",
1214
"project_short_description": "PDFfit2 - real space structure refinement program.",
1315
"project_keywords": "PDF, structure refinement",
14-
"minimum_supported_python_version": "3.11",
15-
"maximum_supported_python_version": "3.13",
16+
"minimum_supported_python_version": "3.12",
17+
"maximum_supported_python_version": "3.14",
1618
"project_needs_c_code_compiled": "Yes",
1719
"project_has_gui_tests": "No"
1820
}

0 commit comments

Comments
 (0)