diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 7a9ce63..954a3f2 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -11,12 +11,12 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - os: [ubuntu-22.04, windows-2019, macOS-12] + os: [ubuntu-24.04, windows-2025, macOS-15] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v6 name: Install Python with: python-version: "3.12" @@ -27,7 +27,7 @@ jobs: - name: Build wheels run: python -m cibuildwheel --output-dir wheelhouse - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: ${{ matrix.os }} path: ./wheelhouse/*.whl @@ -36,9 +36,9 @@ jobs: name: Build source distribution runs-on: ubuntu-latest steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - - uses: actions/setup-python@v5 + - uses: actions/setup-python@v6 name: Install Python with: python-version: "3.12" @@ -49,7 +49,7 @@ jobs: - name: Build sdist run: python -m build --sdist - - uses: actions/upload-artifact@v4 + - uses: actions/upload-artifact@v7 with: name: sdist path: dist/*.tar.gz @@ -59,24 +59,24 @@ jobs: name: Build and publish Python distributions to PyPI and TestPyPI runs-on: ubuntu-latest steps: - - uses: actions/download-artifact@v4.1.7 + - uses: actions/download-artifact@v8 with: name: sdist path: dist - - uses: actions/download-artifact@v4.1.7 + - uses: actions/download-artifact@v8 with: - name: ubuntu-22.04 + name: ubuntu-24.04 path: dist - - uses: actions/download-artifact@v4.1.7 + - uses: actions/download-artifact@v8 with: - name: windows-2019 + name: windows-2025 path: dist - - uses: actions/download-artifact@v4.1.7 + - uses: actions/download-artifact@v8 with: - name: macOS-12 + name: macOS-15 path: dist - name: Publish distribution to PyPI if: startsWith(github.ref, 'refs/tags') - uses: pypa/gh-action-pypi-publish@v1.4.2 + uses: pypa/gh-action-pypi-publish@v1.14.0 with: password: ${{ secrets.PYPI_API_TOKEN }} diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 12f856e..44f9648 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -9,12 +9,12 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python-version: [3.9, "3.10", "3.11", "3.12", "3.13"] + python-version: [3.9, "3.10", "3.11", "3.12", "3.13", "3.14"] steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 + uses: actions/setup-python@v6 with: python-version: ${{ matrix.python-version }} allow-prereleases: true diff --git a/pyproject.toml b/pyproject.toml index 8863397..aacd148 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -4,22 +4,22 @@ version = "1.11.1" requires-python = ">=3.9" keywords = ["quora", "core", "common", "utility"] classifiers = [ - "License :: OSI Approved :: Apache Software License", "Programming Language :: Python", "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 :: 3.14", ] authors = [ {name = "Quora, Inc.", email = "asynq@quora.com"}, ] -license = {text = "Apache Software License"} +license = "Apache-2.0" dynamic = ["readme"] [tool.black] -target-version = ['py39', 'py310', 'py311', 'py312', 'py313'] +target-version = ['py39', 'py310', 'py311', 'py312', 'py313', 'py314'] include = '\.pyi?$' skip-magic-trailing-comma = true preview = true @@ -43,4 +43,4 @@ requires = ["setuptools>=64.0", "cython>=3"] build-backend = "setuptools.build_meta" [tool.cibuildwheel] -build = "cp{39,310,311,312,313}-*" +build = "cp{39,310,311,312,313,314}-*" diff --git a/tox.ini b/tox.ini index 72b5fa5..e6c6365 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,7 @@ [tox] minversion=2.3.1 envlist = - py39,py310,py311,py312,py313 + py39,py310,py311,py312,py313,py314 mypy black skip_missing_interpreters = True @@ -32,3 +32,4 @@ python = 3.11: py311 3.12: py312, black 3.13: py313 + 3.14: py314