Remove legacy direct installation of sagelib (configure --disable-editable --disable-wheels)#37973
Conversation
|
Documentation preview for this PR (built with commit 016fcf2; changes) is ready! 🎉 |
|
The failure in test-new is an unrelated CI malfunction: #37985 |
…nstall_and_clean), sage_setup.find.installed_files_by_module: Remove
…ing of --disable-editable --disable-wheels
|
Looks fine as far as distro packaging is concerned. Seems to fix installing a pyc file that was somehow missing before: Can't comment on the sage-the-distro specific changes. |
I have had a specific fix for that in sage-on-gentoo for ages (manual generation of optimization). I'll be glad if it fixes that.
Well, I can't either. I just welcome things that narrows the differences with sage-on-distros and that ticket does drop a lot of old baggages that I am quite happy to see off (goodbye |
Thanks for testing. Yes, this is a weird one; parts of the sagelib build system consider this Python file a data file of sorts. |
|
Is |
|
The variable itself is internal, but |
|
Thanks! |
sagemathgh-37973: Remove legacy direct installation of sagelib (`configure --disable-editable --disable-wheels`) <!-- ^ 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". --> This mode, no longer the default, was using the deprecated `setup.py install`. With the change in this PR, `--disable-editable` now implies `--enable- wheels`. This simplifies `sage_setup`: The entire "install cleaner", a relic from pre-modern Python packaging, is removed. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [x] The title is concise and informative. - [ ] 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: ... --> URL: sagemath#37973 Reported by: Matthias Köppe Reviewer(s):
sagemathgh-37857: Replace special handling of optional extensions (bliss, 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
sagemathgh-37857: Replace special handling of optional extensions (bliss, 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
This mode, no longer the default, was using the deprecated
setup.py install.With the change in this PR,
--disable-editablenow implies--enable-wheels.This simplifies
sage_setup: The entire "install cleaner", a relic from pre-modern Python packaging, is removed.📝 Checklist
⌛ Dependencies