From 2ccb50cf773881255c5669942a093eb68ad042f6 Mon Sep 17 00:00:00 2001 From: Joannah Nanjekye <33177550+nanjekyejoannah@users.noreply.github.com> Date: Fri, 13 Sep 2019 13:01:20 -0300 Subject: [PATCH] bpo-37449: Move ensurepip off of pkgutil and to importlib.resources (GH-15109) Move ensurepip off of pkgutil and to importlib.resources. https://bugs.python.org/issue37449 --- Lib/ensurepip/__init__.py | 11 +++++++---- Lib/ensurepip/_bundled/__init__.py | 0 .../Library/2019-08-04-17-22-33.bpo-37449.ycbL2z.rst | 2 ++ 3 files changed, 9 insertions(+), 4 deletions(-) create mode 100644 Lib/ensurepip/_bundled/__init__.py create mode 100644 Misc/NEWS.d/next/Library/2019-08-04-17-22-33.bpo-37449.ycbL2z.rst diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py index fc0edec6e3..386ed6c25c 100644 --- a/Lib/ensurepip/__init__.py +++ b/Lib/ensurepip/__init__.py @@ -1,8 +1,11 @@ import os import os.path -import pkgutil import sys import tempfile +from importlib import resources + +from . import _bundled + __all__ = ["version", "bootstrap"] @@ -96,9 +99,9 @@ def _bootstrap(*, root=None, upgrade=False, user=False, additional_paths = [] for project, version in _PROJECTS: wheel_name = "{}-{}-py2.py3-none-any.whl".format(project, version) - whl = pkgutil.get_data( - "ensurepip", - "_bundled/{}".format(wheel_name), + whl = resources.read_binary( + _bundled, + wheel_name, ) with open(os.path.join(tmpdir, wheel_name), "wb") as fp: fp.write(whl) diff --git a/Lib/ensurepip/_bundled/__init__.py b/Lib/ensurepip/_bundled/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/Misc/NEWS.d/next/Library/2019-08-04-17-22-33.bpo-37449.ycbL2z.rst b/Misc/NEWS.d/next/Library/2019-08-04-17-22-33.bpo-37449.ycbL2z.rst new file mode 100644 index 0000000000..b34bfea981 --- /dev/null +++ b/Misc/NEWS.d/next/Library/2019-08-04-17-22-33.bpo-37449.ycbL2z.rst @@ -0,0 +1,2 @@ +`ensurepip` now uses `importlib.resources.read_binary()` to read data instead of `pkgutil.get_data()`. +Patch by Joannah Nanjekye. \ No newline at end of file -- 2.40.0