Remove giac as dependency, and add sagemath_giac as optional dependency#40001
Remove giac as dependency, and add sagemath_giac as optional dependency#40001vbraun merged 1 commit intosagemath:developfrom
Conversation
|
Documentation preview for this PR (built with commit 67b184f; changes) is ready! 🎉 |
Certainly I don't need it, but maybe someone who just-inconveniently-happen to not be able to build sage with giac linked… Of course that adds to maintenance cost, so I'd be okay with removing it. I think usual procedure requires a one-year deprecation period. |
|
deprecation period only applies to non-bugs. if there is a bug fixed along the way, it can get in right away |
|
@orlitzky what is the status of the giac expect interface? Can this be removed/deprecated? |
|
The pexpect interface is used by some other parts of sagelib, but only if you explicitly ask for it. Judging by my own comments, at least the following user-facing bits will still use pexpect rather than the faster library interface:
But in all of these cases you have to explicitly ask for giac, and if you don't, giac isn't a dependency. The answer to the question you asked is, no, it can't be completely dropped yet because those remaining functions need to be ported to sage.libs.giac (i.e. sagemath-giac) first. But to answer the question you didn't ask, I think you could drop giac as a dependency of sagelib regardless. If someone wants to use |
|
on the sage-distro level, should we relegate giac to the role of a dummy package, as we did for R a while ago? Anyhow, this looks good, and the "required" test-long fails due to some "no space left on device" error, not related to the changes here. |
|
The error message looks… not too actionable? Doesn't help that the online-generated pages for spkg documentation isn't too descriptive on how to actually install the package either, but this particular one doesn't even have |
|
|
That's another issue, no? While I use meson myself, I feel it's better to at least be helpful in one circumstance than to be helpful in no circumstance. To avoid maintenance overhead we may just call the |
sagemathgh-40001: Remove giac as dependency, and add sagemath_giac as optional dependency <!-- ^ 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". --> Not sure if this change is completely right. It seems to me that there is still a giac expect interface in use, so perhaps giac should now be a runtime dependency instead of build dependency of sagelib? Or is that interface obsolete and should/can be removed? ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] 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#40001 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
sagemathgh-40001: Remove giac as dependency, and add sagemath_giac as optional dependency <!-- ^ 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". --> Not sure if this change is completely right. It seems to me that there is still a giac expect interface in use, so perhaps giac should now be a runtime dependency instead of build dependency of sagelib? Or is that interface obsolete and should/can be removed? ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] 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#40001 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
sagemathgh-40001: Remove giac as dependency, and add sagemath_giac as optional dependency <!-- ^ 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". --> Not sure if this change is completely right. It seems to me that there is still a giac expect interface in use, so perhaps giac should now be a runtime dependency instead of build dependency of sagelib? Or is that interface obsolete and should/can be removed? ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] 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#40001 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
sagemathgh-40001: Remove giac as dependency, and add sagemath_giac as optional dependency <!-- ^ 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". --> Not sure if this change is completely right. It seems to me that there is still a giac expect interface in use, so perhaps giac should now be a runtime dependency instead of build dependency of sagelib? Or is that interface obsolete and should/can be removed? ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] 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#40001 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
sagemathgh-40001: Remove giac as dependency, and add sagemath_giac as optional dependency <!-- ^ 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". --> Not sure if this change is completely right. It seems to me that there is still a giac expect interface in use, so perhaps giac should now be a runtime dependency instead of build dependency of sagelib? Or is that interface obsolete and should/can be removed? ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] 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#40001 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
Not sure if this change is completely right. It seems to me that there is still a giac expect interface in use, so perhaps giac should now be a runtime dependency instead of build dependency of sagelib? Or is that interface obsolete and should/can be removed?
📝 Checklist
⌛ Dependencies