-
-
Notifications
You must be signed in to change notification settings - Fork 519
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
Replace special handling of optional extensions (bliss, coxeter3, ....) #37857
Replace special handling of optional extensions (bliss, coxeter3, ....) #37857
Conversation
Documentation preview for this PR (built with commit d4864f8; changes) is ready! 🎉 |
@soehms Here I'm running into a failure of the
|
If you mean this one:
This is because you made changes in
Where can I find it, or how to reproduce that? |
Thanks for the fast reaction, and apologies for not providing enough context; it was late in the evening for me. What I find puzzling is that In these tests (which you can see in the CI logs, or in the annotations shon in the "Files changed" tab here, the packages You can reproduce it locally with this branch by doing |
Meanwhile I'll fix the trivial failure 729 -> 714. |
No problem! BTW, thank you for your hard work on Sage. It really seems that you work day and night and never get tired!
Thanks! The issue seems to be caused by this change in
It is tested, even though
At the moment I've no idea, what is causing that! I can continue on that, but not before next Thursday. |
Thanks for pointing me here from #37905 I searched issues but not PR. It is rather odd and I cannot see at which point the hiding is done (we have some hidden hiding?). |
On which branch did you observe the failure? I can only reproduce it on the branch of this PR. As mentioned in my previous comment, it disappears if the following lines from it (in
So what could you have had in your test that replaced what those two lines do? |
As I mentioned in #37905 it has a sage-on-gentoo self inflicted component. I only ship a very limited version of |
Thanks for the explanation. I was now able to locate the cause of the error. This is because We currently have PR #37737 for an improvement to the implementation of the hide option. I'll see how to integrate a solution to the problem into that PR. For now, I would suggest adding the following two lines to
|
I've implemented a solution to the issue there (see #37737 (comment) and commit f881e2b). |
0e7cd3d
to
6a25b74
Compare
6a25b74
to
2601dc0
Compare
Will test as soon as possible, my Friday is already marked has gone so I am not sure when it will be. |
0e9e031
to
414d99b
Compare
414d99b
to
7ab8171
Compare
I have started a private test workflow on my computer, I will let you know the results once it is done. |
The workflow thing did not go well because I had not taken into some "interference". Will try a different way. |
I'll also further note that I have been impacted by cschwan/sage-on-gentoo#783 which is like the kind of stuff we see with setuptools_scm (but worse) and will only stop when either sagemath moves to meson or people bloody stop injecting their stuff in setuptools. |
... or when downstream architects stop trying to circumvent build isolation .... |
My modest proposal for this whole problem: A site-packages slurper that creates a PEP-660 editable wheel from a package installed in site-packages. Then build with proper build isolation instead of |
…ased installs predating 2021
f10abcd
to
d4864f8
Compare
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.
I could build and test the thing. I think we need to move it forward now.
Thank you! |
…iss, coxeter3, ....) <!-- ^ 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". --> We relieve the distribution **sagemath-standard** (in both versions - `SAGE_ROOT/pkgs/sagemath-standard` and `SAGE_ROOT/src`) from the duty to build "optional extensions" based on what Sage packages are installed. The installation is now done uniformly using the modularized distributions **sagemath-bliss**, **sagemath-coxeter3** etc. We introduce the missing features `coxeter3` and `sirocco` so that the doctester does not have to rely on the sage-the-distro installation records any more. The wheels of the distributions now build correctly even when not going through building an sdist first, which previously was required to apply MANIFEST-based filtering. This is achieved using the new `sage_setup.command.build_py`. User-visible change: - To install these options, use `./configure --enable-sagemath_bliss` before building, or use `./sage -i sagemath_bliss` or `make sagemath_bliss`. ### 📝 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. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - sagemath#12345: short description why this is a dependency --> <!-- - sagemath#34567: ... --> - Depends on sagemath#37737 (merged here) - Depends on sagemath#37973 (merged here) URL: sagemath#37857 Reported by: Matthias Köppe Reviewer(s): François Bissey
We relieve the distribution sagemath-standard (in both versions -
SAGE_ROOT/pkgs/sagemath-standard
andSAGE_ROOT/src
) from the duty to build "optional extensions" based on what Sage packages are installed.The installation is now done uniformly using the modularized distributions sagemath-bliss, sagemath-coxeter3 etc.
We introduce the missing features
coxeter3
andsirocco
so that the doctester does not have to rely on the sage-the-distro installation records any more.The wheels of the distributions now build correctly even when not going through building an sdist first, which previously was required to apply MANIFEST-based filtering. This is achieved using the new
sage_setup.command.build_py
.User-visible change:
./configure --enable-sagemath_bliss
before building, or use./sage -i sagemath_bliss
ormake sagemath_bliss
.📝 Checklist
⌛ Dependencies
configure --disable-editable --disable-wheels
) #37973 (merged here)