Skip to content

[MNT] Add TestPyPI release workflow - #2454

Open
seaic-mac-murchadha wants to merge 2 commits into
sktime:mainfrom
seaic-mac-murchadha:testpypi-release-workflow
Open

seaic-mac-murchadha wants to merge 2 commits into
sktime:mainfrom
seaic-mac-murchadha:testpypi-release-workflow

Conversation

@seaic-mac-murchadha

Copy link
Copy Markdown
Contributor

Reference Issues/PRs

Resolves #2403 for the repo. A maintainer will still need to carry out the TestPyPI-side registration.

What does this implement/fix? Explain your changes.

Add TestPyPI release workflow in pytorch-forecasting. This can be used to perform dry runs and experimental releases without publishing to production.

What should a reviewer concentrate their feedback on?

Concentrate on testpypi_release.yml, comparing it to its existing production release counterpart: pypi_release.yml.

Did you add any tests for the change?

N/A - Workflow PR.

Testing was carried out:

  • Built both distribution artifacts locally.
  • Both distributions passed twine checks.
  • actionlint returned a 0 exit code, passing static validation.

Any other comments?

A maintainer will need to configure a pending Trusted Publisher on TestPyPI prior to the workflow running successfully. I have verified there is not currently an existing pytorch-forecasting project on TestPyPI.

PR checklist

  • The PR title starts with either [ENH], [MNT], [DOC], or [BUG]. [BUG] - bugfix, [MNT] - CI, test framework, [ENH] - adding or improving code, [DOC] - writing or improving documentation or docstrings.
  • Added/modified tests (N/A)
  • Used pre-commit hooks when committing to ensure that code is compliant with hooks. Install hooks with pre-commit install.
    To run hooks independent of commit, execute pre-commit run --all-files

@codecov

codecov Bot commented Oct 8, 2026 •

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
⚠️ Please upload report for BASE (main@0acb5a0). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2454   +/-   ##
=======================================
  Coverage        ?   88.81%           
=======================================
  Files           ?      218           
  Lines           ?    11671           
  Branches        ?        0           
=======================================
  Hits            ?    10366           
  Misses          ?     1305           
  Partials        ?        0           
Flag Coverage Δ
cpu 88.81% <ø> (?)
pytest 88.81% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@phoeenniixx phoeenniixx left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!
I think this is good, but before we merge, i think we need to create a ptf account in testpypi. Which will be something for @fkiraly i think

@phoeenniixx phoeenniixx added the maintenance Continuous integration, unit testing & package distribution label Oct 8, 2026

@phoeenniixx phoeenniixx left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

After some discussions with other core devs- There is a suggestion:
Is it possible that we keep just one release.yml file, there we build in a separate job and then based on the situation, we do pypi or testpypi release.
See how it is done in shap: https://github.com/shap/shap/blob/main/.github/workflows/build_wheels.yml

@seaic-mac-murchadha

Copy link
Copy Markdown
Contributor Author

Thanks for the feedback @phoeenniixx.

I'll rework the approach to use a shared build/testing path for PyPI and TestPyPI, with conditional publishing based on your shap reference.

@seaic-mac-murchadha

Copy link
Copy Markdown
Contributor Author

Hi @phoeenniixx,

Have adjusted the approach to use a single workflow which covers both PyPI and TestPyPI, based on the shap reference.

The automated test failure appears to be unrelated to the changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintenance Continuous integration, unit testing & package distribution

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[MNT] Add TestPyPI release workflow

2 participants