Skip to content

Add post-publish verify step (real install + import + call)#7

Open
mstorath wants to merge 1 commit into
mainfrom
claude/cmf-style-verify-step-2026-05
Open

Add post-publish verify step (real install + import + call)#7
mstorath wants to merge 1 commit into
mainfrom
claude/cmf-style-verify-step-2026-05

Conversation

@mstorath
Copy link
Copy Markdown
Owner

@mstorath mstorath commented May 8, 2026

Summary

Adds a post-publish smoke check to the publish job: after gh-action-pypi-publish finishes, the workflow does a real pip install cssd from pypi.org/simple/, imports the module, and runs a tiny cssd(np.linspace(0,1,16), np.zeros(16), p=0.99, gamma=1e10) call to exercise the Rust binding.

PyPI accepting the upload is not the same as `pip install` working. The check catches:

  • A renamed module / wrong package name in the workflow (the bug that was silent on CMF for years against the unrelated placeholder `your-package-name`)
  • Broken __init__.py
  • ABI / manylinux mismatch
  • Missing or broken native binding (Rust extension via PyO3 here)

This mirrors the step that landed in CircleMedianFilter during v0.1.7. Same backport landing in parallel for Pottslab, L1TV, DCEBE.

Test plan

  • First real exercise: next v* tag push.
  • Smoke call mirrors what tests_py/ already exercises.

Mirrors CMF v0.1.7's post-publish smoke check (devcontainer
reports/11-cmf-v0.1.7-release.md). PyPI accepting the upload is not
the same as `pip install` working — the new step does a real
`pip install cssd` from PyPI, imports the module, and runs a tiny
`cssd(np.linspace(0,1,16), np.zeros(16), p=0.99, gamma=1e10)` call
to exercise the Rust binding. Catches: renamed package, broken
__init__, ABI/manylinux mismatches, missing native bindings.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant