-
Notifications
You must be signed in to change notification settings - Fork 22
skpkg: run package update on the repository and support python 3.14 while dropping 3.11 #162
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,18 @@ | ||
| name: Build and Publish Docs on Dispatch | ||
|
|
||
| on: | ||
| workflow_dispatch: | ||
|
|
||
| jobs: | ||
| get-python-version: | ||
| uses: scikit-package/release-scripts/.github/workflows/_get-python-version-latest.yml@v0 | ||
| with: | ||
| python_version: 0 | ||
|
|
||
| docs: | ||
| uses: scikit-package/release-scripts/.github/workflows/_release-docs.yml@v0 | ||
| with: | ||
| project: diffpy.pdffit2 | ||
| c_extension: true | ||
| headless: false | ||
| python_version: ${{ fromJSON(needs.get-python-version.outputs.latest_python_version) }} |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,18 +1,76 @@ | ||
| name: Release (GitHub/PyPI) and Deploy Docs | ||
| name: Build Wheel and Release | ||
|
|
||
| # Trigger on tag push or manual dispatch. | ||
| # Tag and release privilege are verified inside the reusable workflow. | ||
| on: | ||
| workflow_dispatch: | ||
| push: | ||
| tags: | ||
| - "*" # Trigger on all tags initially, but tag and release privilege are verified in _build-wheel-release-upload.yml | ||
| - "*" | ||
|
|
||
| # ── Release modality ────────────────────────────────────────────────────────── | ||
| # Three options are provided below. Only ONE job should be active at a time. | ||
| # To switch: comment out the active job and uncomment your preferred option, | ||
| # then commit the change to main before tagging a release. | ||
| # ───────────────────────────────────────────────────────────────────────────── | ||
|
|
||
| jobs: | ||
| # Option 1 (default): Release to GitHub, publish to PyPI, and deploy docs. | ||
| # | ||
| # The wheel is uploaded to PyPI so users can install with `pip install`. | ||
| # A GitHub release is created with the changelog as the release body, and | ||
| # the Sphinx documentation is rebuilt and deployed to GitHub Pages. | ||
| # | ||
| # Choose this for open-source packages distributed via PyPI and/or | ||
| # conda-forge where broad public availability is the goal. | ||
| build-release: | ||
| uses: scikit-package/release-scripts/.github/workflows/_build-wheel-release-upload.yml@v0 | ||
| with: | ||
| project: diffpy.pdffit2 | ||
| c_extension: true | ||
| maintainer_GITHUB_username: sbillinge | ||
| maintainer_github_username: sbillinge | ||
| secrets: | ||
| PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }} | ||
| PAT_TOKEN: ${{ secrets.PAT_TOKEN }} | ||
|
|
||
| # Option 2: Release to GitHub and deploy docs, without publishing to PyPI. | ||
| # | ||
| # A GitHub release is created and the Sphinx docs are deployed, but the | ||
| # wheel is not uploaded to PyPI. The source code remains publicly visible | ||
| # on GitHub and can be installed directly from there. | ||
| # | ||
| # Choose this when the package is public but you prefer to keep it off the | ||
| # default pip index — for example, if you distribute via conda-forge only, | ||
| # or if the package is not yet ready for a permanent PyPI presence. | ||
| # | ||
| # To use: comment out Option 1 above and uncomment the lines below. | ||
| # build-release-no-pypi: | ||
| # uses: scikit-package/release-scripts/.github/workflows/_build-release-github-no-pypi.yml@v0 | ||
| # with: | ||
| # project: diffpy.pdffit2 | ||
| # c_extension: true | ||
| # maintainer_github_username: sbillinge | ||
| # secrets: | ||
| # PAT_TOKEN: ${{ secrets.PAT_TOKEN }} | ||
|
|
||
| # Option 3: Release to GitHub with wheel, license, and instructions bundled | ||
| # as a downloadable zip attached to the GitHub release asset. | ||
| # | ||
| # The wheel is built and packaged together with INSTRUCTIONS.txt and the | ||
| # LICENSE file into a zip that is attached directly to the GitHub release. | ||
| # Users with access to the (private) repo download the zip, follow the | ||
| # instructions inside, and install locally with pip. No PyPI or conda-forge | ||
| # upload occurs, and no docs are deployed. | ||
| # | ||
| # Choose this for private or restricted packages where distribution must be | ||
| # controlled: only users with repo access can download the release asset, | ||
| # making the GitHub release itself the distribution channel. | ||
| # | ||
| # To use: comment out Option 1 above and uncomment the lines below. | ||
| # build-release-private: | ||
| # uses: scikit-package/release-scripts/.github/workflows/_build-release-github-private-pure.yml@v0 | ||
| # with: | ||
| # project: diffpy.pdffit2 | ||
| # maintainer_github_username: sbillinge | ||
| # secrets: | ||
| # PAT_TOKEN: ${{ secrets.PAT_TOKEN }} |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| name: Matrix and Codecov | ||
|
|
||
| on: | ||
| # push: | ||
| # branches: | ||
| # - main | ||
| release: | ||
| types: | ||
| - prereleased | ||
| - published | ||
| workflow_dispatch: | ||
|
|
||
| jobs: | ||
| matrix-coverage: | ||
| uses: scikit-package/release-scripts/.github/workflows/_matrix-and-codecov-on-merge-to-main.yml@v0 | ||
| with: | ||
| project: diffpy.pdffit2 | ||
| c_extension: true | ||
| headless: false | ||
| secrets: | ||
| CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -52,12 +52,13 @@ | |
| "sphinx.ext.intersphinx", | ||
| "sphinx_rtd_theme", | ||
| "sphinx_copybutton", | ||
| "m2r", | ||
| "m2r2", | ||
| ] | ||
|
|
||
| autodoc_mock_imports = [ | ||
| "diffpy.pdffit2.pdffit2", | ||
| ] | ||
|
|
||
| # Add any paths that contain templates here, relative to this directory. | ||
| templates_path = ["_templates"] | ||
|
|
||
|
|
@@ -80,7 +81,6 @@ | |
| # |version| and |release|, also used in various other places throughout the | ||
| # built documents. | ||
|
|
||
| fullversion = version(project) | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Please check that full version is getting defined somewhere
Contributor
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, |
||
| # The short X.Y version. | ||
| version = "".join(fullversion.split(".post")[:1]) | ||
| # The full version, including alpha/beta/rc tags. | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -6,15 +6,15 @@ build-backend = "setuptools.build_meta" | |
| name = "diffpy.pdffit2" | ||
| dynamic=['version', 'dependencies'] | ||
| authors = [ | ||
| { name="Simon Billinge", email="sb2896@columbia.edu" }, | ||
| {name='Simon Billinge', email='sbillinge@ucsb.edu'}, | ||
| ] | ||
| maintainers = [ | ||
| { name="Simon Billinge", email="sb2896@columbia.edu" }, | ||
| {name='Simon Billinge', email='sbillinge@ucsb.edu'}, | ||
| ] | ||
| description = "PDFfit2 - real space structure refinement program." | ||
| keywords = ['PDF', 'structure refinement'] | ||
| readme = "README.rst" | ||
| requires-python = ">=3.11, <3.14" | ||
| requires-python = ">=3.12, <3.15" | ||
| classifiers = [ | ||
| 'Development Status :: 5 - Production/Stable', | ||
| 'Environment :: Console', | ||
|
|
@@ -25,9 +25,9 @@ classifiers = [ | |
| 'Operating System :: Microsoft :: Windows', | ||
| 'Operating System :: POSIX', | ||
| 'Operating System :: Unix', | ||
| 'Programming Language :: Python :: 3.11', | ||
| 'Programming Language :: Python :: 3.12', | ||
| 'Programming Language :: Python :: 3.13', | ||
| 'Programming Language :: Python :: 3.14', | ||
| 'Topic :: Scientific/Engineering :: Physics', | ||
| 'Topic :: Scientific/Engineering :: Chemistry', | ||
| ] | ||
|
|
@@ -59,6 +59,11 @@ exclude-file = ".codespell/ignore_lines.txt" | |
| ignore-words = ".codespell/ignore_words.txt" | ||
| skip = "*.cif,*.dat,*.cc,*.h" | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We probably want to keep the .cc and .h here
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Is this line deleted? We don't want it? |
||
|
|
||
| [tool.docformatter] | ||
| recursive = true | ||
| wrap-summaries = 72 | ||
| wrap-descriptions = 72 | ||
|
|
||
| [tool.black] | ||
| line-length = 79 | ||
| include = '\.pyi?$' | ||
|
|
||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am guessing we may need to keep this unless there is a reason you think not