-
-
Notifications
You must be signed in to change notification settings - Fork 482
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update GAP to 4.12.2 #35093
update GAP to 4.12.2 #35093
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## develop #35093 +/- ##
===========================================
- Coverage 88.62% 88.60% -0.02%
===========================================
Files 2148 2148
Lines 398653 398656 +3
===========================================
- Hits 353308 353239 -69
- Misses 45345 45417 +72
... and 27 files with indirect coverage changes Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report in Codecov by Sentry. |
We've been shipping an earlier version of this PR in void linux since last october when we upgraded gap to 4.12.1, without any trouble. Upgrading to 4.12.2 works ok. My patches:
For the upgrade to sagemath 9.8 I tried including the changes here and in #35094 in full, as obtained from
However, if I keep instead the two patches I am using on 9.7, everything seems to work ok on 9.8. I'll investigate further. Do you mind if I rebase #35094 on top of 9.8? I think that is independent of the gap upgrade. |
I found the issue: I was setting It's a big drastic to segfault because a file cannot be found... The message about not finding I'm back to preparing a void package for 9.8 using the whole PR together with #35094 as in https://github.com/sagemath/sage/pull/35094.diff. I will report back, this will build and check on x86_64 (glibc and musl), and on i686 (glibc) using system gap 4.12.2. |
I decided to ship 9.8 with gap 4.12.2 in sage-on-gentoo as well. In fact I backported to sage 9.7 a few weeks ago to avoid issues with two versions of gap being available in the overlay. This upgrade has been relatively smooth compared to previous ones in gentoo. |
Most of the errors I see on the runner so far, are unrelated to this upgrade. Did we figure what blocked it for 9.8 when Volker tried to merge it? |
imho it was just a random timeout failure on a dodgy 32-bit buildbot |
there is apparently a failure of the multi-stage build - any idea why, @mkoeppe ? |
Right, I'll still want to see what happens to the runner when it hits the currently queued 32bit systems but my default position is get it in ASAP. |
Replaced by https://github.com/mkoeppe/sage/actions/runs/4167928897, which will take some time to complete |
Once I fixed the Note that I am also testing 32 bit. See e.g. https://github.com/void-linux/void-packages/actions/runs/4166635040/jobs/7211215245 (there are a few unrelated failures -- because I patched sage to support singular 4.3.1p3 but I didn't upgrade singular yet). |
Note: I only tested sage-the-library. Also, I don't build optional packages (not even |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Portability tests at https://github.com/mkoeppe/sage/actions/runs/4167928897 seem OK. (Doctest failures come from other upgraded packages on https://github.com/mkoeppe/sage/tree/ci-10.0.beta0%2Bupgrades-2)
I don't think we have rigid rules about this. If a reviewer approves and is confident to have covered all aspects of the PR, then I'd think it's OK to set Let's get this upgrade in. |
ping @dimpase : can you please rebase this and #35094 on top of 10.0.beta2 so it can be merged? I would do it, but unfortunately I don't know any way in github to change the branch that would be merged like we used to do in trac. Is there a way? BTW, I was skeptical of the move, but in spite of all the warts github has it's a real improvement in productivity in many, many ways. How everything was moved from trac to github is amazing and the improved search on issues is already worth it. I hope the workflow will evolve over time for good as we learn our way around. |
We can promote you to "maintainer". Maintainers can make edits to other people's PRs (unless explicitly disabled when the PR is created) by pushing to the branch. |
done.
you don't have to know if you use web interface - did you try hitting "Resolve conficts" button?
|
Thanks! I hope this can be merged soon since it's a blocker for me to use the development branch on my box (i.e. every PR I want to try, I have to merge with this branch). The other not-yet merged PR cause very localized test failures, but without this sage is unusable for me. Also because I think changing such a core package is better done early in the release cycle so it gets to be tested thoroughly.
I know how to resolve conflicts on the CLI, and I guess I would know how to do it on GH web. But the point is that:
On the one hand I cannot change the branch I tried doing a PR against your branch in your repo as the documentation somewhere suggests, but I don't know if I did that correctly. |
also add a workaround for Semigroups (see comment in the code)
`make install` installs files in both paths
The 'packagemanager' package does not load without it
d22bdee
to
9990163
Compare
OK, done. @vbraun - could you please check on the bots if it helps. |
Documentation preview for this PR is ready! 🎉 |
Yes the buildbots poison the |
How? So I can try to reproduce this locally. |
I'm setting (python syntax)
|
…uld look for libgap.so* ### 📚 Description In short, sometimes there is no `lib**.so` available, but only `lib**.so.*`. This breaks GAP and Singular related things. See #33446 for details. Closes #33446 ### ⌛ Dependencies Depends on #35093 #34391 (GAP update to 4.12.2) URL: #35094 Reported by: Dima Pasechnik Reviewer(s): Matthias Köppe
### 📚 Description Trac branch `u/gh-collares/gap-gc` from #34701, now migrated to GitHub. Currently based atop #35093; will rebase once that is merged. The rest of the description below is copied from #34701: A refactor in #27946 introduced "unprotected" (not surrounded by `GAP_Enter`/`GAP_Leave`) `GAP_ValueGlobalVariable` calls. I believe this might be a GC hazard, because after updating to GAP 4.12.1 I started seeing aarch64 crashes on NixOS infrastructure such as: ``` #0 0x0000fffff79740e8 in wait4 () #1 0x0000fffff5dc6b78 in print_enhanced_backtrace () #2 0x0000fffff5dc8190 in sigdie () #3 0x0000fffff5dcb1c0 in cysigs_signal_handler () #4 0x0000fffff7ffb7cc in __kernel_rt_sigreturn () #5 0x0000ffff99a0bf28 in ConvString () #6 0x0000000000000000 in ?? () #7 0x0000000000000000 in ?? () #8 0x0000000000000000 in ?? () #9 0x0000ffff99989930 in Pr () #10 0x0000ffff9998aa18 in CloseOutput () #11 0x0000ffff99884828 in capture_stdout () at /build/sage- src-9.7/pkgs/sagemath-standard/sage/libs/gap/element.pyx:154 ... ``` I also see cases where `capture_stdout` throws errors such as `sage.libs.gap.util.GAPError: Error, Length: <list> must be a list (not the integer 255)` and then crashes. Both types of errors are fixed by this ticket. Note that I am nesting `GAP_Enter`/`GAP_Leave` calls because I didn't remove the preexisting calls inside `capture_stdout`. That's because I feared removing the innermost calls might create a new footgun (and I believe nested `GAP_Enter`/`GAP_Leave` calls are explicitly supported), but removing them should cause no problem. Removing them might even be preferable for performance reasons, I don't know. Fixes #34701 ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> <!-- If your change requires a documentation PR, please link it appropriately --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> - [x] I have made sure that the title is self-explanatory and the description concisely explains the PR. - [x] I have linked an issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation accordingly. ### ⌛ Dependencies <!-- List all open pull requests that this PR logically depends on --> <!-- - #xyz: short description why this is a dependency - #abc: ... --> - #35093: GAP 4.12.2 upgrade, which touches the same function and should land first. URL: #35114 Reported by: Mauricio Collares Reviewer(s): Dima Pasechnik
just in case, to revert the effect of this patch at the start of Sage session, one can do
this has to happen at the startup - after |
upgrades our corresponding spkgs:
Closes #34391