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

Meta-ticket: Add packages from 3-manifolds / computop #31176

Open
mkoeppe opened this issue Jan 3, 2021 · 11 comments
Open

Meta-ticket: Add packages from 3-manifolds / computop #31176

mkoeppe opened this issue Jan 3, 2021 · 11 comments

Comments

@mkoeppe
Copy link
Member

mkoeppe commented Jan 3, 2021

https://github.com/3-manifolds/sagedocker/tree/master/sage/scripts

CC: @NathanDunfield @culler @dimpase @slel

Component: packages: optional

Issue created by migration from https://trac.sagemath.org/ticket/31176

@mkoeppe mkoeppe added this to the sage-9.3 milestone Jan 3, 2021
@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@NathanDunfield
Copy link

comment:3

It should be noted that SnapPy, nor any of the other software at ​https://github.com/3-manifolds, actually depends on, or even uses, (py)graphviz or ipympl. A certain amount of the stuff in that Docker image is just there because I used it in some project or other ;-).

All outside dependencies of SnapPy itself are already included in sage. That is,

sage -pip install --no-deps snappy spherogram plink FXrays snappy_manifolds

would be a completely functional "optional spkg" for SnapPy.

@NathanDunfield
Copy link

comment:4

The --no-deps flag is just there to prevent it from pulling in cypari (!= cypari2). In fact, just sage -pip install snappy does the trick but installs the (unused even by SnapPy in this context) cypari module. Unfortunately, pip does not seem to permit you to require one of a list of modules e.g. cypari|cypari2, cf sagemath/cypari2#19 (comment).

@mkoeppe

This comment has been minimized.

@mkoeppe mkoeppe changed the title Add packages from 3-manifolds / computop Meta-ticket: Add packages from 3-manifolds / computop Jan 4, 2021
@mkoeppe
Copy link
Member Author

mkoeppe commented Jan 4, 2021

comment:6

Replying to @NathanDunfield:

... unused even by SnapPy in this context ...

Sounds like cypari should be an extras_require?

@NathanDunfield
Copy link

comment:7

Replying to @mkoeppe:

... unused even by SnapPy in this context ...

Sounds like cypari should be an extras_require?

Unfortunately, outside of Sage, SnapPy does use cypari very heavily; it is just that inside of Sage, it uses cypari2 instead. The two modules provide identical functionality, but cypari is statically linked (and includes an embedded copy of cysignals) whereas cypari2 relies on the external dynamic library libpari.

(In case you're curious, the reason cypari is statically linked is so we can build self-contained binary wheels to post on PyPI, including for Windows (native, not cygwin), and ship stand-alone SnapPy apps for macOS and Windows.)

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe

This comment has been minimized.

@mkoeppe
Copy link
Member Author

mkoeppe commented Mar 24, 2021

comment:12

Sage development has entered the release candidate phase for 9.3. Setting a new milestone for this ticket based on a cursory review of ticket status, priority, and last modification date.

@mkoeppe mkoeppe modified the milestones: sage-9.3, sage-9.4 Mar 24, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.4, sage-9.5 Aug 9, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.5, sage-9.6 Dec 18, 2021
@mkoeppe mkoeppe modified the milestones: sage-9.6, sage-9.7 May 3, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.7, sage-9.8 Aug 6, 2022
@mkoeppe mkoeppe modified the milestones: sage-9.8, sage-9.9 Jan 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants