Skip to content
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

sage --package: Multiple tarballs, binary wheels; build/pkgs/jsonschema: Update; clarabel: Change to binary wheel #38219

Open
wants to merge 53 commits into
base: develop
Choose a base branch
from

Conversation

mkoeppe
Copy link
Member

@mkoeppe mkoeppe commented Jun 14, 2024

In particular, sage --package create --pypi --source wheel can now do platform-dependent wheels

This enables, for example, the use of Rust-based packages, which is increasingly popular https://groups.google.com/g/sage-devel/c/JiSryImYGe0 @guojing0

As illustrations,

  • we update jsonschema, which now has the Rust-based package rpds_py as a dependency, which we supply as a platform-dependent wheel;
  • we change clarabel, the Rust-based package which will become the default interior point solver in a CVXpy update, to a platform-dependent wheel package.

We add a policy for standard packages from binary wheels to the Developer Guide. Discussion: https://groups.google.com/g/sage-devel/c/vFsNl87zLxo

📝 Checklist

  • 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

@mkoeppe mkoeppe self-assigned this Jun 14, 2024
Copy link

github-actions bot commented Jun 15, 2024

Documentation preview for this PR (built with commit fdc5453; changes) is ready! 🎉
This preview will update shortly after each push to this PR.

@mkoeppe mkoeppe marked this pull request as ready for review June 15, 2024 02:07
@saraedum

This comment was marked as off-topic.

@saraedum saraedum added disputed PR is waiting for community vote, see https://groups.google.com/g/sage-devel/c/IgBYUJl33SQ and removed s: positive review labels Aug 23, 2024
@saraedum
Copy link
Member

I started a discussion about the "disputed" label in this issue: #38551

@kwankyu

This comment was marked as off-topic.

@mkoeppe

This comment was marked as off-topic.

@mkoeppe

This comment was marked as off-topic.

@mkoeppe mkoeppe added s: positive review and removed disputed PR is waiting for community vote, see https://groups.google.com/g/sage-devel/c/IgBYUJl33SQ labels Aug 23, 2024
@mkoeppe

This comment was marked as off-topic.

@saraedum

This comment was marked as off-topic.

@saraedum saraedum added disputed PR is waiting for community vote, see https://groups.google.com/g/sage-devel/c/IgBYUJl33SQ and removed s: positive review labels Aug 24, 2024
@mkoeppe

This comment was marked as off-topic.

@mkoeppe mkoeppe added s: positive review and removed disputed PR is waiting for community vote, see https://groups.google.com/g/sage-devel/c/IgBYUJl33SQ labels Aug 24, 2024
@mkoeppe
Copy link
Member Author

mkoeppe commented Aug 24, 2024

I've marked discussions of procedure as off-topic. See https://groups.google.com/g/sage-devel/c/Sm-HG9zQTQY/m/Ffs3CIPMAgAJ for explanation of the purpose.

@kwankyu

This comment was marked as off-topic.

@mkoeppe
Copy link
Member Author

mkoeppe commented Aug 25, 2024

@kwankyu As you withdraw your positive review, the PR is in "needs review" status now.

@mkoeppe

This comment was marked as off-topic.

vbraun pushed a commit to vbraun/sage that referenced this pull request Aug 27, 2024
…er_sphinx`

    
<!-- ^ 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". -->

`jupyter_sphinx` is only needed for the live documentation and for some
illustrations in `src/doc/en/tutorial/latex.rst`.

We conditionalize the use of this extension using a Feature.

`configure --disable-notebook` now also disables `jupyter_sphinx`, to
avoid pulling in lots of Jupyter packages via its dependencies
(including `jsonschema`, which has gotten itself a Rust-based
dependency, see sagemath#38219).

This implements the policy for use of platform-dependent wheels proposed
in sagemath#38219 ("if a platform-dependent ``wheel`` package is a standard
package, there must be a ``configure`` option that disables it").

We also repair the mechanism for conditional documentation based on
feature tags.
In particular, the link for Boolean polynomials is restored.
https://doc-pr-38224--
sagemath.netlify.app/html/en/reference/polynomial_rings/#boolean-
polynomials

### 📝 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.
- [x] 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#38468 (merged here)
    
URL: sagemath#38224
Reported by: Matthias Köppe
Reviewer(s): Kwankyu Lee
vbraun pushed a commit to vbraun/sage that referenced this pull request Aug 28, 2024
…er_sphinx`

    
<!-- ^ 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". -->

`jupyter_sphinx` is only needed for the live documentation and for some
illustrations in `src/doc/en/tutorial/latex.rst`.

We conditionalize the use of this extension using a Feature.

`configure --disable-notebook` now also disables `jupyter_sphinx`, to
avoid pulling in lots of Jupyter packages via its dependencies
(including `jsonschema`, which has gotten itself a Rust-based
dependency, see sagemath#38219).

This implements the policy for use of platform-dependent wheels proposed
in sagemath#38219 ("if a platform-dependent ``wheel`` package is a standard
package, there must be a ``configure`` option that disables it").

We also repair the mechanism for conditional documentation based on
feature tags.
In particular, the link for Boolean polynomials is restored.
https://doc-pr-38224--
sagemath.netlify.app/html/en/reference/polynomial_rings/#boolean-
polynomials

### 📝 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.
- [x] 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#38468 (merged here)
    
URL: sagemath#38224
Reported by: Matthias Köppe
Reviewer(s): Kwankyu Lee
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants