Skip to content

pystack: Add version 1.7.2 - #2486

Open
riseproject-dev[bot] wants to merge 2 commits into
mainfrom
github-actions/nightly-upgrade/pystack
Open

riseproject-dev[bot] wants to merge 2 commits into
mainfrom
github-actions/nightly-upgrade/pystack

Conversation

@riseproject-dev

Copy link
Copy Markdown
Contributor

Automatically generated by the nightly check_versions.py run.

pystack v1.7.1 -> v1.7.2

Every - version: entry added to docs/packages/pystack.yaml is built by this PR's own build-pystack.yml run; merging publishes the wheels.

Signed-off-by: riseproject-dev[bot] <330740410+riseproject-dev[bot]@users.noreply.github.com>
@riseproject-dev
riseproject-dev Bot requested a review from luhenry September 29, 2026 08:02
@github-actions

github-actions Bot commented Sep 29, 2026 •

Copy link
Copy Markdown
Contributor
PR Preview Action v1.8.1

QR code for preview link

🚀 View preview at
https://riseproject-dev.github.io/python-wheels/pr-preview/pr-2486/

Built to branch gh-pages at 2026-10-10 21:27 UTC.
Preview will be ready when the GitHub Pages deployment is complete.

@luhenry
luhenry force-pushed the main branch 3 times, most recently from 39fb7ba to a75cf68 Compare October 1, 2026 15:22
test_stack_of_thread_in_signal_handler[python] and ..._for_core[python],
added upstream in 1.7.2 (bloomberg/pystack#348), fail on riscv64 on every
tested interpreter (3.12/3.13/3.14/3.14t alike).

The fix those tests exercise, build_scripts/elfutils-aarch64-signal-frame.patch,
only teaches elfutils' AArch64 backend to unwind through the Linux
rt_sigreturn trampoline and recover the interrupted frame from the kernel's
rt_sigframe. elfutils ships no equivalent backend for riscv64 at all, so the
native unwind stops at the trampoline and never reaches the interrupted
CPython eval-loop frame: native_frames ends at
__vdso_rt_sigreturn/signalReadinessThenBlock/pause, no frame is ever
classified NativeFrame.FrameType.EVAL, and `assert eval_frames` fails with
`assert []` identically across all four interpreters.

This is the same class of gap as gotcha 616, just arch-gated instead of
version-gated, so it needs an unconditional deselect rather than the
version-conditional one already in this workflow. Writing a riscv64 unwind
backend for elfutils from scratch, with no riscv64 hardware here to validate
it against, is not something to carry as a speculative patch, so deselect
both tests like upstream already does for x86-64 Alpine via
ALL_PYTHONS_BUT_XFAIL_ON_ALPINE. Also fixes a stale "gotcha 597" comment
left over from a prior renumbering; the actual entry is gotcha 616.
luhenry added a commit that referenced this pull request Oct 10, 2026
Follow-up to gotcha 616: the same missing-elfutils-riscv64-unwind-backend
class of gap recurs in pystack 1.7.2's new signal-frame-unwind tests, but
arch-gated (every interpreter) rather than version-gated (3.13+ only), as
hit while triaging build-pystack.yml's test failures on PR #2486.
@luhenry
luhenry marked this pull request as ready for review October 11, 2026 01:05

This branch has not been deployed

No deployments
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