From d0cf0635b3f73742a91a100b1f19b8f9edf7be9a Mon Sep 17 00:00:00 2001 From: Nick Coghlan Date: Mon, 11 Nov 2013 22:11:55 +1000 Subject: Close #19406: Initial implementation of ensurepip Patch by Donald Stufft and Nick Coghlan --- Tools/scripts/checkpip.py | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 Tools/scripts/checkpip.py (limited to 'Tools/scripts/checkpip.py') diff --git a/Tools/scripts/checkpip.py b/Tools/scripts/checkpip.py new file mode 100644 index 0000000000..835101e7b5 --- /dev/null +++ b/Tools/scripts/checkpip.py @@ -0,0 +1,32 @@ +#/usr/bin/env python3 +""" +Checks that the version of the projects bundled in ensurepip are the latest +versions available. +""" +import ensurepip +import json +import urllib.request +import sys + + +def main(): + outofdate = False + + for project, version in ensurepip._PROJECTS: + data = json.loads(urllib.request.urlopen( + "https://pypi.python.org/pypi/{}/json".format(project), + cadefault=True, + ).read().decode("utf8")) + upstream_version = data["info"]["version"] + + if version != upstream_version: + outofdate = True + print("The latest version of {} on PyPI is {}, but ensurepip " + "has {}".format(project, upstream_version, version)) + + if outofdate: + sys.exit(1) + + +if __name__ == "__main__": + main() -- cgit v1.2.1