Fix bootstrap failures from missing exceptiongroup package and meson version_requirements.txt#17
Merged
cxzhong merged 2 commits intoUpgrade-pypi-packagesfrom Mar 31, 2026
Conversation
- Remove exceptiongroup from hypothesis dependencies (built into Python 3.11+) - Add meson to bootstrap package list to generate version_requirements.txt Agent-Logs-Url: https://github.com/cxzhong/sage/sessions/32dbf026-e8eb-426c-aad0-c23f2cbf31a0 Co-authored-by: cxzhong <14092175+cxzhong@users.noreply.github.com>
Copilot stopped work on behalf of
cxzhong due to an error
March 31, 2026 17:04
cxzhong
pushed a commit
that referenced
this pull request
Apr 9, 2026
sagemathgh-41875: Fix race condition in package pari_seadata_small <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes sagemath#12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes sagemath#12345". --> ``` [pari_galdata-20080411.p0] error installing, exit status 1. Log file: [pari_galdata-20080411.p0] Attempting to download package pari_galdata-20080411.tar.bz2 from mirrors [pari_galdata-20080411.p0] https://github.com/sagemath/sage/releases /download/10.9/pari_galdata-20080411.tar.bz2 [pari_galdata-20080411.p0] [xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx] [pari_galdata-20080411.p0] ERROR [transfer|run:137]: HTTP Error 404: Not Found [pari_galdata-20080411.p0] https://github.com/sagemath/sage/releases /download/10.8/pari_galdata-20080411.tar.bz2 [pari_galdata-20080411.p0] [......................................................................] [pari_galdata-20080411.p0] Setting up build directory /sage/local/var/tmp/sage/build/pari_galdata-20080411.p0 [pari_galdata-20080411.p0] No patch files found in ../patches [pari_galdata-20080411.p0] Host system: Linux buildkitsandbox 6.14.0-1017-azure #17~24.04.1-Ubuntu SMP Mon Dec 1 20:10:50 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux [pari_galdata-20080411.p0] C compiler: gcc, Using built-in specs., COLLECT_GCC=gcc, COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-linux- gnu/13/lto-wrapper, OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa, OFFLOAD_TARGET_DEFAULT=1, Target: x86_64-linux-gnu, Configured with: ../src/configure -v --with-pkgversion='Ubuntu 13.3.0-6ubuntu2~24.04.1' --with-bugurl=file:///usr/share/doc/gcc-13/README.Bugs --enable- languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with- gcc-major-version-only --program-suffix=-13 --program- prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/libexec --without-included-gettext --enable- threads=posix --libdir=/usr/lib --enable-nls --enable-bootstrap --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx- time=yes --with-default-libstdcxx-abi=new --enable-libstdcxx-backtrace --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos- checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx- none=/build/gcc-13-EldibY/gcc-13-13.3.0/debian/tmp-nvptx/usr,amdgcn- amdhsa=/build/gcc-13-EldibY/gcc-13-13.3.0/debian/tmp-gcn/usr --enable- offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux- gnu --with-build-config=bootstrap-lto-lean --enable-link- serialization=2, Thread model: posix, Supported LTO compression algorithms: zlib zstd, gcc version 13.3.0 (Ubuntu 13.3.0-6ubuntu2~24.04.1) [pari_galdata-20080411.p0] No stamp file for package 'pari_galdata' in /sage/local/var/lib/sage/installed [pari_galdata-20080411.p0] No spkg-legacy-uninstall script; nothing to do [pari_galdata-20080411.p0] ::group::.log [pari_galdata-20080411.p0] [spkg-install] src/galdata -> /sage/local /var/tmp/sage/build/pari_galdata-20080411.p0/inst/sage/local/share/pari [pari_galdata-20080411.p0] ::endgroup:: [pari_galdata-20080411.p0] Moving package files from temporary location /sage/local/var/tmp/sage/build/pari_galdata-20080411.p0/inst to /sage/local [pari_galdata-20080411.p0] cp: cannot create directory '/sage/local/./share/pari': File exists [pari_galdata-20080411.p0] ************************************************************************ [pari_galdata-20080411.p0] Error moving files for pari_galdata-20080411.p0. [pari_galdata-20080411.p0] ************************************************************************ [pari_galdata-20080411.p0] Please email sage-devel (http://groups.google.com/group/sage-devel) [pari_galdata-20080411.p0] explaining the problem and including the log files [pari_galdata-20080411.p0] /sage/logs/pkgs/pari_galdata-20080411.p0.log [pari_galdata-20080411.p0] and [pari_galdata-20080411.p0] /sage/config.log [pari_galdata-20080411.p0] Describe your computer, operating system, etc. [pari_galdata-20080411.p0] ************************************************************************ make[2]: *** [Makefile:3308: pari_galdata-SAGE_LOCAL-no-deps] Error 1 make[1]: *** [Makefile:3308: /sage/local/var/lib/sage/installed/pari_galdata-20080411.p0] Error 2 make --no-print-directory lrcalc-SAGE_LOCAL-no-deps [pari_seadata_small-20090618.p0] successfully installed. ``` It is a race condition caused by `cp -Rp` because two processes both find the folder is not exist. they both use `mkdir` to create. So it causes one fails and one successes ### :memo: Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [x] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### :hourglass: Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> URL: sagemath#41875 Reported by: Chenxin Zhong Reviewer(s): Dima Pasechnik
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 bootstrap script was failing with a
FileNotFoundErrorwhen processing package dependencies for RST documentation generation, specifically attempting to read/build/pkgs/exceptiongroup/typewhich doesn't exist.Changes
Remove exceptiongroup from hypothesis dependencies: The
exceptiongrouppackage is part of Python 3.11+ standard library and doesn't exist as a separate package inbuild/pkgs/. Removed from hypothesis dependency list to prevent bootstrap from attempting to resolve a non-existent package.Add meson to bootstrap package generation loop: The
mesonpackage was included in the tarball save list (line 240) but missing from the version_requirements.txt generation loop (line 36), causing inconsistency. Addedmesonto the package list to ensure its version_requirements.txt is properly generated during bootstrap.The bootstrap script now completes successfully without tracebacks when running
make configure.