passagemath-environment 10.4.61__tar.gz → 10.4.63__tar.gz

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.
Files changed (115) hide show
  1. {passagemath_environment-10.4.61/passagemath_environment.egg-info → passagemath_environment-10.4.63}/PKG-INFO +5 -5
  2. passagemath_environment-10.4.63/VERSION.txt +1 -0
  3. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-env +5 -2
  4. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-version.sh +3 -3
  5. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63/passagemath_environment.egg-info}/PKG-INFO +5 -5
  6. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/passagemath_environment.egg-info/SOURCES.txt +2 -0
  7. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/passagemath_environment.egg-info/requires.txt +4 -4
  8. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/pyproject.toml +4 -4
  9. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/env.py +1 -1
  10. passagemath_environment-10.4.63/sage/features/eclib.py +46 -0
  11. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/ecm.py +9 -5
  12. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/fricas.py +10 -4
  13. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/frobby.py +9 -5
  14. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/gfan.py +10 -5
  15. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/giac.py +9 -4
  16. passagemath_environment-10.4.63/sage/features/info.py +30 -0
  17. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/macaulay2.py +8 -4
  18. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/msolve.py +7 -3
  19. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/sagemath.py +1 -0
  20. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/sympow.py +8 -4
  21. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/misc/viewer.py +2 -1
  22. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/version.py +3 -3
  23. passagemath_environment-10.4.61/VERSION.txt +0 -1
  24. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/MANIFEST.in +0 -0
  25. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/README.rst +0 -0
  26. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/math-readline +0 -0
  27. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage +0 -0
  28. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-cachegrind +0 -0
  29. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-callgrind +0 -0
  30. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-cleaner +0 -0
  31. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-coverage +0 -0
  32. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-cython +0 -0
  33. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-env-config.in +0 -0
  34. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-eval +0 -0
  35. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-fixdoctests +0 -0
  36. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-grep +0 -0
  37. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-grepdoc +0 -0
  38. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-inline-fortran +0 -0
  39. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-ipynb2rst +0 -0
  40. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-ipython +0 -0
  41. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-list-packages +0 -0
  42. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-massif +0 -0
  43. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-notebook +0 -0
  44. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-num-threads.py +0 -0
  45. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-omega +0 -0
  46. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-preparse +0 -0
  47. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-python +0 -0
  48. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-run +0 -0
  49. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-run-cython +0 -0
  50. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-runtests +0 -0
  51. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-src-env-config.in +0 -0
  52. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-startuptime.py +0 -0
  53. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-update-version +0 -0
  54. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-valgrind +0 -0
  55. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/bin/sage-venv-config +0 -0
  56. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/passagemath_environment.egg-info/dependency_links.txt +0 -0
  57. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/passagemath_environment.egg-info/top_level.txt +0 -0
  58. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/pyproject.toml.m4 +0 -0
  59. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/requirements-editable.txt.m4 +0 -0
  60. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/requirements.txt.m4 +0 -0
  61. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/all__sagemath_environment.py +0 -0
  62. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/__init__.py +0 -0
  63. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/all.py +0 -0
  64. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/bliss.py +0 -0
  65. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/cddlib.py +0 -0
  66. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/coxeter3.py +0 -0
  67. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/csdp.py +0 -0
  68. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/cython.py +0 -0
  69. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/databases.py +0 -0
  70. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/dvipng.py +0 -0
  71. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/ffmpeg.py +0 -0
  72. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/four_ti_2.py +0 -0
  73. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/gap.py +0 -0
  74. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/graph_generators.py +0 -0
  75. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/graphviz.py +0 -0
  76. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/igraph.py +0 -0
  77. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/imagemagick.py +0 -0
  78. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/interfaces.py +0 -0
  79. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/internet.py +0 -0
  80. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/jmol.py +0 -0
  81. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/join_feature.py +0 -0
  82. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/kenzo.py +0 -0
  83. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/latex.py +0 -0
  84. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/latte.py +0 -0
  85. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/lrs.py +0 -0
  86. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/mcqd.py +0 -0
  87. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/meataxe.py +0 -0
  88. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/mip_backends.py +0 -0
  89. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/nauty.py +0 -0
  90. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/normaliz.py +0 -0
  91. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/palp.py +0 -0
  92. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/pandoc.py +0 -0
  93. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/pdf2svg.py +0 -0
  94. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/phitigra.py +0 -0
  95. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/pkg_systems.py +0 -0
  96. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/polymake.py +0 -0
  97. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/poppler.py +0 -0
  98. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/qepcad.py +0 -0
  99. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/rubiks.py +0 -0
  100. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/sat.py +0 -0
  101. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/singular.py +0 -0
  102. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/sirocco.py +0 -0
  103. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/sphinx.py +0 -0
  104. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/standard.py +0 -0
  105. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/symengine_py.py +0 -0
  106. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/tdlib.py +0 -0
  107. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/threejs.py +0 -0
  108. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/features/topcom.py +0 -0
  109. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/misc/all__sagemath_environment.py +0 -0
  110. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/misc/package.py +0 -0
  111. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/misc/package_dir.py +0 -0
  112. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/sage/misc/temporary_file.py +0 -0
  113. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/setup.cfg +0 -0
  114. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/setup.py +0 -0
  115. {passagemath_environment-10.4.61 → passagemath_environment-10.4.63}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: passagemath-environment
3
- Version: 10.4.61
3
+ Version: 10.4.63
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,11 +29,11 @@ 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.61.0; extra == "conf"
32
+ Requires-Dist: passagemath-conf~=10.4.63.0; extra == "conf"
33
33
  Provides-Extra: docbuild
34
- Requires-Dist: passagemath-docbuild~=10.4.61.0; extra == "docbuild"
34
+ Requires-Dist: passagemath-docbuild~=10.4.63.0; extra == "docbuild"
35
35
  Provides-Extra: sage
36
- Requires-Dist: passagemath-standard~=10.4.61.0; extra == "sage"
36
+ Requires-Dist: passagemath-standard~=10.4.63.0; extra == "sage"
37
37
  Provides-Extra: cython
38
38
  Requires-Dist: cython!=3.0.3,<4.0,>=3.0; extra == "cython"
39
39
  Requires-Dist: cython<3.1.0,>=3.0.8; extra == "cython"
@@ -44,7 +44,7 @@ Requires-Dist: rst2ipynb>=0.2.2; extra == "rst2ipynb"
44
44
  Provides-Extra: tox
45
45
  Requires-Dist: tox>=4.11; extra == "tox"
46
46
  Provides-Extra: sws2rst
47
- Requires-Dist: passagemath-sws2rst~=10.4.61.0; extra == "sws2rst"
47
+ Requires-Dist: passagemath-sws2rst~=10.4.63.0; extra == "sws2rst"
48
48
 
49
49
  =========================================================================
50
50
  passagemath: System and software environment
@@ -0,0 +1 @@
1
+ 10.4.63
@@ -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
- LDFLAGS="$LDFLAGS -Wl,-ld_classic"
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.61'
8
- SAGE_RELEASE_DATE='2024-11-15'
9
- SAGE_VERSION_BANNER='passagemath version 10.4.61, Release Date: 2024-11-15'
7
+ SAGE_VERSION='10.4.63'
8
+ SAGE_RELEASE_DATE='2024-11-18'
9
+ SAGE_VERSION_BANNER='passagemath version 10.4.63, Release Date: 2024-11-18'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: passagemath-environment
3
- Version: 10.4.61
3
+ Version: 10.4.63
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,11 +29,11 @@ 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.61.0; extra == "conf"
32
+ Requires-Dist: passagemath-conf~=10.4.63.0; extra == "conf"
33
33
  Provides-Extra: docbuild
34
- Requires-Dist: passagemath-docbuild~=10.4.61.0; extra == "docbuild"
34
+ Requires-Dist: passagemath-docbuild~=10.4.63.0; extra == "docbuild"
35
35
  Provides-Extra: sage
36
- Requires-Dist: passagemath-standard~=10.4.61.0; extra == "sage"
36
+ Requires-Dist: passagemath-standard~=10.4.63.0; extra == "sage"
37
37
  Provides-Extra: cython
38
38
  Requires-Dist: cython!=3.0.3,<4.0,>=3.0; extra == "cython"
39
39
  Requires-Dist: cython<3.1.0,>=3.0.8; extra == "cython"
@@ -44,7 +44,7 @@ Requires-Dist: rst2ipynb>=0.2.2; extra == "rst2ipynb"
44
44
  Provides-Extra: tox
45
45
  Requires-Dist: tox>=4.11; extra == "tox"
46
46
  Provides-Extra: sws2rst
47
- Requires-Dist: passagemath-sws2rst~=10.4.61.0; extra == "sws2rst"
47
+ Requires-Dist: passagemath-sws2rst~=10.4.63.0; extra == "sws2rst"
48
48
 
49
49
  =========================================================================
50
50
  passagemath: System and software environment
@@ -56,6 +56,7 @@ sage/features/csdp.py
56
56
  sage/features/cython.py
57
57
  sage/features/databases.py
58
58
  sage/features/dvipng.py
59
+ sage/features/eclib.py
59
60
  sage/features/ecm.py
60
61
  sage/features/ffmpeg.py
61
62
  sage/features/four_ti_2.py
@@ -68,6 +69,7 @@ sage/features/graph_generators.py
68
69
  sage/features/graphviz.py
69
70
  sage/features/igraph.py
70
71
  sage/features/imagemagick.py
72
+ sage/features/info.py
71
73
  sage/features/interfaces.py
72
74
  sage/features/internet.py
73
75
  sage/features/jmol.py
@@ -1,13 +1,13 @@
1
1
 
2
2
  [conf]
3
- passagemath-conf~=10.4.61.0
3
+ passagemath-conf~=10.4.63.0
4
4
 
5
5
  [cython]
6
6
  cython!=3.0.3,<4.0,>=3.0
7
7
  cython<3.1.0,>=3.0.8
8
8
 
9
9
  [docbuild]
10
- passagemath-docbuild~=10.4.61.0
10
+ passagemath-docbuild~=10.4.63.0
11
11
 
12
12
  [pytest]
13
13
  pytest
@@ -16,10 +16,10 @@ pytest
16
16
  rst2ipynb>=0.2.2
17
17
 
18
18
  [sage]
19
- passagemath-standard~=10.4.61.0
19
+ passagemath-standard~=10.4.63.0
20
20
 
21
21
  [sws2rst]
22
- passagemath-sws2rst~=10.4.61.0
22
+ passagemath-sws2rst~=10.4.63.0
23
23
 
24
24
  [tox]
25
25
  tox>=4.11
@@ -46,14 +46,14 @@ documentation = "https://doc.sagemath.org"
46
46
  "tracker" = "https://github.com/passagemath/passagemath/issues"
47
47
 
48
48
  [project.optional-dependencies]
49
- conf = ['passagemath-conf ~= 10.4.61.0',] # sage.env can optionally use sage_conf
50
- docbuild = ['passagemath-docbuild ~= 10.4.61.0',] # For "sage --docbuild"
51
- sage = ['passagemath-standard ~= 10.4.61.0',] # For "sage", "sage -t", ...
49
+ conf = ['passagemath-conf ~= 10.4.63.0',] # sage.env can optionally use sage_conf
50
+ docbuild = ['passagemath-docbuild ~= 10.4.63.0',] # For "sage --docbuild"
51
+ sage = ['passagemath-standard ~= 10.4.63.0',] # For "sage", "sage -t", ...
52
52
  cython = ['cython >=3.0, != 3.0.3, <4.0', 'cython >=3.0.8,<3.1.0',] # For "sage --cython"
53
53
  pytest = ['pytest',] # For "sage --pytest"
54
54
  rst2ipynb = ['rst2ipynb >=0.2.2',] # For "sage --rst2ipynb"
55
55
  tox = ['tox >= 4.11',] # For "sage --tox"
56
- sws2rst = ['passagemath-sws2rst ~= 10.4.61.0',] # For "sage --sws2rst"
56
+ sws2rst = ['passagemath-sws2rst ~= 10.4.63.0',] # For "sage --sws2rst"
57
57
 
58
58
  [project.readme]
59
59
  file = "README.rst"
@@ -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
 
@@ -0,0 +1,46 @@
1
+ # sage_setup: distribution = sagemath-environment
2
+ r"""
3
+ Feature for testing the presence of eclib
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
+ from . import Executable, FeatureTestResult, PythonModule
17
+ from .join_feature import JoinFeature
18
+
19
+
20
+ class Mwrank(Executable):
21
+ r"""
22
+ A :class:`~sage.features.Feature` describing the presence of mwrank.
23
+
24
+ EXAMPLES::
25
+
26
+ sage: from sage.features.eclib import Mwrank
27
+ sage: Mwrank().is_present() # needs eclib
28
+ FeatureTestResult('mwrank', True)
29
+ """
30
+ def __init__(self):
31
+ r"""
32
+ TESTS::
33
+
34
+ sage: from sage.features.eclib import Mwrank
35
+ sage: isinstance(Mwrank(), Mwrank)
36
+ True
37
+ """
38
+ Executable.__init__(self, "mwrank", executable='mwrank',
39
+ spkg='eclib', type='standard')
40
+
41
+
42
+ def all_features():
43
+ return [JoinFeature("eclib",
44
+ (Mwrank(),
45
+ PythonModule('sage.libs.eclib')),
46
+ spkg='sagemath_eclib', type='standard')]
@@ -12,7 +12,8 @@ Feature for testing the presence of ``ecm`` or ``gmp-ecm``
12
12
  # https://www.gnu.org/licenses/
13
13
  # ****************************************************************************
14
14
 
15
- from . import Executable
15
+ from . import Executable, PythonModule
16
+ from .join_feature import JoinFeature
16
17
  from sage.env import SAGE_ECMBIN
17
18
 
18
19
 
@@ -23,8 +24,8 @@ class Ecm(Executable):
23
24
  EXAMPLES::
24
25
 
25
26
  sage: from sage.features.ecm import Ecm
26
- sage: Ecm().is_present()
27
- FeatureTestResult('ecm', True)
27
+ sage: Ecm().is_present() # needs ecm
28
+ FeatureTestResult('ecm_executable', True)
28
29
  """
29
30
  def __init__(self):
30
31
  r"""
@@ -34,9 +35,12 @@ class Ecm(Executable):
34
35
  sage: isinstance(Ecm(), Ecm)
35
36
  True
36
37
  """
37
- Executable.__init__(self, name='ecm', executable=SAGE_ECMBIN,
38
+ Executable.__init__(self, name='ecm_executable', executable=SAGE_ECMBIN,
38
39
  spkg='ecm', type='standard')
39
40
 
40
41
 
41
42
  def all_features():
42
- return [Ecm()]
43
+ return [JoinFeature("ecm",
44
+ (Ecm(),
45
+ PythonModule('sage.interfaces.ecm')),
46
+ spkg='sagemath_libecm', type='standard')]
@@ -14,7 +14,9 @@ Features for testing the presence of ``fricas``
14
14
 
15
15
  import os
16
16
  import subprocess
17
- from . import Executable, FeatureTestResult
17
+ from . import Executable, FeatureTestResult, PythonModule
18
+ from .join_feature import JoinFeature
19
+
18
20
 
19
21
  class FriCAS(Executable):
20
22
  r"""
@@ -24,7 +26,7 @@ class FriCAS(Executable):
24
26
 
25
27
  sage: from sage.features.fricas import FriCAS
26
28
  sage: FriCAS().is_present() # optional - fricas
27
- FeatureTestResult('fricas', True)
29
+ FeatureTestResult('fricas_executable', True)
28
30
  """
29
31
  def __init__(self):
30
32
  r"""
@@ -34,7 +36,7 @@ class FriCAS(Executable):
34
36
  sage: isinstance(FriCAS(), FriCAS)
35
37
  True
36
38
  """
37
- Executable.__init__(self, name='fricas', spkg='fricas',
39
+ Executable.__init__(self, name='fricas_executable', spkg='fricas',
38
40
  executable='fricas',
39
41
  url='https://fricas.github.io')
40
42
 
@@ -62,5 +64,9 @@ class FriCAS(Executable):
62
64
 
63
65
  return FeatureTestResult(self, True)
64
66
 
67
+
65
68
  def all_features():
66
- return [FriCAS()]
69
+ return [JoinFeature("fricas",
70
+ (FriCAS(),
71
+ PythonModule('sage.interfaces.fricas')),
72
+ spkg='sagemath_fricas')]
@@ -13,8 +13,9 @@ Feature for testing the presence of FROBBY
13
13
  # *****************************************************************************
14
14
 
15
15
  import subprocess
16
- from . import Executable
17
- from . import FeatureTestResult
16
+ from . import Executable, FeatureTestResult, PythonModule
17
+ from .join_feature import JoinFeature
18
+
18
19
 
19
20
  class Frobby(Executable):
20
21
  r"""
@@ -24,7 +25,7 @@ class Frobby(Executable):
24
25
 
25
26
  sage: from sage.features.frobby import Frobby
26
27
  sage: Frobby().is_present() # optional - frobby
27
- FeatureTestResult('frobby', True)
28
+ FeatureTestResult('frobby_executable', True)
28
29
  """
29
30
  def __init__(self):
30
31
  r"""
@@ -34,9 +35,12 @@ class Frobby(Executable):
34
35
  sage: isinstance(Frobby(), Frobby)
35
36
  True
36
37
  """
37
- Executable.__init__(self, "frobby", executable='frobby',
38
+ Executable.__init__(self, "frobby_executable", executable='frobby',
38
39
  spkg='frobby')
39
40
 
40
41
 
41
42
  def all_features():
42
- return [Frobby()]
43
+ return [JoinFeature("frobby",
44
+ (Frobby(),
45
+ PythonModule('sage.interfaces.frobby')),
46
+ spkg='sagemath_frobby')]
@@ -12,7 +12,8 @@ Features for testing the presence of ``gfan``
12
12
  # https://www.gnu.org/licenses/
13
13
  # *****************************************************************************
14
14
 
15
- from . import Executable
15
+ from . import Executable, PythonModule
16
+ from .join_feature import JoinFeature
16
17
 
17
18
 
18
19
  class GfanExecutable(Executable):
@@ -28,11 +29,15 @@ class GfanExecutable(Executable):
28
29
  True
29
30
  """
30
31
  if cmd is None:
31
- name = "gfan"
32
+ name = "gfan_executable"
33
+ executable = "gfan"
32
34
  else:
33
- name = f"gfan_{cmd}"
34
- Executable.__init__(self, name, executable=name, spkg='gfan', type='standard')
35
+ executable = name = f"gfan_{cmd}"
36
+ Executable.__init__(self, name, executable=executable, spkg='gfan', type='standard')
35
37
 
36
38
 
37
39
  def all_features():
38
- return [GfanExecutable()]
40
+ return [JoinFeature("gfan",
41
+ (GfanExecutable(),
42
+ PythonModule('sage.interfaces.gfan')),
43
+ spkg='sagemath_gfan', type='standard')]
@@ -3,7 +3,9 @@ r"""
3
3
  Feature for testing the presence of ``giac``
4
4
  """
5
5
 
6
- from . import Executable, FeatureTestResult
6
+ from . import Executable, FeatureTestResult, PythonModule
7
+ from .join_feature import JoinFeature
8
+
7
9
 
8
10
  class Giac(Executable):
9
11
  r"""
@@ -13,7 +15,7 @@ class Giac(Executable):
13
15
 
14
16
  sage: from sage.features.giac import Giac
15
17
  sage: Giac().is_present() # needs giac
16
- FeatureTestResult('giac', True)
18
+ FeatureTestResult('giac_executable', True)
17
19
  """
18
20
  def __init__(self):
19
21
  r"""
@@ -23,8 +25,11 @@ class Giac(Executable):
23
25
  sage: isinstance(Giac(), Giac)
24
26
  True
25
27
  """
26
- Executable.__init__(self, 'giac', executable='giac',
28
+ Executable.__init__(self, 'giac_executable', executable='giac',
27
29
  spkg='giac', type='standard')
28
30
 
29
31
  def all_features():
30
- return [Giac()]
32
+ return [JoinFeature("giac",
33
+ (Giac(),
34
+ PythonModule('sage.interfaces.giac')),
35
+ spkg='sagemath_giac', type='standard')]
@@ -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()]
@@ -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('macaulay2', True)
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, "macaulay2", executable='M2',
38
+ Executable.__init__(self, "macaulay2_executable", executable='M2',
38
39
  spkg='macaulay2')
39
40
 
40
41
 
41
42
  def all_features():
42
- return [Macaulay2()]
43
+ return [JoinFeature("macaulay2",
44
+ (Macaulay2(),
45
+ PythonModule('sage.interfaces.macaulay2')),
46
+ spkg='sagemath_macaulay2')]
@@ -19,8 +19,9 @@ Feature for testing the presence of msolve
19
19
  # *****************************************************************************
20
20
 
21
21
  import subprocess
22
- from . import Executable
23
- from . import FeatureTestResult
22
+ from . import Executable, FeatureTestResult, PythonModule
23
+ from .join_feature import JoinFeature
24
+
24
25
 
25
26
  class msolve(Executable):
26
27
  r"""
@@ -65,4 +66,7 @@ class msolve(Executable):
65
66
  return FeatureTestResult(self, True)
66
67
 
67
68
  def all_features():
68
- return [msolve()]
69
+ return [JoinFeature("msolve",
70
+ (msolve(),
71
+ PythonModule('sage.rings.polynomial.msolve')),
72
+ spkg='sagemath_msolve')]
@@ -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
@@ -14,7 +14,8 @@ Feature for testing the presence of ``sympow``
14
14
 
15
15
  import subprocess
16
16
 
17
- from . import Executable
17
+ from . import Executable, PythonModule
18
+ from .join_feature import JoinFeature
18
19
 
19
20
 
20
21
  class Sympow(Executable):
@@ -26,7 +27,7 @@ class Sympow(Executable):
26
27
 
27
28
  sage: from sage.features.sympow import Sympow
28
29
  sage: Sympow().is_present() # needs sympow
29
- FeatureTestResult('sympow', True)
30
+ FeatureTestResult('sympow_executable', True)
30
31
  """
31
32
  def __init__(self):
32
33
  r"""
@@ -36,9 +37,12 @@ class Sympow(Executable):
36
37
  sage: isinstance(Sympow(), Sympow)
37
38
  True
38
39
  """
39
- Executable.__init__(self, "sympow", executable='sympow',
40
+ Executable.__init__(self, "sympow_executable", executable='sympow',
40
41
  spkg='sympow', type='standard')
41
42
 
42
43
 
43
44
  def all_features():
44
- return [Sympow()]
45
+ return [JoinFeature("sympow",
46
+ (Sympow(),
47
+ PythonModule('sage.lfunctions.sympow')),
48
+ spkg='sagemath_sympow', type='standard')]
@@ -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 os.uname()[0] == 'Darwin':
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'
@@ -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.61'
5
- date = '2024-11-15'
6
- banner = 'passagemath version 10.4.61, Release Date: 2024-11-15'
4
+ version = '10.4.63'
5
+ date = '2024-11-18'
6
+ banner = 'passagemath version 10.4.63, Release Date: 2024-11-18'
@@ -1 +0,0 @@
1
- 10.4.61