Skip to content

Conversation

@mkoeppe
Copy link

@mkoeppe mkoeppe commented Nov 11, 2025

📝 Summary

Map the namespace sage to the package https://pypi.org/project/passagemath-standard/

🔍 Description of Changes

The default mapping by marimo for the namespace sage leads to the uninstallable dummy package https://pypi.org/project/sage/

Following the instructions at https://docs.marimo.io/guides/editor_features/package_management/, this PR provides a mapping of the namespace sage to the pip-installable package passagemath-standard, which provides this namespace via its numerous dependencies, each pip-installable from binary wheels on PyPI. @akshayka

For a more fine-grained mapping to the modularized pip-installable packages of passagemath, progress on the following issue will be needed.

📋 Checklist

  • I have read the contributor guidelines.
  • For large changes, or changes that affect the public API: this change was discussed or approved through an issue, on Discord, or the community discussions (Please provide a link if applicable).
  • I have added tests for the changes made.
  • I have run the code and verified that it works as expected.

@mkoeppe mkoeppe requested a review from dmadisetti as a code owner November 11, 2025 22:22
@vercel
Copy link

vercel bot commented Nov 11, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
marimo-docs Ready Ready Preview Comment Nov 11, 2025 10:23pm

@github-actions
Copy link

github-actions bot commented Nov 11, 2025

All contributors have signed the CLA ✍️ ✅
Posted by the CLA Assistant Lite bot.

@mkoeppe
Copy link
Author

mkoeppe commented Nov 11, 2025

I have read the CLA Document and I hereby sign the CLA

"rsbackends": "RSFile",
"ruamel": "ruamel.base",
"saga": "saga-python",
"sage": "passagemath-standard",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the PR. Isn't the standard distribution sagemath-standard?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sagemath-standard was discontinued by the SageMath project after August 2025, see https://pypi.org/project/sagemath-standard/#history

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The SageMath project now provides only https://pypi.org/project/sagemath, but that does not provide binary wheels, as can be seen in https://pypi.org/project/sagemath/#files, so it is not suitable in the molab cloud.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, ok. We can also pre-package the bins for molab, but I think the official sage distribution is what most users would expect

Copy link
Author

@mkoeppe mkoeppe Nov 11, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The official Sage distribution is not compatible (any more...) with installation via pip / uv.

Edit: see passagemath/passagemath#1508 (comment)

@dmadisetti
Copy link
Collaborator

I'm going to close this out in favour of #7153 - but thank you for your enthusiasm. We'll make sure that sage works seamlessly on molab

@dmadisetti dmadisetti closed this Nov 12, 2025
@mkoeppe
Copy link
Author

mkoeppe commented Nov 12, 2025

I strongly recommend actually testing the "sage" build via sagemath suggested in #7153 and not rely on what is claimed there before making this decision. The person who opened it is not a reliable narrator.

As you can see in the instructions that the person there is referring to, numerous dependencies (system packages) need to be installed, either using conda, or from a suitable Linux distribution before "pip install" / "uv install" can succeed. It will also need these system packages at runtime, not just a prebuilt wheel. It is unlikely that the marimo project will want to take on the maintenance of this.

Claims that the SageMath project is "working on providing binary wheels" are false. On the contrary, the existing infrastructure for making binary wheels, such as https://pypi.org/project/sagemath-objects/10.5/#files (from December 2024), was discontinued in early 2025. References on this:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants