From 4e13acdc88b22dbee8425d4f52d82444385e2290 Mon Sep 17 00:00:00 2001 From: Jon Dufresne Date: Fri, 18 Oct 2019 18:05:14 -0700 Subject: [PATCH 1/3] Add Python 3.8 to the test matrix Python 3.8 was released on October 14th, 2019. - Added 'Programming Language :: Python :: 3.8' trove classifier. - Added 'py38' to the tox test matrix. - Added 'python: 3.8' to the Travis test matrix. - Removed 'dist: xenial' from Travis configuration; it is now the default. - Removed 'dist: trusty' from Travis configuration; it is not longer necessary. - Removed 'sudo' from Travis configuration; it is deprecated. https://docs.python.org/3.8/whatsnew/3.8.html --- .travis.yml | 4 +--- doc/src/install.rst | 2 +- setup.py | 1 + tox.ini | 2 +- 4 files changed, 4 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index a40e807f..410d06c4 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,17 +1,15 @@ # Travis CI configuration file for psycopg2 -dist: xenial -sudo: required language: python matrix: include: - python: 2.7 + - python: 3.8 - python: 3.7 - python: 3.6 - python: 3.5 - python: 3.4 - dist: trusty install: - pip install -U pip setuptools wheel diff --git a/doc/src/install.rst b/doc/src/install.rst index 053b2bb6..e19021e2 100644 --- a/doc/src/install.rst +++ b/doc/src/install.rst @@ -35,7 +35,7 @@ The current `!psycopg2` implementation supports: NOTE: keep consistent with setup.py and the /features/ page. - Python version 2.7 -- Python 3 versions from 3.4 to 3.7 +- Python 3 versions from 3.4 to 3.8 - PostgreSQL server versions from 7.4 to 11 - PostgreSQL client library version from 9.1 diff --git a/setup.py b/setup.py index 02297330..3320f434 100644 --- a/setup.py +++ b/setup.py @@ -65,6 +65,7 @@ Programming Language :: Python :: 3.4 Programming Language :: Python :: 3.5 Programming Language :: Python :: 3.6 Programming Language :: Python :: 3.7 +Programming Language :: Python :: 3.8 Programming Language :: Python :: Implementation :: CPython Programming Language :: C Programming Language :: SQL diff --git a/tox.ini b/tox.ini index b54bb764..b05e11dd 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py{27,34,35,36,37} +envlist = py{27,34,35,36,37,38} [testenv] commands = make check From ade98c13595cd5641a198a7fbd6865289d15f30b Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Sat, 19 Oct 2019 14:35:05 +0200 Subject: [PATCH 2/3] Added Py 3.8 support to appveyor build VS 14 is the one to use: https://wiki.python.org/moin/WindowsCompilers Note that appveyor doesn't have Py 3.8 yet though. --- .appveyor.yml | 5 +++++ scripts/appveyor.py | 6 ++++-- 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/.appveyor.yml b/.appveyor.yml index 13d4e251..9371a957 100644 --- a/.appveyor.yml +++ b/.appveyor.yml @@ -22,6 +22,11 @@ environment: - {PY_VER: "34", PY_ARCH: "32"} - {PY_VER: "34", PY_ARCH: "64"} + # not supported by appveyor as of 2019-10-19 + # https://www.appveyor.com/docs/windows-images-software/#python + # - {PY_VER: "38", PY_ARCH: "32"} + # - {PY_VER: "38", PY_ARCH: "64"} + OPENSSL_VERSION: "1_1_1b" POSTGRES_VERSION: "11_2" diff --git a/scripts/appveyor.py b/scripts/appveyor.py index f5d8c46b..0b0de16f 100755 --- a/scripts/appveyor.py +++ b/scripts/appveyor.py @@ -698,7 +698,7 @@ class Options: def py_ver(self): """The Python version to build as 2 digits string.""" rv = os.environ['PY_VER'] - assert rv in ('27', '34', '35', '36', '37'), rv + assert rv in ('27', '34', '35', '36', '37', '38'), rv return rv @property @@ -773,9 +773,10 @@ class Options: @property def vs_ver(self): + # https://wiki.python.org/moin/WindowsCompilers # Py 2.7 = VS Ver. 9.0 (VS 2008) # Py 3.3, 3.4 = VS Ver. 10.0 (VS 2010) - # Py 3.5, 3.6, 3.7 = VS Ver. 14.0 (VS 2015) + # Py 3.5--3.8 = VS Ver. 14.0 (VS 2015) vsvers = { '27': '9.0', '33': '10.0', @@ -783,6 +784,7 @@ class Options: '35': '14.0', '36': '14.0', '37': '14.0', + '38': '14.0', } return vsvers[self.py_ver] From 500f438033afbd40c646f69261c2ef55f92e147b Mon Sep 17 00:00:00 2001 From: Daniele Varrazzo Date: Sat, 19 Oct 2019 16:07:35 +0200 Subject: [PATCH 3/3] Support for Python 3.8 mentioned in news file --- NEWS | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 94d6f5e4..198c4eeb 100644 --- a/NEWS +++ b/NEWS @@ -7,7 +7,8 @@ What's new in psycopg 2.8.4 - Don't swallow keyboard interrupts on connect when a password is specified in the connection string (:ticket:`#898`). - Fixed int overflow for large values in `~psycopg2.extensions.Column.table_oid` - and `~psycopg2.extensions.Column.type_code` (:ticket:`961). + and `~psycopg2.extensions.Column.type_code` (:ticket:`961`). +- Fixed building with Python 3.8 (:ticket:`854`). What's new in psycopg 2.8.3