-
-
Notifications
You must be signed in to change notification settings - Fork 622
Remove giac as dependency, and add sagemath_giac as optional dependency #40001
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
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