bpo-38488: Upgrade bundled versions of pip & setuptools (GH-20491)

(cherry picked from commit 5f79f46612c351bde78a41c5264c42db21008868)

Co-authored-by: Xavier Fernandez <xav.fernandez@gmail.com>
diff --git a/Lib/ensurepip/__init__.py b/Lib/ensurepip/__init__.py
index d62b118..21320a8 100644
--- a/Lib/ensurepip/__init__.py
+++ b/Lib/ensurepip/__init__.py
@@ -12,13 +12,13 @@
 __all__ = ["version", "bootstrap"]
 
 
-_SETUPTOOLS_VERSION = "41.2.0"
+_SETUPTOOLS_VERSION = "47.1.0"
 
-_PIP_VERSION = "19.2.3"
+_PIP_VERSION = "20.1.1"
 
 _PROJECTS = [
-    ("setuptools", _SETUPTOOLS_VERSION),
-    ("pip", _PIP_VERSION),
+    ("setuptools", _SETUPTOOLS_VERSION, "py3"),
+    ("pip", _PIP_VERSION, "py2.py3"),
 ]
 
 
@@ -107,8 +107,8 @@
         # Put our bundled wheels into a temporary directory and construct the
         # additional paths that need added to sys.path
         additional_paths = []
-        for project, version in _PROJECTS:
-            wheel_name = "{}-{}-py2.py3-none-any.whl".format(project, version)
+        for project, version, py_tag in _PROJECTS:
+            wheel_name = "{}-{}-{}-none-any.whl".format(project, version, py_tag)
             whl = resources.read_binary(
                 _bundled,
                 wheel_name,
diff --git a/Lib/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl b/Lib/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl
deleted file mode 100644
index 8118df8..0000000
--- a/Lib/ensurepip/_bundled/pip-19.2.3-py2.py3-none-any.whl
+++ /dev/null
Binary files differ
diff --git a/Lib/ensurepip/_bundled/pip-20.1.1-py2.py3-none-any.whl b/Lib/ensurepip/_bundled/pip-20.1.1-py2.py3-none-any.whl
new file mode 100644
index 0000000..ea1d0f7
--- /dev/null
+++ b/Lib/ensurepip/_bundled/pip-20.1.1-py2.py3-none-any.whl
Binary files differ
diff --git a/Lib/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl b/Lib/ensurepip/_bundled/setuptools-47.1.0-py3-none-any.whl
similarity index 64%
rename from Lib/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl
rename to Lib/ensurepip/_bundled/setuptools-47.1.0-py3-none-any.whl
index 82df6f6..f87867f 100644
--- a/Lib/ensurepip/_bundled/setuptools-41.2.0-py2.py3-none-any.whl
+++ b/Lib/ensurepip/_bundled/setuptools-47.1.0-py3-none-any.whl
Binary files differ
diff --git a/Lib/test/test_venv.py b/Lib/test/test_venv.py
index 44c6219..ef6d7bd 100644
--- a/Lib/test/test_venv.py
+++ b/Lib/test/test_venv.py
@@ -513,7 +513,7 @@
         #    executing pip with sudo, you may want sudo's -H flag."
         # where $HOME is replaced by the HOME environment variable.
         err = re.sub("^(WARNING: )?The directory .* or its parent directory "
-                     "is not owned by the current user .*$", "",
+                     "is not owned or is not writable by the current user.*$", "",
                      err, flags=re.MULTILINE)
         self.assertEqual(err.rstrip(), "")
         # Being fairly specific regarding the expected behaviour for the