From 81532b31b0a5c2b62389fe72cbaa5e65590a628b Mon Sep 17 00:00:00 2001 From: hauntsaninja Date: Fri, 29 Apr 2022 21:44:07 -0600 Subject: [PATCH] Fix Python 3.11 support --- .github/workflows/build.yml | 15 +++++++++++++++ ast3/Parser/tokenizer.c | 2 ++ 2 files changed, 17 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index fc790467..ea829754 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -3,6 +3,21 @@ name: Build wheels on: [push, pull_request] jobs: + test_prerelease_python: + # needed because manylinux is hesitant to support pre-release python + # so we can't just use cibuildwheel + name: prelease python + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: actions/setup-python@v2 + with: + python-version: '3.11-dev' + - run: | + python3.11 -m pip install -e . + python3.11 -m pip install pytest + python3.11 -m pytest + build_wheels: name: py${{ matrix.python-version }} on ${{ matrix.os }} runs-on: ${{ matrix.os }} diff --git a/ast3/Parser/tokenizer.c b/ast3/Parser/tokenizer.c index 092f2690..a430a00a 100644 --- a/ast3/Parser/tokenizer.c +++ b/ast3/Parser/tokenizer.c @@ -1980,6 +1980,8 @@ Ta3Tokenizer_Get(struct tok_state *tok, char **p_start, char **p_end) The char* returned is malloc'ed via PyMem_MALLOC() and thus must be freed by the caller. */ +PyAPI_FUNC(int) _Py_dup(int fd); + char * Ta3Tokenizer_FindEncodingFilename(int fd, PyObject *filename) {