jenkins-bot submitted this change.

View Change

Approvals: Xqt: Looks good to me, approved jenkins-bot: Verified
[py3.5] Drop support for Python 3.5.0 - 3.5.2

Bug: T286867
Change-Id: I0c9d00d32e6031e0549b0d13d34b4b70fcbb0b86
---
M .appveyor.yml
M ROADMAP.rst
M appveyor_install.ps1
M docs/index.rst
M pywikibot/README.rst
M pywikibot/__init__.py
M pywikibot/backports.py
M setup.py
M tests/utils.py
9 files changed, 13 insertions(+), 28 deletions(-)

diff --git a/.appveyor.yml b/.appveyor.yml
index 050712d..f5e4a2e 100644
--- a/.appveyor.yml
+++ b/.appveyor.yml
@@ -15,8 +15,8 @@

# Test the lowest supported release of each major Python version

- - PYTHON: "C:\\Python350-x64"
- PYTHON_VERSION: "3.5.0"
+ - PYTHON: "C:\\Python353-x64"
+ PYTHON_VERSION: "3.5.3"
PYTHON_ARCH: "64"

# Appveyor pre-installs these versions onto build machines
@@ -72,7 +72,7 @@
- git submodule update --init
# Download the Appveyor Python build accessories into subdirectory .\appveyor
- mkdir appveyor
- # Download Python 3.5.0 which isn't pre-installed
+ # Download Python 3.5.3 which isn't pre-installed
- ps: ./appveyor_install.ps1
- python --version
- python -c "import struct; print('PYTHON_ARCH' + chr(58), struct.calcsize('P') << 3)"
diff --git a/ROADMAP.rst b/ROADMAP.rst
index 9104fe8..78a83cf 100644
--- a/ROADMAP.rst
+++ b/ROADMAP.rst
@@ -1,13 +1,12 @@
Current release changes
^^^^^^^^^^^^^^^^^^^^^^^

-* (No changes yet)
+* Support of Python 3.5.0 - 3.5.2 has been dropped (T286867)


Deprecations
^^^^^^^^^^^^

-* 6.6.0: Support of Python 3.5.0 - 3.5.2 will be dropped with Pywikibot 7 (T286867)
* 6.5.0: OutputOption.output() method will be removed in favour of OutputOption.out property
* 6.5.0: tools.RotatingFileHandler will be removed in favour of logging.handlers.RotatingFileHandler
* 6.4.0: Pywikibot `began using semantic versioning
diff --git a/appveyor_install.ps1 b/appveyor_install.ps1
index 01c168e..00c01f4 100644
--- a/appveyor_install.ps1
+++ b/appveyor_install.ps1
@@ -60,7 +60,7 @@
function DownloadPython ($python_version, $platform_suffix) {
$major, $minor, $micro, $prerelease = ParsePythonVersion $python_version

- # Only Python 3.5+ is supported
+ # Only Python 3.5.3+ is supported
$dir = "$major.$minor.$micro"
$ext = "exe"
if ($platform_suffix) {
@@ -126,7 +126,7 @@


function main () {
- if ($env:PYTHON_VERSION -eq "3.5.0") {
+ if ($env:PYTHON_VERSION -eq "3.5.3") {
InstallPython $env:PYTHON_VERSION $env:PYTHON_ARCH $env:PYTHON
}
}
diff --git a/docs/index.rst b/docs/index.rst
index ab176ec..b68cb36 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -19,7 +19,7 @@
whether you have Python installed and to find its version, just type
``python`` at the CMD or shell prompt.

-Python 3.5 or higher is currently required to run the bot, but Python 3.6
+Python 3.5.3 or higher is currently required to run the bot, but Python 3.6
or higher is recommended.

Pywikibot and this documentation are licensed under the
diff --git a/pywikibot/README.rst b/pywikibot/README.rst
index 08b668f..c0b63fb 100644
--- a/pywikibot/README.rst
+++ b/pywikibot/README.rst
@@ -27,7 +27,7 @@
* python-tkinter (optional, used by some experimental GUI stuff)


-You need to have at least Python version `3.5.0 <http://www.python.org/download/>`_
+You need to have at least Python version `3.5.3 <http://www.python.org/download/>`_
or newer installed on your computer to be able to run any of the code in this
package. Please refer the manual at mediawiki for further details and
restrictions.
diff --git a/pywikibot/__init__.py b/pywikibot/__init__.py
index 926b280..3d96af8 100644
--- a/pywikibot/__init__.py
+++ b/pywikibot/__init__.py
@@ -69,7 +69,7 @@
)
from pywikibot.tools import classproperty
from pywikibot.tools import deprecate_arg as _deprecate_arg
-from pywikibot.tools import normalize_username, PYTHON_VERSION
+from pywikibot.tools import normalize_username
from pywikibot.tools.formatter import color_format


@@ -103,15 +103,6 @@
argvu = [] # type: List[str]


-if PYTHON_VERSION < (3, 5, 3):
- warn("""
-Python {version} will be dropped with release 7.0 soon.
-It is recommended to use Python 3.5.3 or above.
-See T286867 for further information.
-""".format(version=sys.version.split(maxsplit=1)[0]),
- FutureWarning) # probably adjust the line no in utils.execute()
-
-
class Timestamp(datetime.datetime):

"""Class for handling MediaWiki timestamps.
diff --git a/pywikibot/backports.py b/pywikibot/backports.py
index 9ae2e7b..e6136fd 100644
--- a/pywikibot/backports.py
+++ b/pywikibot/backports.py
@@ -44,9 +44,7 @@


# typing
-if PYTHON_VERSION < (3, 5, 2):
- from typing import Dict as DefaultDict
-elif PYTHON_VERSION < (3, 9):
+if PYTHON_VERSION < (3, 9):
from typing import DefaultDict # type: ignore[misc]
else:
from collections import ( # type: ignore[misc] # noqa: N812
diff --git a/setup.py b/setup.py
index c81d607..3b2c386 100644
--- a/setup.py
+++ b/setup.py
@@ -42,13 +42,13 @@
Pywikibot is not available on:
{version}

-This version of Pywikibot only supports Python 3.5+.
+This version of Pywikibot only supports Python 3.5.3+.
"""


def python_is_supported():
"""Check that Python is supported."""
- return PYTHON_VERSION >= (3, 5, 0)
+ return PYTHON_VERSION >= (3, 5, 3)


if not python_is_supported(): # pragma: no cover
@@ -248,7 +248,7 @@
maintainer_email=metadata.__maintainer_email__,
license=metadata.__license__,
packages=get_packages(name),
- python_requires='>=3.5.0',
+ python_requires='>=3.5.3',
install_requires=dependencies,
extras_require=extra_deps,
url=metadata.__url__,
diff --git a/tests/utils.py b/tests/utils.py
index a9c6a52..5b4741d 100644
--- a/tests/utils.py
+++ b/tests/utils.py
@@ -20,7 +20,6 @@
from pywikibot.exceptions import APIError
from pywikibot.login import LoginStatus
from pywikibot.site import Namespace
-from pywikibot.tools import PYTHON_VERSION

from tests import _pwb_py

@@ -446,8 +445,6 @@
:param command: executable to run and arguments to use
:type command: list of str
"""
- if PYTHON_VERSION < (3, 5, 3):
- command.insert(1, '-W ignore::FutureWarning:pywikibot:112')
if cryptography_version and cryptography_version < [1, 3, 4]:
command.insert(1, '-W ignore:Old version of cryptography:Warning')


To view, visit change 721264. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: pywikibot/core
Gerrit-Branch: master
Gerrit-Change-Id: I0c9d00d32e6031e0549b0d13d34b4b70fcbb0b86
Gerrit-Change-Number: 721264
Gerrit-PatchSet: 5
Gerrit-Owner: Xqt <info@gno.de>
Gerrit-Reviewer: Xqt <info@gno.de>
Gerrit-Reviewer: jenkins-bot
Gerrit-MessageType: merged