Skip to content

Commit 79f5a17

Browse files
author
Release Manager
committed
gh-39010: Don't import cysignals.alarm on Windows <!-- ^ Please provide a concise and informative title. --> <!-- ^ Don't put issue numbers in the title, do this in the PR description below. --> <!-- ^ For example, instead of "Fixes #12345" use "Introduce new method to calculate 1 + 2". --> <!-- v Describe your changes below in detail. --> <!-- v Why is this change required? What problem does it solve? --> <!-- v If this PR resolves an open issue, please link to it here. For example, "Fixes #12345". --> `cysignals.alarm` is not available on Windows, so we don't try to import it. Probably more work needs to be done to actually fix the methods that make use of these methods on Windows; but that's left for further PRs. Also remove a `cysignals` import from an `all_xyz.py` file that was duplicated in the main `all.py` file. ### 📝 Checklist <!-- Put an `x` in all the boxes that apply. --> - [ ] The title is concise and informative. - [ ] The description explains in detail what this PR is about. - [ ] I have linked a relevant issue or discussion. - [ ] I have created tests covering the changes. - [ ] I have updated the documentation and checked the documentation preview. ### ⌛ Dependencies <!-- List all open PRs that this PR logically depends on. For example, --> <!-- - #12345: short description why this is a dependency --> <!-- - #34567: ... --> URL: #39010 Reported by: Tobias Diez Reviewer(s): Dima Pasechnik
2 parents d95a16a + f6add4e commit 79f5a17

File tree

5 files changed

+23
-12
lines changed

5 files changed

+23
-12
lines changed

src/sage/all.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@
5757
import os
5858
import operator
5959
import math
60+
import sys
6061

6162
# ############### end setup warnings ###############################
6263

@@ -157,7 +158,8 @@
157158

158159
from sage.manifolds.all import *
159160

160-
from cysignals.alarm import alarm, cancel_alarm
161+
if sys.platform != 'win32':
162+
from cysignals.alarm import alarm, cancel_alarm
161163

162164
# Lazily import interacts (#15335)
163165
lazy_import('sage.interacts', 'all', 'interacts')

src/sage/all__sagemath_objects.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@
2121

2222
from sage.cpython.all import *
2323

24-
from cysignals.alarm import alarm, cancel_alarm
25-
2624
from copy import copy, deepcopy
2725

2826
true = True

src/sage/matrix/benchmark.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,17 @@
1818
======================================================================
1919
"""
2020

21-
from .constructor import random_matrix, Matrix
21+
import sys
22+
23+
from sage.matrix.constructor import Matrix, random_matrix
2224
from sage.misc.lazy_import import lazy_import
25+
from sage.misc.timing import cputime
26+
from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF
2327
from sage.rings.integer_ring import ZZ
2428
from sage.rings.rational_field import QQ
25-
from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF
26-
from sage.misc.timing import cputime
27-
from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm
29+
30+
if sys.platform != 'win32':
31+
from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm
2832

2933
lazy_import('sage.interfaces.magma', 'magma')
3034

src/sage/parallel/use_fork.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,11 @@
1313
# ****************************************************************************
1414

1515

16+
import sys
1617
from shutil import rmtree
17-
from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm
18+
19+
if sys.platform != 'win32':
20+
from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm
1821

1922
from sage.interfaces.process import ContainChildren
2023
from sage.misc.timing import walltime

src/sage/tests/benchmark.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,29 +15,33 @@
1515
1616
sage: import sage.tests.benchmark
1717
"""
18-
from cysignals.alarm import alarm, cancel_alarm, AlarmInterrupt
18+
import sys
19+
20+
if sys.platform != 'win32':
21+
from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm
22+
1923
from sage.combinat.combinat import fibonacci
2024
from sage.functions.other import factorial
2125
from sage.interfaces.gp import gp
2226
from sage.interfaces.macaulay2 import macaulay2
23-
from sage.interfaces.magma import magma, Magma
27+
from sage.interfaces.magma import Magma, magma
2428
from sage.interfaces.maple import maple
2529
from sage.interfaces.mathematica import mathematica
2630
from sage.interfaces.maxima import maxima
2731
from sage.interfaces.singular import singular
28-
from sage.libs.pari import pari
2932
from sage.libs.gap.libgap import libgap
33+
from sage.libs.pari import pari
3034
from sage.matrix.matrix_space import MatrixSpace
3135
from sage.misc.functional import log
3236
from sage.misc.timing import cputime, walltime
3337
from sage.modular.modsym.modsym import ModularSymbols
3438
from sage.rings.complex_mpfr import ComplexField
3539
from sage.rings.finite_rings.finite_field_constructor import GF
3640
from sage.rings.finite_rings.integer_mod_ring import Integers
37-
from sage.rings.rational_field import QQ
3841
from sage.rings.integer import Integer
3942
from sage.rings.integer_ring import ZZ
4043
from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing
44+
from sage.rings.rational_field import QQ
4145
from sage.schemes.elliptic_curves.constructor import EllipticCurve
4246

4347

0 commit comments

Comments
 (0)