sage.features: Add sage.libs.singular, features for standard Python packages#35237
sage.features: Add sage.libs.singular, features for standard Python packages#35237vbraun merged 10 commits intosagemath:developfrom
sage.features: Add sage.libs.singular, features for standard Python packages#35237Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## develop #35237 +/- ##
===========================================
+ Coverage 88.57% 88.58% +0.01%
===========================================
Files 2140 2141 +1
Lines 397273 397416 +143
===========================================
+ Hits 351891 352061 +170
+ Misses 45382 45355 -27
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 at Codecov. |
|
LGTM. But why these feature files lack the usual heading of sage files? |
…date=format:%Y FILE | sort -k2"
|
Thanks. I am waiting for B&T for sanity. |
|
Documentation preview for this PR is ready! 🎉 |
|
Thank you! |
|
|
|
|
Doctest failures because deprecation warnings for the same |
gh-35230: `sage.rings.function_field`: Modularization fixes <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes #1234" use "Introduce new method to calculate 1+1" --> ### 📚 Description - We split out `.derivations` (which uses modules) from `.maps` (which doesn't). - We separate the implementation of rational function fields (which do not need Singular for Gröbner basis calculations) from the implementation of more complicated function fields (which do). - We move some imports into methods. This is for modularization purposes: - Part of #29705 <!-- Describe your changes here in detail --> <!-- Why is this change required? What problem does it solve? --> <!-- If it resolves an open issue, please link to the issue here. For example "Closes #1337" --> ### 📝 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. - [ ] 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: ... --> - Depends on #35237 (for the feature `sage.libs.singular`) - Depends on #35119 (to preempt merge conflicts) URL: #35230 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe
gh-35266: `sage.graphs`: Add `# optional` doctest tags for modularization <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes #1234" use "Introduce new method to calculate 1+1" --> ### 📚 Description <!-- Describe your changes here in detail --> <!-- Why is this change required? What problem does it solve? --> <!-- If it resolves an open issue, please link to the issue here. For example "Closes #1337" --> These tags make it possible/meaningful to doctest `sage.graphs` even when some "standard" packages (`networkx`, `numpy`, the modularized distribution packaging providing `sage.groups`) are not installed. - Part of #29705 - Split out from #34998 ### 📝 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: ... --> This is just one commit on top of: - #35237 URL: #35266 Reported by: Matthias Köppe Reviewer(s): David Coudert, Dima Pasechnik, Matthias Köppe
gh-35267: `sage.manifolds`, `sage.tensor`: Add `# optional` doctest tags for modularization <!-- ^^^^^ Please provide a concise, informative and self-explanatory title. Don't put issue numbers in there, do this in the PR body below. For example, instead of "Fixes #1234" use "Introduce new method to calculate 1+1" --> ### 📚 Description <!-- Describe your changes here in detail --> <!-- Why is this change required? What problem does it solve? --> <!-- If it resolves an open issue, please link to the issue here. For example "Closes #1337" --> Adding tags that make it possible/meaningful to doctest `sage.manifolds`, `sage.tensor` even when some "standard" packages (`pplpy`, the modularized distribution packaging providing `sage.symbolic` and `sage.manifolds`) are not installed. Also taking care of `sage.geometry.riemannian_manifolds`. - Part of #29705 - Split out from #34998 ### 📝 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: ... --> This is just two commits on top of: - #35237 URL: #35267 Reported by: Matthias Köppe Reviewer(s): Eric Gourgoulhon
sagemathgh-35396: Activate/fix rpy2 tests <!-- Please provide a concise, informative and self-explanatory title. --> <!-- Don't put issue numbers in the title. Put it in the Description below. --> <!-- For example, instead of "Fixes sagemath#12345", use "Add a new method to multiply two integers" --> ### 📚 Description <!-- Describe your changes here in detail. --> As a follow-up on: - sagemath#35237 we make `rpy2` a dynamically detected feature, enabling the automatic run of doctests tagged `# optional - rpy2`; we use a file-level doctest tag for the `r.py` file. We also update the spkg documentation for sagemath#35347 <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> Resolves sagemath#35347 <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. It should be `[x]` not `[x ]`. --> - [x] The title is concise, informative, and self-explanatory. - [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 accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#35237 <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#35396 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe
sagemathgh-35396: Activate/fix rpy2 tests <!-- Please provide a concise, informative and self-explanatory title. --> <!-- Don't put issue numbers in the title. Put it in the Description below. --> <!-- For example, instead of "Fixes sagemath#12345", use "Add a new method to multiply two integers" --> ### 📚 Description <!-- Describe your changes here in detail. --> As a follow-up on: - sagemath#35237 we make `rpy2` a dynamically detected feature, enabling the automatic run of doctests tagged `# optional - rpy2`; we use a file-level doctest tag for the `r.py` file. We also update the spkg documentation for sagemath#35347 <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> Resolves sagemath#35347 <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. It should be `[x]` not `[x ]`. --> - [x] The title is concise, informative, and self-explanatory. - [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 accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#35237 <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#35396 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe
sagemathgh-35396: Activate/fix rpy2 tests <!-- Please provide a concise, informative and self-explanatory title. --> <!-- Don't put issue numbers in the title. Put it in the Description below. --> <!-- For example, instead of "Fixes sagemath#12345", use "Add a new method to multiply two integers" --> ### 📚 Description <!-- Describe your changes here in detail. --> As a follow-up on: - sagemath#35237 we make `rpy2` a dynamically detected feature, enabling the automatic run of doctests tagged `# optional - rpy2`; we use a file-level doctest tag for the `r.py` file. We also update the spkg documentation for sagemath#35347 <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> Resolves sagemath#35347 <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. It should be `[x]` not `[x ]`. --> - [x] The title is concise, informative, and self-explanatory. - [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 accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#35237 <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#35396 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe
sagemathgh-35396: Activate/fix rpy2 tests <!-- Please provide a concise, informative and self-explanatory title. --> <!-- Don't put issue numbers in the title. Put it in the Description below. --> <!-- For example, instead of "Fixes sagemath#12345", use "Add a new method to multiply two integers" --> ### 📚 Description <!-- Describe your changes here in detail. --> As a follow-up on: - sagemath#35237 we make `rpy2` a dynamically detected feature, enabling the automatic run of doctests tagged `# optional - rpy2`; we use a file-level doctest tag for the `r.py` file. We also update the spkg documentation for sagemath#35347 <!-- Why is this change required? What problem does it solve? --> <!-- If this PR resolves an open issue, please link to it here. For example "Fixes sagemath#12345". --> Resolves sagemath#35347 <!-- If your change requires a documentation PR, please link it appropriately. --> ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. It should be `[x]` not `[x ]`. --> - [x] The title is concise, informative, and self-explanatory. - [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 accordingly. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on - sagemath#12345: short description why this is a dependency - sagemath#34567: ... --> - Depends on sagemath#35237 <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: sagemath#35396 Reported by: Matthias Köppe Reviewer(s): Kwankyu Lee, Matthias Köppe
📚 Description
This is for the modularization effort, in particular:
We also add missing copyright headers and update existing copyrights in
sage.features.📝 Checklist
⌛ Dependencies