From 0dc2dd5812998f2014c516112be9c5fbf2cff6e5 Mon Sep 17 00:00:00 2001 From: Lukas Vojt Date: Wed, 17 Aug 2022 15:02:54 +0200 Subject: [PATCH] feat: add python 3.9 and 3.10 support --- .github/workflows/release.yml | 4 ++-- .github/workflows/test.yml | 3 +-- kw/json/_compat.py | 9 ++++----- setup.py | 2 ++ tox.ini | 12 +++++++----- 5 files changed, 16 insertions(+), 14 deletions(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 11eda3e..4d74cc6 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -7,10 +7,10 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@master - - name: Set up Python 3.8 + - name: Set up Python 3.10 uses: actions/setup-python@v1 with: - python-version: 3.8 + python-version: '3.10' - name: Install setuptools run: >- python -m diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 2a17635..a3d1ebb 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -37,5 +37,4 @@ jobs: key: ${{ runner.os }}-${{ hashFiles('*requirements.txt') }} strategy: matrix: - toxenv: [py37, py38, py38-simplejson] - + toxenv: [py37, py38, py39, py310, py310-simplejson] diff --git a/kw/json/_compat.py b/kw/json/_compat.py index bfa2c38..01923d3 100644 --- a/kw/json/_compat.py +++ b/kw/json/_compat.py @@ -41,13 +41,12 @@ def wrapper(*args, **kwargs): try: result = func(*args, **kwargs) except TypeError as err: - if ( - str(err) - == "__init__() got an unexpected keyword argument 'use_decimal'" + if str(err).endswith( + "__init__() got an unexpected keyword argument 'use_decimal'" ): - raise KiwiJsonError( + raise KiwiJsonError( # pylint: disable=W0707 __use_decimal_error_message - ) # pylint: disable=W0707 + ) raise return result diff --git a/setup.py b/setup.py index cc33787..ff44387 100644 --- a/setup.py +++ b/setup.py @@ -22,5 +22,7 @@ "Operating System :: OS Independent", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", ], ) diff --git a/tox.ini b/tox.ini index c297c4b..baa7b8a 100644 --- a/tox.ini +++ b/tox.ini @@ -1,17 +1,19 @@ [tox] -envlist = py{37,38},py38-simplejson,black,pylint +envlist = py{37,38,39,310},py310-simplejson,black,pylint [testenv] deps = -rtest-requirements.txt basepython = py37: {env:TOXPYTHON:python3.7} py38: {env:TOXPYTHON:python3.8} + py39: {env:TOXPYTHON:python3.9} + py310: {env:TOXPYTHON:python3.10} skip_install = True passenv = DATABASE_URI commands = pytest test {posargs:} -[testenv:py38-simplejson] +[testenv:py310-simplejson] deps = -rtest-requirements.txt simplejson @@ -19,7 +21,7 @@ skip_install = True commands = pytest test {posargs:} [testenv:pylint] -basepython = python3.8 +basepython = python3.10 deps = pylint==2.14.5 -rtest-requirements.txt @@ -27,9 +29,9 @@ skip_install = True commands = pylint {posargs:} kw/json test [testenv:black] -basepython = python3.8 +basepython = python3.10 deps = black -rtest-requirements.txt skip_install = True -commands = black {posargs:} -l 120 --target-version py38 kw test +commands = black {posargs:} -l 120 --target-version py310 kw test