passagemath-environment 10.4.62__tar.gz → 10.4.64__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.62/passagemath_environment.egg-info → passagemath_environment-10.4.64}/PKG-INFO +5 -5
  2. passagemath_environment-10.4.64/VERSION.txt +1 -0
  3. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-fixdoctests +13 -11
  4. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-version.sh +3 -3
  5. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64/passagemath_environment.egg-info}/PKG-INFO +5 -5
  6. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/passagemath_environment.egg-info/SOURCES.txt +1 -0
  7. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/passagemath_environment.egg-info/requires.txt +4 -4
  8. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/pyproject.toml +4 -4
  9. passagemath_environment-10.4.64/sage/features/eclib.py +46 -0
  10. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/ecm.py +9 -5
  11. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/fricas.py +10 -4
  12. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/frobby.py +9 -5
  13. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/gfan.py +10 -5
  14. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/giac.py +9 -4
  15. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/msolve.py +7 -3
  16. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/sympow.py +8 -4
  17. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/version.py +3 -3
  18. passagemath_environment-10.4.62/VERSION.txt +0 -1
  19. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/MANIFEST.in +0 -0
  20. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/README.rst +0 -0
  21. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/math-readline +0 -0
  22. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage +0 -0
  23. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-cachegrind +0 -0
  24. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-callgrind +0 -0
  25. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-cleaner +0 -0
  26. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-coverage +0 -0
  27. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-cython +0 -0
  28. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-env +0 -0
  29. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-env-config.in +0 -0
  30. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-eval +0 -0
  31. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-grep +0 -0
  32. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-grepdoc +0 -0
  33. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-inline-fortran +0 -0
  34. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-ipynb2rst +0 -0
  35. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-ipython +0 -0
  36. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-list-packages +0 -0
  37. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-massif +0 -0
  38. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-notebook +0 -0
  39. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-num-threads.py +0 -0
  40. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-omega +0 -0
  41. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-preparse +0 -0
  42. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-python +0 -0
  43. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-run +0 -0
  44. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-run-cython +0 -0
  45. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-runtests +0 -0
  46. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-src-env-config.in +0 -0
  47. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-startuptime.py +0 -0
  48. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-update-version +0 -0
  49. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-valgrind +0 -0
  50. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/bin/sage-venv-config +0 -0
  51. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/passagemath_environment.egg-info/dependency_links.txt +0 -0
  52. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/passagemath_environment.egg-info/top_level.txt +0 -0
  53. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/pyproject.toml.m4 +0 -0
  54. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/requirements-editable.txt.m4 +0 -0
  55. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/requirements.txt.m4 +0 -0
  56. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/all__sagemath_environment.py +0 -0
  57. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/env.py +0 -0
  58. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/__init__.py +0 -0
  59. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/all.py +0 -0
  60. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/bliss.py +0 -0
  61. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/cddlib.py +0 -0
  62. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/coxeter3.py +0 -0
  63. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/csdp.py +0 -0
  64. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/cython.py +0 -0
  65. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/databases.py +0 -0
  66. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/dvipng.py +0 -0
  67. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/ffmpeg.py +0 -0
  68. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/four_ti_2.py +0 -0
  69. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/gap.py +0 -0
  70. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/graph_generators.py +0 -0
  71. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/graphviz.py +0 -0
  72. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/igraph.py +0 -0
  73. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/imagemagick.py +0 -0
  74. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/info.py +0 -0
  75. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/interfaces.py +0 -0
  76. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/internet.py +0 -0
  77. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/jmol.py +0 -0
  78. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/join_feature.py +0 -0
  79. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/kenzo.py +0 -0
  80. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/latex.py +0 -0
  81. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/latte.py +0 -0
  82. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/lrs.py +0 -0
  83. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/macaulay2.py +0 -0
  84. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/mcqd.py +0 -0
  85. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/meataxe.py +0 -0
  86. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/mip_backends.py +0 -0
  87. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/nauty.py +0 -0
  88. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/normaliz.py +0 -0
  89. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/palp.py +0 -0
  90. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/pandoc.py +0 -0
  91. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/pdf2svg.py +0 -0
  92. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/phitigra.py +0 -0
  93. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/pkg_systems.py +0 -0
  94. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/polymake.py +0 -0
  95. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/poppler.py +0 -0
  96. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/qepcad.py +0 -0
  97. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/rubiks.py +0 -0
  98. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/sagemath.py +0 -0
  99. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/sat.py +0 -0
  100. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/singular.py +0 -0
  101. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/sirocco.py +0 -0
  102. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/sphinx.py +0 -0
  103. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/standard.py +0 -0
  104. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/symengine_py.py +0 -0
  105. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/tdlib.py +0 -0
  106. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/threejs.py +0 -0
  107. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/features/topcom.py +0 -0
  108. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/misc/all__sagemath_environment.py +0 -0
  109. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/misc/package.py +0 -0
  110. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/misc/package_dir.py +0 -0
  111. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/misc/temporary_file.py +0 -0
  112. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/sage/misc/viewer.py +0 -0
  113. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/setup.cfg +0 -0
  114. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/setup.py +0 -0
  115. {passagemath_environment-10.4.62 → passagemath_environment-10.4.64}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: passagemath-environment
3
- Version: 10.4.62
3
+ Version: 10.4.64
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.62.0; extra == "conf"
32
+ Requires-Dist: passagemath-conf~=10.4.64.0; extra == "conf"
33
33
  Provides-Extra: docbuild
34
- Requires-Dist: passagemath-docbuild~=10.4.62.0; extra == "docbuild"
34
+ Requires-Dist: passagemath-docbuild~=10.4.64.0; extra == "docbuild"
35
35
  Provides-Extra: sage
36
- Requires-Dist: passagemath-standard~=10.4.62.0; extra == "sage"
36
+ Requires-Dist: passagemath-standard~=10.4.64.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.62.0; extra == "sws2rst"
47
+ Requires-Dist: passagemath-sws2rst~=10.4.64.0; extra == "sws2rst"
48
48
 
49
49
  =========================================================================
50
50
  passagemath: System and software environment
@@ -0,0 +1 @@
1
+ 10.4.64
@@ -56,6 +56,8 @@ parser.add_argument("--distribution", type=str, default=[], action='append',
56
56
  help="distribution package to test, e.g., 'sagemath-graphs', 'sagemath-combinat[modules]'; sets defaults for --venv and --environment. This option can be repeated to test several distributions")
57
57
  parser.add_argument("--fixed-point", default=False, action="store_true",
58
58
  help="whether to repeat until stable")
59
+ parser.add_argument("--toxenv", type=str, default='sagepython-sagewheels-nopypi-norequirements',
60
+ help="tox environment name where 'sage -t' is to be run")
59
61
  parser.add_argument("--venv", type=str, default='',
60
62
  help="directory name of a venv where 'sage -t' is to be run")
61
63
  parser.add_argument("--environment", type=str, default='',
@@ -95,10 +97,10 @@ def plain_distribution_and_extras(distribution):
95
97
  m = re.fullmatch(r'([^[]*)(\[([^]]*)\])?', distribution)
96
98
  return m.group(1), m.group(3)
97
99
 
98
- def default_venv_environment_from_distribution(distribution):
100
+ def default_venv_environment_from_distribution(distribution, toxenv):
99
101
  if distribution:
100
102
  plain_distribution, extras = plain_distribution_and_extras(distribution)
101
- tox_env_name = 'sagepython-sagewheels-nopypi-norequirements'
103
+ tox_env_name = toxenv or 'sagepython-sagewheels-nopypi-norequirements'
102
104
  if extras:
103
105
  tox_env_name += '-' + extras.replace(',', '-')
104
106
  default_venv = os.path.join(SAGE_ROOT, 'pkgs', plain_distribution, '.tox', tox_env_name)
@@ -113,16 +115,16 @@ def default_venv_environment_from_distribution(distribution):
113
115
 
114
116
 
115
117
  @cached_function
116
- def venv_explainer(distribution, venv=None, environment=None):
118
+ def venv_explainer(distribution, venv=None, environment=None, toxenv=None):
117
119
  venv_explainers = []
118
- default_venv, default_environment = default_venv_environment_from_distribution(distribution)
120
+ default_venv, default_environment = default_venv_environment_from_distribution(distribution, toxenv)
119
121
  if venv:
120
122
  if m := re.search(f'pkgs/(sage[^/]*)/[.]tox/((sagepython|sagewheels|nopypi|norequirements)-*)*([^/]*)$',
121
123
  venv):
122
124
  distribution, extras = m.group(1), m.group(4)
123
125
  if extras:
124
126
  distribution += '[' + extras.replace('-', ',') + ']'
125
- default_venv_given_distribution, default_environment_given_distribution = default_venv_environment_from_distribution(distribution)
127
+ default_venv_given_distribution, default_environment_given_distribution = default_venv_environment_from_distribution(distribution, toxenv)
126
128
 
127
129
  if (Path(venv).resolve() == Path(default_venv_given_distribution).resolve()
128
130
  or not environment or environment == default_environment_given_distribution):
@@ -557,11 +559,11 @@ def process_grouped_blocks(grouped_iterator, distribution=None, venv=None, envir
557
559
  print(f"{count:6} {' '.join(sorted(tags)) or '(untagged)'}")
558
560
 
559
561
 
560
- def fix_with_distribution(file_set, distribution=None, verbose=False):
562
+ def fix_with_distribution(file_set, distribution=None, toxenv=None, verbose=False):
561
563
  if verbose:
562
564
  print("#" * 78)
563
565
  print(f"sage-fixdoctests: Fixing with --distribution={shlex.quote(distribution)}")
564
- default_venv, default_environment = default_venv_environment_from_distribution(distribution)
566
+ default_venv, default_environment = default_venv_environment_from_distribution(distribution, toxenv)
565
567
  venv = args.venv or default_venv
566
568
  environment = args.environment or default_environment
567
569
  file_set_to_process = sorted(file_set)
@@ -641,10 +643,10 @@ if __name__ == "__main__":
641
643
  if args.no_test:
642
644
  pass
643
645
  elif len(args.distribution) == 1 and not args.fixed_point:
644
- fix_with_distribution(set(unprocessed_files), args.distribution[0])
646
+ fix_with_distribution(set(unprocessed_files), args.distribution[0], toxenv=args.toxenv)
645
647
  else:
646
648
  for distribution, file_set in venv_files.items():
647
- fix_with_distribution(file_set, distribution, verbose=True)
649
+ fix_with_distribution(file_set, distribution, verbose=True, toxenv=args.toxenv)
648
650
  if args.fixed_point:
649
651
  if args.probe:
650
652
  print(f"sage-fixdoctests: Turning off --probe for the following iterations")
@@ -657,7 +659,7 @@ if __name__ == "__main__":
657
659
  if not file_set:
658
660
  break
659
661
  while file_set:
660
- fix_with_distribution(file_set, distribution, verbose=True)
662
+ fix_with_distribution(file_set, distribution, verbose=True, toxenv=args.toxenv)
661
663
  # Immediately re-run with the same distribution to continue chains of
662
664
  # "NameError" / "variable was set only in doctest" fixes
663
665
 
@@ -679,7 +681,7 @@ if __name__ == "__main__":
679
681
  if distribution == '':
680
682
  continue
681
683
  plain_distribution, extras = plain_distribution_and_extras(distribution)
682
- default_venv, _ = default_venv_environment_from_distribution(distribution)
684
+ default_venv, _ = default_venv_environment_from_distribution(distribution, args.toxenv)
683
685
  venv = args.venv or default_venv
684
686
  try:
685
687
  stats_filename = os.path.join(default_venv, '.sage/timings2.json')
@@ -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.62'
8
- SAGE_RELEASE_DATE='2024-11-17'
9
- SAGE_VERSION_BANNER='passagemath version 10.4.62, Release Date: 2024-11-17'
7
+ SAGE_VERSION='10.4.64'
8
+ SAGE_RELEASE_DATE='2024-11-19'
9
+ SAGE_VERSION_BANNER='passagemath version 10.4.64, Release Date: 2024-11-19'
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: passagemath-environment
3
- Version: 10.4.62
3
+ Version: 10.4.64
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.62.0; extra == "conf"
32
+ Requires-Dist: passagemath-conf~=10.4.64.0; extra == "conf"
33
33
  Provides-Extra: docbuild
34
- Requires-Dist: passagemath-docbuild~=10.4.62.0; extra == "docbuild"
34
+ Requires-Dist: passagemath-docbuild~=10.4.64.0; extra == "docbuild"
35
35
  Provides-Extra: sage
36
- Requires-Dist: passagemath-standard~=10.4.62.0; extra == "sage"
36
+ Requires-Dist: passagemath-standard~=10.4.64.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.62.0; extra == "sws2rst"
47
+ Requires-Dist: passagemath-sws2rst~=10.4.64.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
@@ -1,13 +1,13 @@
1
1
 
2
2
  [conf]
3
- passagemath-conf~=10.4.62.0
3
+ passagemath-conf~=10.4.64.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.62.0
10
+ passagemath-docbuild~=10.4.64.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.62.0
19
+ passagemath-standard~=10.4.64.0
20
20
 
21
21
  [sws2rst]
22
- passagemath-sws2rst~=10.4.62.0
22
+ passagemath-sws2rst~=10.4.64.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.62.0',] # sage.env can optionally use sage_conf
50
- docbuild = ['passagemath-docbuild ~= 10.4.62.0',] # For "sage --docbuild"
51
- sage = ['passagemath-standard ~= 10.4.62.0',] # For "sage", "sage -t", ...
49
+ conf = ['passagemath-conf ~= 10.4.64.0',] # sage.env can optionally use sage_conf
50
+ docbuild = ['passagemath-docbuild ~= 10.4.64.0',] # For "sage --docbuild"
51
+ sage = ['passagemath-standard ~= 10.4.64.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.62.0',] # For "sage --sws2rst"
56
+ sws2rst = ['passagemath-sws2rst ~= 10.4.64.0',] # For "sage --sws2rst"
57
57
 
58
58
  [project.readme]
59
59
  file = "README.rst"
@@ -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')]
@@ -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')]
@@ -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')]
@@ -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.62'
5
- date = '2024-11-17'
6
- banner = 'passagemath version 10.4.62, Release Date: 2024-11-17'
4
+ version = '10.4.64'
5
+ date = '2024-11-19'
6
+ banner = 'passagemath version 10.4.64, Release Date: 2024-11-19'
@@ -1 +0,0 @@
1
- 10.4.62