Skip to content

Accept xz prebuilt archives - #3

Merged
native-api merged 5 commits into
pyenv:masterfrom
macayu17:fix/prebuilt-xz-archives
Sep 21, 2026
Merged

native-api merged 5 commits into
pyenv:masterfrom
macayu17:fix/prebuilt-xz-archives

Conversation

@macayu17

@macayu17 macayu17 commented Sep 15, 2026

Copy link
Copy Markdown
Member

Prerequisite

Description

  • Here are some details about my PR
    • Allows pythons/update.sh to accept .tar.xz prebuilt archives while retaining .tar.gz support.
    • Updates the existing updater test to use the .tar.xz format produced by pyenv-binary.
    • Fixes the Update downloads failure in the binary publishing workflow.

Tests

  • My PR adds the following unit tests (if any)
    • The updater test passes in a Linux container.
    • Both .tar.xz indexing and existing .tar.gz compatibility were checked.
    • ShellCheck and git diff --check pass.

Summary by cubic

Drops the .tar.gz-only filename check in pythons/update.sh, so the updater now accepts .tar.xz prebuilt archives (and any safe archive name from metadata) while retaining .tar.gz support, fixing the binary publishing workflow's Update downloads failure. Rewrites the updater test in Bats to cover both archive formats, idempotent re-runs, failed runs leaving files unchanged, unsafe-name rejection, and missing-file failures, and documents the Bats test command in README.md.

Written for commit d74d187. Summary will update on new commits.

Review in cubic

Copilot AI lite review requested due to automatic review settings September 15, 2026 03:29

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

All reported issues were addressed across 2 files

Reply with feedback, questions, or to request a fix.

Re-trigger cubic

Comment thread pythons/test/update.sh Outdated
@macayu17

Copy link
Copy Markdown
Member Author

@native-api Could you take a look when you have a chance?

@native-api native-api 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.

Maybe use bats?
There are only a few tests, but you already have plenty of test framework code.

Comment thread pythons/test/update.sh Outdated
Comment thread pythons/test/update.sh Outdated
Comment thread pythons/update.sh Outdated
@macayu17

Copy link
Copy Markdown
Member Author

Switched the updater tests to Bats, removed the leftover default and redundant metadata validation, and kept the unsafe-name and missing-artifact checks.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

All reported issues were addressed across 3 files (changes from recent commits).

Tip: Review your code locally with the cubic CLI to iterate faster.

Re-trigger cubic

Comment thread pythons/test/update.bats
Comment thread pythons/test/update.bats Outdated

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

All reported issues were addressed across 2 files (changes from recent commits).

Tip: Review your code locally with the cubic CLI to iterate faster.

Re-trigger cubic

Comment thread pythons/test/update.bats Outdated
@native-api
native-api merged commit 1f2cc3e into pyenv:master Sep 21, 2026
1 check passed
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.

3 participants