passagemath-environment 10.4.60__py3-none-any.whl → 10.4.62__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage +1 -1
- {passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-env +5 -2
- {passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-version.sh +3 -3
- {passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/METADATA +5 -5
- {passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/RECORD +18 -16
- sage/env.py +14 -4
- sage/features/databases.py +13 -4
- sage/features/info.py +30 -0
- sage/features/macaulay2.py +8 -4
- sage/features/sagemath.py +2 -1
- sage/features/sympow.py +44 -0
- sage/misc/viewer.py +2 -1
- sage/version.py +3 -3
- {passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-num-threads.py +0 -0
- {passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-python +0 -0
- {passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-venv-config +0 -0
- {passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/WHEEL +0 -0
- {passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/top_level.txt +0 -0
@@ -173,7 +173,7 @@ if [ -x "${SELF}-venv-config" ]; then
|
|
173
173
|
if [ -z "$SAGE_VENV" ]; then
|
174
174
|
export SAGE_VENV=$("${SELF}-venv-config" SAGE_VENV)
|
175
175
|
fi
|
176
|
-
SAGE_WHEELS_PATH=$("${SELF}-venv-config" SAGE_WHEELS_PATH)
|
176
|
+
SAGE_WHEELS_PATH=$("${SELF}-venv-config" SAGE_WHEELS_PATH 2>/dev/null)
|
177
177
|
fi
|
178
178
|
if [ -f "${SELF}-env-config" ]; then
|
179
179
|
# As of Issue #22731, sage-env-config is optional.
|
{passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-env
RENAMED
@@ -386,12 +386,15 @@ if [ -n "$SAGE_LOCAL" ]; then
|
|
386
386
|
# "Toolchains/XcodeDefault.xctoolchain/usr/bin/". (See #37237.)
|
387
387
|
if [ -z "$LD" ]; then
|
388
388
|
# Running xcode-select on a system with no toolchain writes an
|
389
|
-
# error message to stderr, so redirect stderr to /dev/null.
|
389
|
+
# error message to stderr, so redirect stderr to /dev/null.
|
390
390
|
XCODE_PATH=$(/usr/bin/xcode-select -p 2> /dev/null)
|
391
391
|
if [ -n $XCODE_PATH ]; then
|
392
392
|
if [ -x "$XCODE_PATH/usr/bin/ld-classic" -o \
|
393
393
|
-x "$XCODE_PATH/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld-classic" ]; then
|
394
|
-
|
394
|
+
# Add -ld_classic only if -ld_classic is not deprecated.
|
395
|
+
if [ -z "$(ld -ld_classic 2>&1 | grep 'ld_classic is deprecated')" ]; then
|
396
|
+
LDFLAGS="$LDFLAGS -Wl,-ld_classic"
|
397
|
+
fi
|
395
398
|
fi
|
396
399
|
else
|
397
400
|
# On a macOS system with no toolchain we don't want this script
|
@@ -4,6 +4,6 @@
|
|
4
4
|
# which stops "setup.py develop" from rewriting it as a Python file.
|
5
5
|
:
|
6
6
|
# This file is auto-generated by the sage-update-version script, do not edit!
|
7
|
-
SAGE_VERSION='10.4.
|
8
|
-
SAGE_RELEASE_DATE='2024-11-
|
9
|
-
SAGE_VERSION_BANNER='passagemath version 10.4.
|
7
|
+
SAGE_VERSION='10.4.62'
|
8
|
+
SAGE_RELEASE_DATE='2024-11-17'
|
9
|
+
SAGE_VERSION_BANNER='passagemath version 10.4.62, Release Date: 2024-11-17'
|
{passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/METADATA
RENAMED
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: passagemath-environment
|
3
|
-
Version: 10.4.
|
3
|
+
Version: 10.4.62
|
4
4
|
Summary: passagemath: System and software environment
|
5
5
|
Author-email: The Sage Developers <sage-support@googlegroups.com>
|
6
6
|
Maintainer: Matthias Köppe, passagemath contributors
|
@@ -29,20 +29,20 @@ Classifier: Topic :: Scientific/Engineering :: Mathematics
|
|
29
29
|
Requires-Python: <3.13,>=3.9
|
30
30
|
Description-Content-Type: text/x-rst
|
31
31
|
Provides-Extra: conf
|
32
|
-
Requires-Dist: passagemath-conf~=10.4.
|
32
|
+
Requires-Dist: passagemath-conf~=10.4.62.0; extra == "conf"
|
33
33
|
Provides-Extra: cython
|
34
34
|
Requires-Dist: cython!=3.0.3,<4.0,>=3.0; extra == "cython"
|
35
35
|
Requires-Dist: cython<3.1.0,>=3.0.8; extra == "cython"
|
36
36
|
Provides-Extra: docbuild
|
37
|
-
Requires-Dist: passagemath-docbuild~=10.4.
|
37
|
+
Requires-Dist: passagemath-docbuild~=10.4.62.0; extra == "docbuild"
|
38
38
|
Provides-Extra: pytest
|
39
39
|
Requires-Dist: pytest; extra == "pytest"
|
40
40
|
Provides-Extra: rst2ipynb
|
41
41
|
Requires-Dist: rst2ipynb>=0.2.2; extra == "rst2ipynb"
|
42
42
|
Provides-Extra: sage
|
43
|
-
Requires-Dist: passagemath-standard~=10.4.
|
43
|
+
Requires-Dist: passagemath-standard~=10.4.62.0; extra == "sage"
|
44
44
|
Provides-Extra: sws2rst
|
45
|
-
Requires-Dist: passagemath-sws2rst~=10.4.
|
45
|
+
Requires-Dist: passagemath-sws2rst~=10.4.62.0; extra == "sws2rst"
|
46
46
|
Provides-Extra: tox
|
47
47
|
Requires-Dist: tox>=4.11; extra == "tox"
|
48
48
|
|
{passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/RECORD
RENAMED
@@ -1,12 +1,12 @@
|
|
1
|
-
passagemath_environment-10.4.
|
2
|
-
passagemath_environment-10.4.
|
3
|
-
passagemath_environment-10.4.
|
4
|
-
passagemath_environment-10.4.
|
5
|
-
passagemath_environment-10.4.
|
6
|
-
passagemath_environment-10.4.
|
1
|
+
passagemath_environment-10.4.62.data/scripts/sage,sha256=IjVLatRQBOGrVkqum1vDra9CZ0N7fkT0qfZNqJQRews,43367
|
2
|
+
passagemath_environment-10.4.62.data/scripts/sage-env,sha256=bJMK-CihfTEImHt86_rR8vAlhTHpuzCNKvdv9MsDM6A,23497
|
3
|
+
passagemath_environment-10.4.62.data/scripts/sage-num-threads.py,sha256=U09CpRe4aXkHNWHoZSYoQwYRASrvoT-l-zslRiGVbWc,3128
|
4
|
+
passagemath_environment-10.4.62.data/scripts/sage-python,sha256=gXVskicH9NJtE5apMm1U-ZWDzWiz3Rm6dFBND2y60gI,28
|
5
|
+
passagemath_environment-10.4.62.data/scripts/sage-venv-config,sha256=XeQOA2wIaIfUaEf9aPFUMQvr2s-aKKSLaBZORoSpP3Y,1371
|
6
|
+
passagemath_environment-10.4.62.data/scripts/sage-version.sh,sha256=hF-Y53LB-FjMFaaAzo4BN2OwtbqqcX9TXMl15a7KJAY,403
|
7
7
|
sage/all__sagemath_environment.py,sha256=d44XIAz0tXfPdQxa3dGJvF2WEf6stMQxLUFL0GC1Sv4,188
|
8
|
-
sage/env.py,sha256=
|
9
|
-
sage/version.py,sha256=
|
8
|
+
sage/env.py,sha256=QkNRMUzt5UqKIHmZrNSe4F9tzKUIzrKse77GwXUPlWU,19317
|
9
|
+
sage/version.py,sha256=hJY5wyH6gDnrKhqIr-ohps0vdYSj6bECeV3N3DFHwWQ,279
|
10
10
|
sage/features/__init__.py,sha256=xBqjHj-K85olQ5HVmNq1oSPn2W9ol1a1-FjElSb0sGQ,36977
|
11
11
|
sage/features/all.py,sha256=6YQEvdLvw6Ipb0u-PLsB97wWnHj28qBYoz3fGbgrFmg,4236
|
12
12
|
sage/features/bliss.py,sha256=SeLzXDEH30tgup593E42VJGGpR2gpRRI4lBt0ufCaGc,2447
|
@@ -14,7 +14,7 @@ sage/features/cddlib.py,sha256=FWpGnOTB6W0tFbd62olqpbG4IzImhuxOWB7rkGgjwIw,1381
|
|
14
14
|
sage/features/coxeter3.py,sha256=FwmbW2JsER7j8KGonUEDe0Mfn-5QndDY2gGLcS84gso,1475
|
15
15
|
sage/features/csdp.py,sha256=gen-XGjD-BcbOojILWv9L-T1zamb0_qFRlshk0k_j-k,2849
|
16
16
|
sage/features/cython.py,sha256=iCIV3-Btwv6vX2L15cbCyHuNx71-xcLcpwt6wCYC1Xc,1291
|
17
|
-
sage/features/databases.py,sha256=
|
17
|
+
sage/features/databases.py,sha256=oiQN0Bo2QwfOTibcsF8vXRZXmAlE6Lh5IihT0KUrTK4,10992
|
18
18
|
sage/features/dvipng.py,sha256=SJCwJNUamQuPL2-bOzT3JrA8QMdJ0t20EB9n5ogXnHE,1330
|
19
19
|
sage/features/ecm.py,sha256=qMnrunufXVKz104N-eY_3fy4Sgdzd0ohs1kXOeHvXFI,1313
|
20
20
|
sage/features/ffmpeg.py,sha256=wtJL6t56Oe1D4k1ChZjZ6LP_kx3pGPOFkYCjvr28JPM,4762
|
@@ -28,6 +28,7 @@ sage/features/graph_generators.py,sha256=LSoVbz7yMZDur68qz-s-YVz3xT72rhePpg8s9GJ
|
|
28
28
|
sage/features/graphviz.py,sha256=BY9LU2-p9a3uvw8L07CVDDMiznyzJajFi1W7fb0T2pQ,3516
|
29
29
|
sage/features/igraph.py,sha256=1Vf1Fo_e4iFoihBYqKxNQL70Mhokir9xX6ADd3XGudU,1492
|
30
30
|
sage/features/imagemagick.py,sha256=GMTEXzGKkfIzVVwuX6JH-EREvHy_Z-XowN5SWd8pjgU,5236
|
31
|
+
sage/features/info.py,sha256=bTnbU8R626KyK6QNO5kt2_Gah-w2QFZ2HrNGHd9KbA8,729
|
31
32
|
sage/features/interfaces.py,sha256=5XPbHGOtH3khvXe2zl7kjR67YPq1Bhf7a6fv1d9s1z4,8295
|
32
33
|
sage/features/internet.py,sha256=he6OLOrLihRrkWCCKVwyBGZyXmU7XRP-ZWfUPR_A1C4,2074
|
33
34
|
sage/features/jmol.py,sha256=Gg7vTzNRJoPIQSbF25gifJvqHJDn0dm5HZTEA4TMdNA,1135
|
@@ -36,7 +37,7 @@ sage/features/kenzo.py,sha256=sHqSeagK7_p0RmSjQ8q-1kxIRxRsNa7jFSexAsr80Ks,2672
|
|
36
37
|
sage/features/latex.py,sha256=pyj57wpTfdTXFFsbIxr6OuOl0j5Sg1CrU_ZhxLIeLsI,9616
|
37
38
|
sage/features/latte.py,sha256=lmVKos8_f9UJjU1nSVuAWURM80fsYIv1n1do-5pCbd4,2787
|
38
39
|
sage/features/lrs.py,sha256=ru_VDo0Y6am54FQd9zqanhqoXnZXP2hudnkjD9GNNlI,5963
|
39
|
-
sage/features/macaulay2.py,sha256=
|
40
|
+
sage/features/macaulay2.py,sha256=cv3imBr1VSwglrlrbYzIOymAcXF7p5FOhBxrm5sjDSo,1565
|
40
41
|
sage/features/mcqd.py,sha256=GfllBC9A170B0z64bE3AZ9yLfUF8aTdQDgGhRwCnYGc,1397
|
41
42
|
sage/features/meataxe.py,sha256=9uYHmPzED2RGmK5ge56zJlnHDhKVQidPEbxLThSdiaw,1458
|
42
43
|
sage/features/mip_backends.py,sha256=vnTIYLCUy0XoM93OepBDl3cejJsMooLwRszO-3xAswg,3952
|
@@ -52,13 +53,14 @@ sage/features/polymake.py,sha256=Ix2qM0izHhBFa-IGTWjcbW9ofutbRP6FTL5p4buSgPU,142
|
|
52
53
|
sage/features/poppler.py,sha256=hNdYa03BxYYiFTk70RAzJtCYxp0VEjGqrWMDpDosp5w,2231
|
53
54
|
sage/features/qepcad.py,sha256=uCNCtBrBA3M6mTl8jQtE8yNfNombzq6FUDNCQAs3-OA,1276
|
54
55
|
sage/features/rubiks.py,sha256=8N54u2kShVqke1eRjLHBwqkENgc3vvfspI3h5gkPNKw,5261
|
55
|
-
sage/features/sagemath.py,sha256=
|
56
|
+
sage/features/sagemath.py,sha256=B57gyY4xzaHcJmqX49M86B4SUGdcvYjmrQISjFoiXH0,55206
|
56
57
|
sage/features/sat.py,sha256=XJXQPFU9PQRDwXVezC9j3iRJoDQSkWsI2b8F_fNNagk,2951
|
57
58
|
sage/features/singular.py,sha256=jyX5Pl-Zpo-I5kG0aKDFdPawMcM_S_Jv0QN7dsENNRg,1611
|
58
59
|
sage/features/sirocco.py,sha256=wWG1tWXFnUPY5XVL5eQXKSQiX4g-bwsMXekIltbVQFs,1452
|
59
60
|
sage/features/sphinx.py,sha256=52lO3muIkTYhmd_gdVsHEPMQeFWsbTHiky5z2E9mSPM,2299
|
60
61
|
sage/features/standard.py,sha256=Eh95Xj-swHqPvORXCntVmz0U1XxXqv7KpYdrUKJAdac,2036
|
61
62
|
sage/features/symengine_py.py,sha256=acVpHvjDe_Opl8iUAMbGaG13ROIjPEF9Fyn4HSn61Ek,1523
|
63
|
+
sage/features/sympow.py,sha256=QWKec1LKAHrFoFZSo3cK3-1PlBWDoVjKTSjosxMmyVk,1290
|
62
64
|
sage/features/tdlib.py,sha256=Lij2GGLbh0ja_fNYAff4ZozVi6lcD_5Dzn005IAgWBg,1260
|
63
65
|
sage/features/threejs.py,sha256=6oanR1omSvCAEDmwh1xiiPjFM648K66_oLQT6nyz_Q0,2368
|
64
66
|
sage/features/topcom.py,sha256=swLvRxLgXZ3zg6-y0Pbh9ci6vGqsVEoTXJXf-UI_8nA,2211
|
@@ -66,8 +68,8 @@ sage/misc/all__sagemath_environment.py,sha256=LG7rw2H1bgnbQpXTph34n1ULnjE3vu4jVi
|
|
66
68
|
sage/misc/package.py,sha256=xZF5iijW69X9DblpnLcYXQiRdjE7Uhu1MJ5eeq12T9o,19191
|
67
69
|
sage/misc/package_dir.py,sha256=zzL-ASJSn8oX_gejqMrHrTfesVt31vAp3g-ouZKiOks,26899
|
68
70
|
sage/misc/temporary_file.py,sha256=Z-0blAIrU1MAdpl3z8M_6n7-zj4Ac3NA-ULSIIKmCWU,19138
|
69
|
-
sage/misc/viewer.py,sha256=
|
70
|
-
passagemath_environment-10.4.
|
71
|
-
passagemath_environment-10.4.
|
72
|
-
passagemath_environment-10.4.
|
73
|
-
passagemath_environment-10.4.
|
71
|
+
sage/misc/viewer.py,sha256=Jm4pABqyMs1hvggLA0JZAiZ_26uaBtPpaRKQUTddVE4,11574
|
72
|
+
passagemath_environment-10.4.62.dist-info/METADATA,sha256=RHSVg2zAUTKeKvNp-FBygUMk6P0oV6peHwUCL266rVg,4126
|
73
|
+
passagemath_environment-10.4.62.dist-info/WHEEL,sha256=Mdi9PDNwEZptOjTlUcAth7XJDFtKrHYaQMPulZeBCiQ,91
|
74
|
+
passagemath_environment-10.4.62.dist-info/top_level.txt,sha256=hibFyzQHiLOMK68qL1OWsNKaXOmSXqZjeLTBem6Yy7I,5
|
75
|
+
passagemath_environment-10.4.62.dist-info/RECORD,,
|
sage/env.py
CHANGED
@@ -36,6 +36,7 @@ AUTHORS:
|
|
36
36
|
|
37
37
|
from typing import Optional
|
38
38
|
import sage
|
39
|
+
import platform
|
39
40
|
import os
|
40
41
|
import socket
|
41
42
|
import sys
|
@@ -165,7 +166,6 @@ def var(key: str, *fallbacks: Optional[str], force: bool = False) -> Optional[st
|
|
165
166
|
|
166
167
|
|
167
168
|
# system info
|
168
|
-
UNAME = var("UNAME", os.uname()[0])
|
169
169
|
HOSTNAME = var("HOSTNAME", socket.gethostname())
|
170
170
|
LOCAL_IDENTIFIER = var("LOCAL_IDENTIFIER", "{}.{}".format(HOSTNAME, os.getpid()))
|
171
171
|
|
@@ -207,12 +207,22 @@ SAGE_STARTUP_FILE = var("SAGE_STARTUP_FILE", join(DOT_SAGE, "init.sage"))
|
|
207
207
|
SAGE_ARCHFLAGS = var("SAGE_ARCHFLAGS", "unset")
|
208
208
|
SAGE_PKG_CONFIG_PATH = var("SAGE_PKG_CONFIG_PATH")
|
209
209
|
|
210
|
+
try:
|
211
|
+
import sage_wheels
|
212
|
+
except ImportError:
|
213
|
+
_sage_wheels_path = []
|
214
|
+
else:
|
215
|
+
_sage_wheels_path = sage_wheels.__path__
|
216
|
+
|
210
217
|
# colon-separated search path for databases.
|
211
218
|
SAGE_DATA_PATH = var("SAGE_DATA_PATH",
|
212
219
|
os.pathsep.join(filter(None, [
|
213
|
-
|
214
|
-
|
215
|
-
|
220
|
+
join(DOT_SAGE, "db"),
|
221
|
+
] + [
|
222
|
+
join(p, "share") for p in _sage_wheels_path
|
223
|
+
] + [
|
224
|
+
join(SAGE_SHARE, "sagemath"),
|
225
|
+
SAGE_SHARE,
|
216
226
|
])))
|
217
227
|
|
218
228
|
# database directories, the default is to search in SAGE_DATA_PATH
|
sage/features/databases.py
CHANGED
@@ -69,7 +69,7 @@ class DatabaseCremona(StaticFile):
|
|
69
69
|
from sage.env import CREMONA_MINI_DATA_DIR, CREMONA_LARGE_DATA_DIR
|
70
70
|
CREMONA_DATA_DIRS = set([CREMONA_MINI_DATA_DIR, CREMONA_LARGE_DATA_DIR])
|
71
71
|
CREMONA_DATA_DIRS.discard(None)
|
72
|
-
search_path = CREMONA_DATA_DIRS
|
72
|
+
search_path = list(CREMONA_DATA_DIRS) + sage_data_path("cremona")
|
73
73
|
|
74
74
|
spkg = "database_cremona_ellcurve"
|
75
75
|
spkg_type = "optional"
|
@@ -106,7 +106,10 @@ class DatabaseEllcurves(StaticFile):
|
|
106
106
|
True
|
107
107
|
"""
|
108
108
|
from sage.env import ELLCURVE_DATA_DIR
|
109
|
-
search_path =
|
109
|
+
search_path = []
|
110
|
+
if ELLCURVE_DATA_DIR is not None:
|
111
|
+
search_path.append(ELLCURVE_DATA_DIR)
|
112
|
+
search_path.extend(sage_data_path("ellcurves"))
|
110
113
|
|
111
114
|
StaticFile.__init__(self, "database_ellcurves",
|
112
115
|
filename='rank0',
|
@@ -136,7 +139,10 @@ class DatabaseGraphs(StaticFile):
|
|
136
139
|
True
|
137
140
|
"""
|
138
141
|
from sage.env import GRAPHS_DATA_DIR
|
139
|
-
search_path =
|
142
|
+
search_path = []
|
143
|
+
if GRAPHS_DATA_DIR is not None:
|
144
|
+
search_path.append(GRAPHS_DATA_DIR)
|
145
|
+
search_path.extend(sage_data_path("graphs"))
|
140
146
|
|
141
147
|
StaticFile.__init__(self, "database_graphs",
|
142
148
|
filename='graphs.db',
|
@@ -277,7 +283,10 @@ class DatabaseReflexivePolytopes(StaticFile):
|
|
277
283
|
'Hodge4d'
|
278
284
|
"""
|
279
285
|
from sage.env import POLYTOPE_DATA_DIR
|
280
|
-
search_path =
|
286
|
+
search_path = []
|
287
|
+
if POLYTOPE_DATA_DIR is not None:
|
288
|
+
search_path.append(POLYTOPE_DATA_DIR)
|
289
|
+
search_path.extend(sage_data_path("reflexive_polytopes"))
|
281
290
|
|
282
291
|
dirname = "Full3d"
|
283
292
|
if name == "polytopes_db_4d":
|
sage/features/info.py
ADDED
@@ -0,0 +1,30 @@
|
|
1
|
+
# sage_setup: distribution = sagemath-environment
|
2
|
+
r"""
|
3
|
+
Feature for testing the presence of ``info``, from GNU Info
|
4
|
+
"""
|
5
|
+
|
6
|
+
from . import Executable
|
7
|
+
|
8
|
+
class Info(Executable):
|
9
|
+
r"""
|
10
|
+
A :class:`~sage.features.Feature` describing the presence of :ref:`info <spkg_info>`.
|
11
|
+
|
12
|
+
EXAMPLES::
|
13
|
+
|
14
|
+
sage: from sage.features.info import Info
|
15
|
+
sage: Info()
|
16
|
+
Feature('info')
|
17
|
+
"""
|
18
|
+
def __init__(self):
|
19
|
+
r"""
|
20
|
+
TESTS::
|
21
|
+
|
22
|
+
sage: from sage.features.info import Info
|
23
|
+
sage: isinstance(Info(), Info)
|
24
|
+
True
|
25
|
+
"""
|
26
|
+
Executable.__init__(self, 'info', executable='info',
|
27
|
+
spkg='info', type='standard')
|
28
|
+
|
29
|
+
def all_features():
|
30
|
+
return [Info()]
|
sage/features/macaulay2.py
CHANGED
@@ -13,8 +13,9 @@ Feature for testing the presence of MACAULAY2
|
|
13
13
|
# *****************************************************************************
|
14
14
|
|
15
15
|
import subprocess
|
16
|
-
from . import Executable
|
16
|
+
from . import Executable, PythonModule
|
17
17
|
from . import FeatureTestResult
|
18
|
+
from .join_feature import JoinFeature
|
18
19
|
|
19
20
|
class Macaulay2(Executable):
|
20
21
|
r"""
|
@@ -24,7 +25,7 @@ class Macaulay2(Executable):
|
|
24
25
|
|
25
26
|
sage: from sage.features.macaulay2 import Macaulay2
|
26
27
|
sage: Macaulay2().is_present() # optional - macaulay2
|
27
|
-
FeatureTestResult('
|
28
|
+
FeatureTestResult('macaulay2_executable', True)
|
28
29
|
"""
|
29
30
|
def __init__(self):
|
30
31
|
r"""
|
@@ -34,9 +35,12 @@ class Macaulay2(Executable):
|
|
34
35
|
sage: isinstance(Macaulay2(), Macaulay2)
|
35
36
|
True
|
36
37
|
"""
|
37
|
-
Executable.__init__(self, "
|
38
|
+
Executable.__init__(self, "macaulay2_executable", executable='M2',
|
38
39
|
spkg='macaulay2')
|
39
40
|
|
40
41
|
|
41
42
|
def all_features():
|
42
|
-
return [
|
43
|
+
return [JoinFeature("macaulay2",
|
44
|
+
(Macaulay2(),
|
45
|
+
PythonModule('sage.interfaces.macaulay2')),
|
46
|
+
spkg='sagemath_macaulay2')]
|
sage/features/sagemath.py
CHANGED
@@ -102,7 +102,7 @@ class sagemath_doc_html(StaticFile):
|
|
102
102
|
filename='html',
|
103
103
|
search_path=(SAGE_DOC,),
|
104
104
|
spkg='sagemath_doc_html',
|
105
|
-
type='
|
105
|
+
type='optional')
|
106
106
|
|
107
107
|
|
108
108
|
class sage__all(PythonModule):
|
@@ -955,6 +955,7 @@ class sage__rings__number_field(JoinFeature):
|
|
955
955
|
Doctests that construct algebraic number fields should be marked ``# needs sage.rings.number_field``::
|
956
956
|
|
957
957
|
sage: # needs sage.rings.number_field
|
958
|
+
sage: x = polygen(ZZ, 'x')
|
958
959
|
sage: K.<cuberoot2> = NumberField(x^3 - 2)
|
959
960
|
sage: L.<cuberoot3> = K.extension(x^3 - 3)
|
960
961
|
sage: S.<sqrt2> = L.extension(x^2 - 2); S
|
sage/features/sympow.py
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
# sage_setup: distribution = sagemath-environment
|
2
|
+
r"""
|
3
|
+
Feature for testing the presence of ``sympow``
|
4
|
+
"""
|
5
|
+
|
6
|
+
# *****************************************************************************
|
7
|
+
# Copyright (C) 2024 Matthias Koeppe
|
8
|
+
#
|
9
|
+
# Distributed under the terms of the GNU General Public License (GPL)
|
10
|
+
# as published by the Free Software Foundation; either version 2 of
|
11
|
+
# the License, or (at your option) any later version.
|
12
|
+
# https://www.gnu.org/licenses/
|
13
|
+
# *****************************************************************************
|
14
|
+
|
15
|
+
import subprocess
|
16
|
+
|
17
|
+
from . import Executable
|
18
|
+
|
19
|
+
|
20
|
+
class Sympow(Executable):
|
21
|
+
r"""
|
22
|
+
A :class:`~sage.features.Feature` describing the presence of the ``sympow``
|
23
|
+
binary.
|
24
|
+
|
25
|
+
EXAMPLES::
|
26
|
+
|
27
|
+
sage: from sage.features.sympow import Sympow
|
28
|
+
sage: Sympow().is_present() # needs sympow
|
29
|
+
FeatureTestResult('sympow', True)
|
30
|
+
"""
|
31
|
+
def __init__(self):
|
32
|
+
r"""
|
33
|
+
TESTS::
|
34
|
+
|
35
|
+
sage: from sage.features.sympow import Sympow
|
36
|
+
sage: isinstance(Sympow(), Sympow)
|
37
|
+
True
|
38
|
+
"""
|
39
|
+
Executable.__init__(self, "sympow", executable='sympow',
|
40
|
+
spkg='sympow', type='standard')
|
41
|
+
|
42
|
+
|
43
|
+
def all_features():
|
44
|
+
return [Sympow()]
|
sage/misc/viewer.py
CHANGED
@@ -26,6 +26,7 @@ Functions and classes
|
|
26
26
|
---------------------
|
27
27
|
"""
|
28
28
|
|
29
|
+
import platform
|
29
30
|
from sage.structure.sage_object import SageObject
|
30
31
|
|
31
32
|
|
@@ -66,7 +67,7 @@ def default_viewer(viewer=None):
|
|
66
67
|
PDF_VIEWER = BROWSER
|
67
68
|
PNG_VIEWER = BROWSER
|
68
69
|
|
69
|
-
elif
|
70
|
+
elif platform.system() == 'Darwin':
|
70
71
|
# Simple on OS X, since there is an open command that opens
|
71
72
|
# anything, using the user's preferences.
|
72
73
|
BROWSER = 'open -W'
|
sage/version.py
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
# sage_setup: distribution = sagemath-environment
|
2
2
|
# Sage version information for Python scripts
|
3
3
|
# This file is auto-generated by the sage-update-version script, do not edit!
|
4
|
-
version = '10.4.
|
5
|
-
date = '2024-11-
|
6
|
-
banner = 'passagemath version 10.4.
|
4
|
+
version = '10.4.62'
|
5
|
+
date = '2024-11-17'
|
6
|
+
banner = 'passagemath version 10.4.62, Release Date: 2024-11-17'
|
File without changes
|
{passagemath_environment-10.4.60.data → passagemath_environment-10.4.62.data}/scripts/sage-python
RENAMED
File without changes
|
File without changes
|
{passagemath_environment-10.4.60.dist-info → passagemath_environment-10.4.62.dist-info}/WHEEL
RENAMED
File without changes
|
File without changes
|