fix(ci): verify Python distributions before release - #63
Merged
tianyuzhou95 merged 1 commit intoSep 10, 2026
Merged
Conversation
Install declared dependencies when testing SDK distributions so importing akernel_sdk can resolve idna in a clean environment. Share wheel and source-distribution build and installation checks between PR CI and publishing to catch release verification failures before merging. Check dependency consistency, isolated imports, package versions, and the CLI for both artifacts while preserving the existing release trigger and tag validation. Signed-off-by: Tianyu Zhou <albert.zty@antgroup.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The rc2 release failed when its clean wheel test imported
akernel_sdk:--no-depsskipped the declaredidnadependency. PR CI installed dependencies through editable installs and never ran the distribution verification that failed during publishing.Use one composite action in PR CI and the release workflow to build and validate wheel/sdist metadata, install each artifact with its declared dependencies in a separate clean environment, run
pip check, and verify isolated SDK imports, package versions, CLI entry-point metadata, andak --help. The release uploads the exact artifacts verified by that action.The existing
release.publishedtrigger and tag/version/main-ancestry checks remain in place. After merging, rc2 can be republished by recreating its Release and tag at the fixed commit, provided its artifacts have not been uploaded to PyPI. This PR does not change the SDK version or publish anything.Validation: reproduced the original missing-
idnafailure with a no-dependency wheel install, then ran the shared action's shell steps against source exported fromv0.1.6rc2using Python 3.12. Both wheel and sdist passed dependency, isolated import, version, entry-point, and CLI checks.actionlintv1.7.12, YAML parsing, embedded Bash syntax checks, andgit diff --checkpassed.