astral-sh / astral-sh/python-build-standalone

bsd tar is *sometimes* unhappy with `cpython-3.12.1+20240107-x86_64-apple-darwin-pgo+lto-full.tar.zst`

Open
#208 3 comments 0 reactions 0 assignees View on GitHub
bug needs-mre platform:darwin
Dominant language
Python
Stars
4.4k
Forks
314
Avg merge
1d 9h
Merged PRs (30d)
27

Description

this is a perplexing one...

```console
$ wget https://github.com/indygreg/python-build-standalone/releases/download/20240107/cpython-3.12.1+20240107-x86_64-apple-darwin-pgo+lto-full.tar.zst
$ sha256sum cpython-3.12.1+20240107-x86_64-apple-darwin-pgo+lto-full.tar.zst
bf2b176b0426d7b4d4909c1b19bbb25b4893f9ebdc61e32df144df2b10dcc800 cpython-3.12.1+20240107-x86_64-apple-darwin-pgo+lto-full.tar.zst
```

*sometimes* this fails:

```console
$ rm -rf pythons && mkdir -p pythons/cp312-cp312 && tar -C pythons/cp312-cp312 --strip-components=2 -xvf cpython-3.12.1+20240107-x86_64-apple-darwin-pgo+lto-full.tar.zst python/install > log 2>&1 || (tail -5 log)
$ rm -rf pythons && mkdir -p pythons/cp312-cp312 && tar -C pythons/cp312-cp312 --strip-components=2 -xvf cpython-3.12.1+20240107-x86_64-apple-darwin-pgo+lto-full.tar.zst python/install > log 2>&1 || (tail -5 log)
x lib/tk8.6/xmfbox.tcl
x share/man/man1/python3.1
x share/man/man1/python3.12.1
tar: Child process exited with status 1
tar: Error exit delayed from previous errors.
```

doesn't seem to fail with `gtar` so at least I have a workaround

also doesn't seem to fail for any of the other archives I've tried (admittedly I haven't tried that many)

```console
$ sw_vers
ProductName: macOS
ProductVersion: 13.5.2
BuildVersion: 22G91
$ tar --version
bsdtar 3.5.3 - libarchive 3.5.3 zlib/1.2.11 liblzma/5.0.5 bz2lib/1.0.8
$ zstd --version
*** Zstandard CLI (64-bit) v1.5.5, by Yann Collet ***
$ uname -a
Darwin FJJ4YYCWYX.local 22.6.0 Darwin Kernel Version 22.6.0: Wed Jul 5 22:22:05 PDT 2023; root:xnu-8796.141.3~6/RELEASE_ARM64_T6000 arm64 arm Darwin
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.