From ae6b1eebfc713a0ba81150a08f2c38d4b86b964a Mon Sep 17 00:00:00 2001 From: Tobias Diez Date: Wed, 20 Nov 2024 17:38:51 +0800 Subject: [PATCH] Don't import cysignals.alarm on Windows --- src/sage/all.py | 4 +++- src/sage/all__sagemath_objects.py | 2 -- src/sage/matrix/benchmark.py | 12 ++++++++---- src/sage/parallel/use_fork.py | 5 ++++- src/sage/tests/benchmark.py | 12 ++++++++---- 5 files changed, 23 insertions(+), 12 deletions(-) diff --git a/src/sage/all.py b/src/sage/all.py index 7c505cd3242..978c2322874 100644 --- a/src/sage/all.py +++ b/src/sage/all.py @@ -57,6 +57,7 @@ import os import operator import math +import sys # ############### end setup warnings ############################### @@ -157,7 +158,8 @@ from sage.manifolds.all import * -from cysignals.alarm import alarm, cancel_alarm +if sys.platform != 'win32': + from cysignals.alarm import alarm, cancel_alarm # Lazily import interacts (#15335) lazy_import('sage.interacts', 'all', 'interacts') diff --git a/src/sage/all__sagemath_objects.py b/src/sage/all__sagemath_objects.py index e5861c865a4..17d32f635c1 100644 --- a/src/sage/all__sagemath_objects.py +++ b/src/sage/all__sagemath_objects.py @@ -21,8 +21,6 @@ from sage.cpython.all import * -from cysignals.alarm import alarm, cancel_alarm - from copy import copy, deepcopy true = True diff --git a/src/sage/matrix/benchmark.py b/src/sage/matrix/benchmark.py index 98b4cad7305..d210fddbf8f 100644 --- a/src/sage/matrix/benchmark.py +++ b/src/sage/matrix/benchmark.py @@ -18,13 +18,17 @@ ====================================================================== """ -from .constructor import random_matrix, Matrix +import sys + +from sage.matrix.constructor import Matrix, random_matrix from sage.misc.lazy_import import lazy_import +from sage.misc.timing import cputime +from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF from sage.rings.integer_ring import ZZ from sage.rings.rational_field import QQ -from sage.rings.finite_rings.finite_field_constructor import FiniteField as GF -from sage.misc.timing import cputime -from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm + +if sys.platform != 'win32': + from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm lazy_import('sage.interfaces.magma', 'magma') diff --git a/src/sage/parallel/use_fork.py b/src/sage/parallel/use_fork.py index 36269127b80..bea10dd7b92 100644 --- a/src/sage/parallel/use_fork.py +++ b/src/sage/parallel/use_fork.py @@ -13,8 +13,11 @@ # **************************************************************************** +import sys from shutil import rmtree -from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm + +if sys.platform != 'win32': + from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm from sage.interfaces.process import ContainChildren from sage.misc.timing import walltime diff --git a/src/sage/tests/benchmark.py b/src/sage/tests/benchmark.py index 8a481a2b959..7f5962df896 100644 --- a/src/sage/tests/benchmark.py +++ b/src/sage/tests/benchmark.py @@ -15,18 +15,22 @@ sage: import sage.tests.benchmark """ -from cysignals.alarm import alarm, cancel_alarm, AlarmInterrupt +import sys + +if sys.platform != 'win32': + from cysignals.alarm import AlarmInterrupt, alarm, cancel_alarm + from sage.combinat.combinat import fibonacci from sage.functions.other import factorial from sage.interfaces.gp import gp from sage.interfaces.macaulay2 import macaulay2 -from sage.interfaces.magma import magma, Magma +from sage.interfaces.magma import Magma, magma from sage.interfaces.maple import maple from sage.interfaces.mathematica import mathematica from sage.interfaces.maxima import maxima from sage.interfaces.singular import singular -from sage.libs.pari import pari from sage.libs.gap.libgap import libgap +from sage.libs.pari import pari from sage.matrix.matrix_space import MatrixSpace from sage.misc.functional import log from sage.misc.timing import cputime, walltime @@ -34,10 +38,10 @@ from sage.rings.complex_mpfr import ComplexField from sage.rings.finite_rings.finite_field_constructor import GF from sage.rings.finite_rings.integer_mod_ring import Integers -from sage.rings.rational_field import QQ from sage.rings.integer import Integer from sage.rings.integer_ring import ZZ from sage.rings.polynomial.polynomial_ring_constructor import PolynomialRing +from sage.rings.rational_field import QQ from sage.schemes.elliptic_curves.constructor import EllipticCurve