| |
@@ -0,0 +1,112 @@
|
| |
+ From dab74691cd1cd55621c943fc869f8ee821746ff6 Mon Sep 17 00:00:00 2001
|
| |
+ From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <miro@hroncok.cz>
|
| |
+ Date: Mon, 8 Jul 2019 19:08:17 +0200
|
| |
+ Subject: [PATCH] Use importlib.metadata from the standard library on Python
|
| |
+ 3.8+
|
| |
+
|
| |
+ Fixes https://github.com/tox-dev/tox/issues/1367
|
| |
+ ---
|
| |
+ CONTRIBUTORS | 1 +
|
| |
+ setup.cfg | 2 +-
|
| |
+ src/tox/config/__init__.py | 2 +-
|
| |
+ src/tox/session/commands/show_config.py | 2 +-
|
| |
+ src/tox/util/stdlib.py | 5 +++++
|
| |
+ tox.ini | 2 +-
|
| |
+ 6 files changed, 10 insertions(+), 4 deletions(-)
|
| |
+
|
| |
+ diff --git a/CONTRIBUTORS b/CONTRIBUTORS
|
| |
+ index 39d848b..ad0168f 100644
|
| |
+ --- a/CONTRIBUTORS
|
| |
+ +++ b/CONTRIBUTORS
|
| |
+ @@ -58,6 +58,7 @@ Mattieu Agopian
|
| |
+ Michael Manganiello
|
| |
+ Mickaël Schoentgen
|
| |
+ Mikhail Kyshtymov
|
| |
+ +Miro Hrončok
|
| |
+ Monty Taylor
|
| |
+ Morgan Fainberg
|
| |
+ Nick Douma
|
| |
+ diff --git a/setup.cfg b/setup.cfg
|
| |
+ index 3950ea3..c2bb1c2 100644
|
| |
+ --- a/setup.cfg
|
| |
+ +++ b/setup.cfg
|
| |
+ @@ -37,7 +37,7 @@ classifiers =
|
| |
+ packages = find:
|
| |
+ python_requires = >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
|
| |
+ install_requires =
|
| |
+ - importlib-metadata >= 0.12, <1
|
| |
+ + importlib-metadata >= 0.12, <1;python_version<"3.8"
|
| |
+ packaging >= 14
|
| |
+ pluggy >= 0.12.0, <1
|
| |
+ py >= 1.4.17, <2
|
| |
+ diff --git a/src/tox/config/__init__.py b/src/tox/config/__init__.py
|
| |
+ index c1a3239..849b31f 100644
|
| |
+ --- a/src/tox/config/__init__.py
|
| |
+ +++ b/src/tox/config/__init__.py
|
| |
+ @@ -15,7 +15,6 @@ from fnmatch import fnmatchcase
|
| |
+ from subprocess import list2cmdline
|
| |
+ from threading import Thread
|
| |
+
|
| |
+ -import importlib_metadata
|
| |
+ import pluggy
|
| |
+ import py
|
| |
+ import toml
|
| |
+ @@ -34,6 +33,7 @@ from tox.reporter import (
|
| |
+ verbosity1,
|
| |
+ )
|
| |
+ from tox.util.path import ensure_empty_dir
|
| |
+ +from tox.util.stdlib import importlib_metadata
|
| |
+
|
| |
+ from .parallel import ENV_VAR_KEY as PARALLEL_ENV_VAR_KEY
|
| |
+ from .parallel import add_parallel_config, add_parallel_flags
|
| |
+ diff --git a/src/tox/session/commands/show_config.py b/src/tox/session/commands/show_config.py
|
| |
+ index 11c5cf2..efb713a 100644
|
| |
+ --- a/src/tox/session/commands/show_config.py
|
| |
+ +++ b/src/tox/session/commands/show_config.py
|
| |
+ @@ -1,13 +1,13 @@
|
| |
+ import sys
|
| |
+ from collections import OrderedDict
|
| |
+
|
| |
+ -import importlib_metadata
|
| |
+ from packaging.requirements import Requirement
|
| |
+ from packaging.utils import canonicalize_name
|
| |
+ from six import StringIO
|
| |
+ from six.moves import configparser
|
| |
+
|
| |
+ from tox import reporter
|
| |
+ +from tox.util.stdlib import importlib_metadata
|
| |
+
|
| |
+ DO_NOT_SHOW_CONFIG_ATTRIBUTES = (
|
| |
+ "interpreters",
|
| |
+ diff --git a/src/tox/util/stdlib.py b/src/tox/util/stdlib.py
|
| |
+ index 0b25859..5f687b7 100644
|
| |
+ --- a/src/tox/util/stdlib.py
|
| |
+ +++ b/src/tox/util/stdlib.py
|
| |
+ @@ -3,6 +3,11 @@ import threading
|
| |
+ from contextlib import contextmanager
|
| |
+ from tempfile import TemporaryFile
|
| |
+
|
| |
+ +if sys.version_info >= (3, 8):
|
| |
+ + from importlib import metadata as importlib_metadata # noqa
|
| |
+ +else:
|
| |
+ + import importlib_metadata # noqa
|
| |
+ +
|
| |
+
|
| |
+ def is_main_thread():
|
| |
+ """returns true if we are within the main thread"""
|
| |
+ diff --git a/tox.ini b/tox.ini
|
| |
+ index fa5b321..fcb1418 100644
|
| |
+ --- a/tox.ini
|
| |
+ +++ b/tox.ini
|
| |
+ @@ -139,7 +139,7 @@ include_trailing_comma = True
|
| |
+ force_grid_wrap = 0
|
| |
+ line_length = 99
|
| |
+ known_first_party = tox,tests
|
| |
+ -known_third_party = apiclient,docutils,filelock,flaky,freezegun,git,httplib2,importlib_metadata,oauth2client,packaging,pathlib2,pluggy,py,pytest,setuptools,six,sphinx,toml
|
| |
+ +known_third_party = apiclient,docutils,filelock,flaky,freezegun,git,httplib2,oauth2client,packaging,pathlib2,pluggy,py,pytest,setuptools,six,sphinx,toml
|
| |
+
|
| |
+ [testenv:release]
|
| |
+ description = do a release, required posarg of the version number
|
| |
+ --
|
| |
+ 2.21.0
|
| |
+
|
| |
There are missing deps, do not merge yet, see bugzillas blocking https://bugzilla.redhat.com/show_bug.cgi?id=1699032