jenkins-bot has submitted this change. ( https://gerrit.wikimedia.org/r/c/pywikibot/core/+/833010 )
Change subject: [cleanup] Give up Python 2 compatiblity for setup.py ......................................................................
[cleanup] Give up Python 2 compatiblity for setup.py
Change-Id: I2b0fab10e2005bcad95b9a1268dd0666f4fb2683 --- M pwb.py M setup.py 2 files changed, 12 insertions(+), 7 deletions(-)
Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
diff --git a/pwb.py b/pwb.py index bb8e0c5..d5cd0e9 100755 --- a/pwb.py +++ b/pwb.py @@ -473,6 +473,8 @@ # setup.py may also raise RuntimeError except RuntimeError as e: # pragma: no cover sys.exit(e) + except SyntaxError as e: # pragma: no cover + sys.exit(str(e) + '\nProbably outdated Python version')
if not execute(): print(__doc__) diff --git a/setup.py b/setup.py index 00a1cb9..fe66a45 100755 --- a/setup.py +++ b/setup.py @@ -1,5 +1,4 @@ #!/usr/bin/python3 -# -*- coding: utf-8 -*- """Installer script for Pywikibot framework.
**How to create a new distribution:** @@ -25,11 +24,15 @@ # # Distributed under the terms of the MIT license. # -# ## KEEP PYTHON 2 SUPPORT FOR THIS SCRIPT ## # import os import re import sys
+if sys.version_info[:3] >= (3, 9): + List = list +else: + from typing import List +
VERSIONS_REQUIRED_MESSAGE = """ Pywikibot is not available on: @@ -44,7 +47,7 @@ raise RuntimeError(VERSIONS_REQUIRED_MESSAGE.format(version=sys.version))
-def python_is_supported(): +def python_is_supported() -> bool: """Check that Python is supported.""" return sys.version_info[:3] >= (3, 5, 3)
@@ -147,7 +150,7 @@ assert metadata.__name__ == name
-def get_validated_version(): # pragma: no cover +def get_validated_version() -> str: # pragma: no cover """Get a validated pywikibot module version string.
The version number from pywikibot.__metadata__.__version__ is used. @@ -205,7 +208,7 @@ return version
-def read_desc(filename): # pragma: no cover +def read_desc(filename) -> str: # pragma: no cover """Read long description.
Combine included restructured text files which must be done before @@ -227,7 +230,7 @@ return ''.join(desc)
-def get_packages(name): # pragma: no cover +def get_packages(name) -> List[str]: # pragma: no cover """Find framework packages.""" try: from setuptools import find_namespace_packages @@ -238,7 +241,7 @@ return [str(name)] + packages
-def main(): # pragma: no cover +def main() -> None: # pragma: no cover """Setup entry point.""" version = get_validated_version() setup(