jenkins-bot submitted this change.
[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(-)
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(
To view, visit change 833010. To unsubscribe, or for help writing mail filters, visit settings.