-
Notifications
You must be signed in to change notification settings - Fork 111
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Adding #255 defer ipython import for large import speed improvements (thanks to Eric Prestat) * Adding testing for Python 3.12 * Fixing #253 merge_update box list merge types not populated to sub dictionaries (thanks to lei wang) * Fixing #257 Two test failures due to arguments having incorrect types (thanks to Michał Górny) * Fixing stub files to match latest code signatures * Removing #251 support for circular references in lists (thanks to d00m514y3r) --------- Co-authored-by: Eric Prestat <[email protected]>
- Loading branch information
1 parent
9a4b108
commit e61a7d2
Showing
21 changed files
with
268 additions
and
213 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,7 +18,7 @@ jobs: | |
- name: Set up Python | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: '3.10' | ||
python-version: '3.11' | ||
|
||
- name: Install Dependencies | ||
run: | | ||
|
@@ -39,7 +39,7 @@ jobs: | |
strategy: | ||
matrix: | ||
os: [macos-11, windows-latest] | ||
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] | ||
python-version: ["3.8", "3.9", "3.10", "3.11"] | ||
runs-on: ${{ matrix.os }} | ||
|
||
steps: | ||
|
@@ -51,7 +51,7 @@ jobs: | |
- name: Install dependencies | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install setuptools wheel twine Cython --upgrade | ||
pip install setuptools wheel twine Cython==3.0.0 --upgrade | ||
- name: Build and publish | ||
env: | ||
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} | ||
|
@@ -64,24 +64,26 @@ jobs: | |
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python 3.10 | ||
- name: Set up Python 3.11 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
python-version: "3.11" | ||
|
||
- uses: RalfG/[email protected]_x86_64 | ||
with: | ||
python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310' | ||
build-requirements: 'cython' | ||
|
||
- name: Install dependencies | ||
- name: Build wheels | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install twine --upgrade | ||
pip install cibuildwheel | ||
python -m cibuildwheel --output-dir dist | ||
env: | ||
CIBW_BUILD: cp38-manylinux_x86_64 cp39-manylinux_x86_64 cp310-manylinux_x86_64 cp311-manylinux_x86_64 cp311-macosx_x86_64 | ||
CIBW_BEFORE_BUILD: pip install Cython==3.0.0 | ||
CIBW_BEFORE_TEST: pip install -r requirements.txt -r requirements-test.txt setuptools wheel twine | ||
CIBW_TEST_COMMAND: pytest {package}/test -vv | ||
|
||
- name: Publish | ||
env: | ||
TWINE_USERNAME: ${{ secrets.PYPI_USERNAME }} | ||
TWINE_PASSWORD: ${{ secrets.PYPI_PASSWORD }} | ||
run: | | ||
twine upload dist/*-manylinux*.whl | ||
twine upload dist/*-macosx*.whl |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -13,7 +13,7 @@ jobs: | |
package-checks: | ||
strategy: | ||
matrix: | ||
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11", "pypy-3.8"] | ||
python-version: ["3.8", "3.9", "3.10", "3.11", "3.12-dev", "pypy-3.8"] | ||
os: [ubuntu-latest, macos-11, windows-latest] | ||
runs-on: ${{ matrix.os }} | ||
steps: | ||
|
@@ -31,7 +31,7 @@ jobs: | |
python -m pip install --upgrade pip | ||
pip install -r requirements.txt | ||
pip install -r requirements-test.txt | ||
pip install coveralls flake8 flake8-print mypy setuptools wheel twine Cython | ||
pip install coveralls flake8 flake8-print mypy setuptools wheel twine Cython==3.0.0 | ||
- name: Lint with flake8 | ||
run: | | ||
# stop the build if there are Python syntax errors, undefined names or print statements | ||
|
@@ -49,16 +49,16 @@ jobs: | |
run: | | ||
pip install dist/*.whl | ||
rm -rf box | ||
python -m pytest | ||
python -m pytest -vv | ||
- name: Test packaged wheel on Windows | ||
if: matrix.os == 'windows-latest' | ||
run: | | ||
$wheel = (Get-ChildItem dist\*.whl | Sort lastWriteTime | Select-Object -last 1).Name | ||
pip install dist\${wheel} | ||
Remove-item box -recurse -force | ||
python -m pytest | ||
python -m pytest -vv | ||
- name: Upload wheel artifact | ||
uses: actions/upload-artifact@v2 | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: python_box | ||
path: dist/*.whl | ||
|
@@ -67,44 +67,37 @@ jobs: | |
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Set up Python 3.10 | ||
- name: Set up Python 3.11 | ||
uses: actions/setup-python@v4 | ||
with: | ||
python-version: "3.10" | ||
python-version: "3.11" | ||
|
||
- uses: actions/cache@v3 | ||
with: | ||
path: ~/.cache/pip | ||
key: package-manylinux-check-${{ hashFiles('requirements.txt') }}-${{ hashFiles('requirements-test.txt') }} | ||
|
||
- name: Install dependencies | ||
- name: Build wheels | ||
run: | | ||
python -m pip install --upgrade pip | ||
pip install -r requirements.txt | ||
pip install -r requirements-test.txt | ||
pip install coveralls flake8 flake8-print mypy setuptools wheel twine Cython | ||
- uses: RalfG/[email protected]_x86_64 | ||
with: | ||
python-versions: 'cp37-cp37m cp38-cp38 cp39-cp39 cp310-cp310' | ||
build-requirements: 'cython' | ||
|
||
- name: Test packaged wheel on linux | ||
run: | | ||
pip install dist/*cp310-manylinux*.whl | ||
rm -rf box | ||
python -m pytest | ||
pip install cibuildwheel | ||
python -m cibuildwheel --output-dir dist | ||
env: | ||
CIBW_BUILD: cp38-manylinux_x86_64 cp39-manylinux_x86_64 cp310-manylinux_x86_64 cp311-manylinux_x86_64 cp311-macosx_x86_64 | ||
CIBW_BEFORE_BUILD: pip install Cython==3.0.0 | ||
CIBW_BEFORE_TEST: pip install -r requirements.txt -r requirements-test.txt setuptools wheel twine | ||
CIBW_TEST_COMMAND: pytest {package}/test -vv | ||
|
||
- name: Upload wheel artifact | ||
uses: actions/upload-artifact@v2 | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: python_box | ||
path: dist/*-manylinux*.whl | ||
|
||
test: | ||
strategy: | ||
matrix: | ||
python-version: ["3.7", "3.8", "3.9", "3.10", "3.11"] | ||
python-version: ["3.8", "3.9", "3.10", "3.11"] | ||
os: [ubuntu-latest, macos-11, windows-latest] | ||
runs-on: ${{ matrix.os }} | ||
steps: | ||
|
@@ -122,10 +115,10 @@ jobs: | |
python -m pip install --upgrade pip | ||
pip install -r requirements.txt | ||
pip install -r requirements-test.txt | ||
pip install setuptools wheel Cython | ||
pip install setuptools wheel Cython==3.0.0 | ||
python setup.py build_ext --inplace | ||
- name: Test with pytest | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
run: | | ||
pytest --cov=box test/ | ||
pytest --cov=box -vv test/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.