diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ecf577b5b..0226f7835 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -70,6 +70,7 @@ jobs: pyver: ['3.7', '3.8', '3.9', '3.10', '3.11'] no-extensions: ['', 'Y'] os: [ubuntu, macos, windows] + experimental: [false] exclude: - os: macos no-extensions: 'Y' @@ -78,13 +79,24 @@ jobs: include: - pyver: pypy-3.9 no-extensions: 'Y' + experimental: false os: ubuntu - pyver: pypy-3.8 no-extensions: 'Y' + experimental: false + os: ubuntu + - pyver: 3.12-dev + no-extensions: '' + experimental: true + os: ubuntu + - pyver: 3.12-dev + no-extensions: 'Y' + experimental: true os: ubuntu fail-fast: false runs-on: ${{ matrix.os }}-latest timeout-minutes: 15 + continue-on-error: ${{ matrix.experimental }} steps: - name: Checkout uses: actions/checkout@v3 diff --git a/CHANGES/829.bugfix.rst b/CHANGES/829.bugfix.rst new file mode 100644 index 000000000..6eb30e03b --- /dev/null +++ b/CHANGES/829.bugfix.rst @@ -0,0 +1 @@ +Support Python 3.12 (upgraded cython to 3.0.0b3, provided CI test coverage) diff --git a/requirements/cython.txt b/requirements/cython.txt index 5a02e4fc1..3e4e259ce 100644 --- a/requirements/cython.txt +++ b/requirements/cython.txt @@ -1 +1 @@ -cython==0.29.35 +cython==3.0.0b3 diff --git a/setup.cfg b/setup.cfg index 9fbc334f4..da6657d27 100644 --- a/setup.cfg +++ b/setup.cfg @@ -4,12 +4,15 @@ license_file = LICENSE [tool:pytest] addopts = --cov=yarl -v -filterwarnings=error norecursedirs = dist docs build .tox .eggs venv virtualenv .git minversion = 3.8.2 testpaths = tests/ junit_suite_name = yarl_test_suite - +filterwarnings = + error + # https://github.com/pytest-dev/pytest/issues/10977 and https://github.com/pytest-dev/pytest/pull/10894 + ignore:ast\.(Num|NameConstant|Str) is deprecated and will be removed in Python 3\.14; use ast\.Constant instead:DeprecationWarning:_pytest + ignore:Attribute s is deprecated and will be removed in Python 3\.14; use value instead:DeprecationWarning:_pytest [pep8] max-line-length=79