Opened 6 months ago
Last modified 3 months ago
#31176 new enhancement
Meta-ticket: Add packages from 3-manifolds / computop
Reported by: | mkoeppe | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | sage-9.4 |
Component: | packages: optional | Keywords: | |
Cc: | dunfield, culler, dimpase, slelievre | Merged in: | |
Authors: | Reviewers: | ||
Report Upstream: | N/A | Work issues: | |
Branch: | Commit: | ||
Dependencies: | Stopgaps: |
Description (last modified by )
https://github.com/3-manifolds/sagedocker/tree/master/sage/scripts
- #31177 Add
graphviz
,pygraphviz
packages - #31179 Add package
ipympl
- interactive features of matplotlib in the Jupyter notebook and in JupyterLab - #31180 Add
snappy
as a pip package (superseded #20739) - #31206 script packages for tk, python
_tkinter
module, update documentation - #31456 Add package
regina
(and prerequisite script packages)
Change History (12)
comment:1 Changed 6 months ago by
- Description modified (diff)
comment:2 Changed 6 months ago by
- Description modified (diff)
comment:3 Changed 6 months ago by
comment:4 follow-up: ↓ 6 Changed 6 months ago by
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 https://github.com/sagemath/cypari2/issues/19#issuecomment-699071738.
comment:5 Changed 6 months ago by
- Description modified (diff)
- Summary changed from Add packages from 3-manifolds / computop to Meta-ticket: Add packages from 3-manifolds / computop
comment:6 in reply to: ↑ 4 ; follow-up: ↓ 7 Changed 6 months ago by
Replying to dunfield:
... unused even by
SnapPy
in this context ...
Sounds like cypari
should be an extras_require
?
comment:7 in reply to: ↑ 6 Changed 6 months ago by
Replying to mkoeppe:
... unused even by
SnapPy
in this context ...Sounds like
cypari
should be anextras_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.)
comment:8 Changed 6 months ago by
- Description modified (diff)
comment:9 Changed 4 months ago by
- Description modified (diff)
comment:10 Changed 4 months ago by
- Cc slelievre added
comment:11 Changed 4 months ago by
- Description modified (diff)
comment:12 Changed 3 months ago by
- Milestone changed from sage-9.3 to sage-9.4
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.
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
oripympl
. 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 insage
. That is,would be a completely functional "optional spkg" for
SnapPy
.