forked from pool/python-astropy
138 lines
5.2 KiB
Diff
138 lines
5.2 KiB
Diff
|
From dea513d07ab6bc5bb3585cc33ead4bb6df2f8a8d Mon Sep 17 00:00:00 2001
|
||
|
From: "P. L. Lim" <2090236+pllim@users.noreply.github.com>
|
||
|
Date: Thu, 9 Sep 2021 15:51:50 -0400
|
||
|
Subject: [PATCH] Backport PR #11962: Fix warnings with Python 3.10
|
||
|
|
||
|
---
|
||
|
.github/workflows/ci_cron_weekly.yml | 6 +++---
|
||
|
.github/workflows/ci_workflows.yml | 5 +++++
|
||
|
astropy/convolution/convolve.py | 6 +++++-
|
||
|
astropy/io/fits/util.py | 6 +++---
|
||
|
astropy/tests/tests/test_imports.py | 2 +-
|
||
|
astropy/utils/console.py | 2 +-
|
||
|
docs/changes/11962.other.rst | 1 +
|
||
|
tox.ini | 2 +-
|
||
|
8 files changed, 20 insertions(+), 10 deletions(-)
|
||
|
create mode 100644 docs/changes/11962.other.rst
|
||
|
|
||
|
diff --git a/.github/workflows/ci_cron_weekly.yml b/.github/workflows/ci_cron_weekly.yml
|
||
|
index 207fc7d372f..66ecabedd77 100644
|
||
|
--- a/.github/workflows/ci_cron_weekly.yml
|
||
|
+++ b/.github/workflows/ci_cron_weekly.yml
|
||
|
@@ -29,10 +29,10 @@ jobs:
|
||
|
# that gives too many false positives due to URL timeouts. We also
|
||
|
# install all dependencies via pip here so we pick up the latest
|
||
|
# releases.
|
||
|
- - name: Python 3.7 with dev version of key dependencies
|
||
|
+ - name: Python 3.10 with dev version of key dependencies
|
||
|
os: ubuntu-latest
|
||
|
- python: 3.7
|
||
|
- toxenv: py37-test-devdeps
|
||
|
+ python: '3.10.0-alpha - 3.10.0'
|
||
|
+ toxenv: py310-test-devdeps
|
||
|
|
||
|
- name: Documentation link check
|
||
|
os: ubuntu-latest
|
||
|
diff --git a/.github/workflows/ci_workflows.yml b/.github/workflows/ci_workflows.yml
|
||
|
index ee3dd88fe4e..2d596e1f16c 100644
|
||
|
--- a/.github/workflows/ci_workflows.yml
|
||
|
+++ b/.github/workflows/ci_workflows.yml
|
||
|
@@ -58,6 +58,11 @@ jobs:
|
||
|
python: 3.9
|
||
|
toxenv: py39-test
|
||
|
|
||
|
+ - name: Python 3.10 with minimal dependencies
|
||
|
+ os: ubuntu-latest
|
||
|
+ python: '3.10.0-alpha - 3.10.0'
|
||
|
+ toxenv: py310-test-devdeps
|
||
|
+
|
||
|
# NOTE: In the build below we also check that tests do not open and
|
||
|
# leave open any files. This has a performance impact on running the
|
||
|
# tests, hence why it is not enabled by default.
|
||
|
diff --git a/astropy/convolution/convolve.py b/astropy/convolution/convolve.py
|
||
|
index 86ef46e0a72..416bcd4247b 100644
|
||
|
--- a/astropy/convolution/convolve.py
|
||
|
+++ b/astropy/convolution/convolve.py
|
||
|
@@ -4,6 +4,7 @@
|
||
|
|
||
|
import os
|
||
|
import ctypes
|
||
|
+import warnings
|
||
|
from functools import partial
|
||
|
|
||
|
import numpy as np
|
||
|
@@ -22,7 +23,10 @@
|
||
|
LIBRARY_PATH = os.path.dirname(__file__)
|
||
|
|
||
|
try:
|
||
|
- _convolve = load_library("_convolve", LIBRARY_PATH)
|
||
|
+ with warnings.catch_warnings():
|
||
|
+ # distutils.sysconfig module is deprecated in Python 3.10
|
||
|
+ warnings.simplefilter('ignore', DeprecationWarning)
|
||
|
+ _convolve = load_library("_convolve", LIBRARY_PATH)
|
||
|
except Exception:
|
||
|
raise ImportError("Convolution C extension is missing. Try re-building astropy.")
|
||
|
|
||
|
diff --git a/astropy/io/fits/util.py b/astropy/io/fits/util.py
|
||
|
index 157b8634fdd..06e9108511c 100644
|
||
|
--- a/astropy/io/fits/util.py
|
||
|
+++ b/astropy/io/fits/util.py
|
||
|
@@ -210,9 +210,9 @@ def ignore_sigint(func):
|
||
|
def wrapped(*args, **kwargs):
|
||
|
# Get the name of the current thread and determine if this is a single
|
||
|
# threaded application
|
||
|
- curr_thread = threading.currentThread()
|
||
|
- single_thread = (threading.activeCount() == 1 and
|
||
|
- curr_thread.getName() == 'MainThread')
|
||
|
+ curr_thread = threading.current_thread()
|
||
|
+ single_thread = (threading.active_count() == 1 and
|
||
|
+ curr_thread.name == 'MainThread')
|
||
|
|
||
|
class SigintHandler:
|
||
|
def __init__(self):
|
||
|
diff --git a/astropy/tests/tests/test_imports.py b/astropy/tests/tests/test_imports.py
|
||
|
index 2ce1442447a..d13c956f0f9 100644
|
||
|
--- a/astropy/tests/tests/test_imports.py
|
||
|
+++ b/astropy/tests/tests/test_imports.py
|
||
|
@@ -19,7 +19,7 @@ def onerror(name):
|
||
|
|
||
|
for imper, nm, ispkg in pkgutil.walk_packages(['astropy'], 'astropy.',
|
||
|
onerror=onerror):
|
||
|
- imper.find_module(nm)
|
||
|
+ imper.find_spec(nm)
|
||
|
|
||
|
|
||
|
def test_toplevel_namespace():
|
||
|
diff --git a/astropy/utils/console.py b/astropy/utils/console.py
|
||
|
index 797859d8ba6..3de95bb07d7 100644
|
||
|
--- a/astropy/utils/console.py
|
||
|
+++ b/astropy/utils/console.py
|
||
|
@@ -121,7 +121,7 @@ def isatty(file):
|
||
|
ttys.
|
||
|
"""
|
||
|
if (multiprocessing.current_process().name != 'MainProcess' or
|
||
|
- threading.current_thread().getName() != 'MainThread'):
|
||
|
+ threading.current_thread().name != 'MainThread'):
|
||
|
return False
|
||
|
|
||
|
if hasattr(file, 'isatty'):
|
||
|
diff --git a/docs/changes/11962.other.rst b/docs/changes/11962.other.rst
|
||
|
new file mode 100644
|
||
|
index 00000000000..d57a7d978f2
|
||
|
--- /dev/null
|
||
|
+++ b/docs/changes/11962.other.rst
|
||
|
@@ -0,0 +1 @@
|
||
|
+Fix deprecation warnings with Python 3.10
|
||
|
diff --git a/tox.ini b/tox.ini
|
||
|
index 3414bb3f3b5..42a6590f915 100644
|
||
|
--- a/tox.ini
|
||
|
+++ b/tox.ini
|
||
|
@@ -1,6 +1,6 @@
|
||
|
[tox]
|
||
|
envlist =
|
||
|
- py{37,38,39,dev}-test{,-alldeps,-oldestdeps,-devdeps,-numpy117,-numpy118,-numpy119}{,-cov}{,-clocale}
|
||
|
+ py{37,38,39,310,dev}-test{,-alldeps,-oldestdeps,-devdeps,-numpy117,-numpy118,-numpy119}{,-cov}{,-clocale}
|
||
|
build_docs
|
||
|
linkcheck
|
||
|
codestyle
|