diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index b36e523..9d7da9e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -15,13 +15,11 @@ jobs: strategy: fail-fast: false matrix: - python-version: ["3.8", "3.9", "3.10", "3.11", "pypy3.9"] + python-version: ["3.9", "3.10", "3.11", "3.12", "3.13", "pypy3.9"] os: [ubuntu-latest, macos-latest, windows-latest] exclude: - os: macos-latest - python-version: "pypy3.9" - - os: macos-latest - python-version: "3.7" + python-version: "pypy3.9" - os: windows-latest python-version: "pypy3.9" runs-on: ${{ matrix.os }} @@ -36,8 +34,8 @@ jobs: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | - pip install -U "pip>=23.1.2" - pip install -U "tox-gh-actions==3.1.0" coverage + pip install -U "pip>=25.1.1" + pip install -U "tox-gh-actions==3.3.0" coverage - name: Log python & pip versions run: | python --version @@ -56,11 +54,11 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: - python-version: "3.10" + python-version: "3.12" - name: Install dependencies run: | pip install -U setuptools - pip install -U "tox>=4.5.1,<5" + pip install -U "tox>=4.26.0,<5" - run: tox -e lint package: name: Build & verify package @@ -69,7 +67,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-python@v4 with: - python-version: "3.9" + python-version: "3.12" - name: Install build, check-wheel-content, and twine run: "python -m pip install build twine check-wheel-contents" - name: Build package diff --git a/pyproject.toml b/pyproject.toml index 02dd722..312cf88 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -1,8 +1,5 @@ [build-system] -requires = [ - "setuptools >= 39.2.0", - "wheel >= 0.29.0", -] +requires = ["setuptools >= 39.2.0", "wheel >= 0.29.0"] build-backend = 'setuptools.build_meta' @@ -18,4 +15,4 @@ line_length = 120 [tool.black] line-length = 120 -target-version = ["py38"] \ No newline at end of file +target-version = ["py311", "py312", "py313"] diff --git a/requirements-dev.txt b/requirements-dev.txt index 3d74880..cb053a0 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -2,7 +2,7 @@ PyYAML==5.4.1 cov-core==1.15.0 coverage==5.5 coveralls==1.5.1 -cryptography==43.0.1 +cryptography==45.0.3 docopt==0.6.2 pytest==6.2.3 pytest-cov==2.11.1 diff --git a/setup.cfg b/setup.cfg index 34bca8b..adaca53 100644 --- a/setup.cfg +++ b/setup.cfg @@ -20,12 +20,12 @@ classifiers = License :: OSI Approved :: MIT License Programming Language :: Python Programming Language :: Python :: 3 - Programming Language :: Python :: 3 :: Only - Programming Language :: Python :: 3.7 - Programming Language :: Python :: 3.8 + Programming Language :: Python :: 3 :: Only Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 + Programming Language :: Python :: 3.12 + Programming Language :: Python :: 3.13 Programming Language :: Python :: Implementation :: PyPy Topic :: Utilities diff --git a/tox.ini b/tox.ini index d8862a8..8f68f76 100644 --- a/tox.ini +++ b/tox.ini @@ -1,17 +1,17 @@ [tox] min_version = 4.4 envlist = - py{37,38,39,310,311,py3}-{base,cryptography-only,pycryptodome-norsa,compatibility}, + py{39,310,311,312,313,py3}-{base,cryptography-only,pycryptodome-norsa,compatibility}, lint skip_missing_interpreters = True [gh-actions] -python = - 3.7: py37-{base,cryptography-only,pycryptodome-norsa,compatibility} - 3.8: py38-{base,cryptography-only,pycryptodome-norsa,compatibility} +python = 3.9: py39-{base,cryptography-only,pycryptodome-norsa,compatibility} 3.10: py310-{base,cryptography-only,pycryptodome-norsa,compatibility} 3.11: py311-{base,cryptography-only,pycryptodome-norsa,compatibility} + 3.12: py312-{base,cryptography-only,pycryptodome-norsa,compatibility} + 3.13: py313-{base,cryptography-only,pycryptodome-norsa,compatibility} pypy-3.9: pypy3-{base,cryptography-only,pycryptodome-norsa,compatibility} [testenv:basecommand] @@ -56,7 +56,7 @@ extras = compatibility: {[testenv:compatibility]extras} [testenv:lint] -basepython = python3.10 +basepython = python3.12 skip_install= True deps = flake8 @@ -69,7 +69,7 @@ commands = [testenv:lintfix] -basepython = python3.10 +basepython = python3.12 skip_install= True deps = isort