chore(python): Add Python 3.9 support

This commit is contained in:
Dmitry Dygalo 2020-11-09 21:12:49 +01:00
parent 5c69c13a60
commit 90aa54e628
No known key found for this signature in database
GPG Key ID: E2FDD4885D799724
7 changed files with 20 additions and 11 deletions

View File

@ -111,7 +111,7 @@ jobs:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ['3.6', '3.7', '3.8']
python-version: ['3.6', '3.7', '3.8', '3.9']
name: Python ${{ matrix.python-version }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}

View File

@ -11,7 +11,7 @@ jobs:
strategy:
matrix:
os: [macos-latest, windows-latest]
python-version: ['3.5', '3.6', '3.7', '3.8']
python-version: ['3.6', '3.7', '3.8', '3.9']
architecture: [x86, x64]
exclude:
- os: macos-latest
@ -29,7 +29,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
toolchain: stable
override: true
- name: Install Tox
run: pip install tox
@ -48,7 +48,7 @@ jobs:
matrix:
# List of the language-implementation API pairs to publish wheels for
# The list of supported is obtainable by running `docker run quay.io/pypa/manylinux2014_x86_64 ls /opt/python`
PYTHON_IMPLEMENTATION_ABI: [cp35-cp35m, cp36-cp36m, cp37-cp37m, cp38-cp38]
PYTHON_IMPLEMENTATION_ABI: [cp36-cp36m, cp37-cp37m, cp38-cp38, cp39-cp39]
runs-on: ubuntu-latest
container: quay.io/pypa/manylinux2014_x86_64 # Builds wheels on CentOS 7 (supported until 2024)
env:
@ -73,7 +73,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
toolchain: stable
override: true
- name: Install Tox
run: ${{ env.PYTHON_SYS_EXECUTABLE }} -m pip install tox
@ -105,7 +105,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: nightly
toolchain: stable
override: true
- name: Install Tox
run: pip install tox

View File

@ -2,13 +2,16 @@
## [Unreleased]
### Added
- Python 3.9 support.
### Changed
- Remove not needed `__init__.py` file. It improves performance for compiled schemas. [#121](https://github.com/Stranger6667/jsonschema-rs/issues/121)
- Update `PyO3` to `0.12`. [#125](https://github.com/Stranger6667/jsonschema-rs/issues/125)
- Use stable Rust.
- Set module documentation only once.
- Drop Python 3.5 support.
### Fixed
@ -16,6 +19,10 @@
- Formats should be associated to Draft versions (ie. `idn-hostname` is not defined on draft 4 and draft 6)
- Handle errors during conversion to `Value` instead of using `unwrap` in `JSONSchema::is_valid` and `JSONSchema::validate`. [#127](https://github.com/Stranger6667/jsonschema-rs/issues/127)
### Removed
- Python 3.5 support.
## [0.3.3] - 2020-06-22
### Fixed

View File

@ -20,7 +20,7 @@ pyo3 = { version = "^0.12", features = ["extension-module"] }
pyo3-built = "0.4"
[package.metadata.maturin]
requires-python = ">=3.5"
requires-python = ">=3.6"
project-url = ["https://github.com/Stranger6667/jsonschema-rs"]
maintainer = "Dmitry Dygalo"
maintainer-email = "Dmitry Dygalo <dadygalo@gmail.com>"
@ -35,6 +35,7 @@ classifier = [
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: Implementation :: CPython",
]

View File

@ -88,7 +88,7 @@ Measured with stable Rust 1.44.1, Python 3.8.3 on i8700K (12 cores), 32GB RAM, A
Python support
--------------
``jsonschema-rs`` supports Python 3.5, 3.6, 3.7 and 3.8.
``jsonschema-rs`` supports Python 3.6, 3.7, 3.8 and 3.9.
License
-------

View File

@ -29,7 +29,7 @@ def call_setup():
author_email="dadygalo@gmail.com",
maintainer="Dmitry Dygalo",
maintainer_email="dadygalo@gmail.com",
python_requires=">=3.5",
python_requires=">=3.6",
url="https://github.com/Stranger6667/jsonschema-rs/tree/master/python",
license="MIT",
rust_extensions=[RustExtension("jsonschema_rs", binding=Binding.PyO3)],
@ -42,6 +42,7 @@ def call_setup():
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Programming Language :: Python :: 3.8",
"Programming Language :: Python :: 3.9",
"Programming Language :: Python :: Implementation :: CPython",
"Programming Language :: Rust",
],

View File

@ -3,7 +3,7 @@
# (workaround the fact that setup.py does not honor pyproject.toml)
skipsdist = True
envlist = py{35,36,37,38}
envlist = py{36,37,38,39}
[testenv]
deps =