Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 0 additions & 62 deletions .github/workflows/linux-wheel-builder.yml

This file was deleted.

61 changes: 0 additions & 61 deletions .github/workflows/macos-wheel-builder.yml

This file was deleted.

6 changes: 3 additions & 3 deletions .github/workflows/misc-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -112,11 +112,11 @@ jobs:
run: |
mkdir build
cd build
cmake .. -GNinja -DCMAKE_INSTALL_PREFIX=/opt/treelite
cmake .. -GNinja -DCMAKE_INSTALL_PREFIX=/opt/treelite -DCMAKE_INSTALL_LIBDIR=lib
ninja install -v
cd ../python
pip install --force-reinstall -v . --config-settings use_system_libtreelite=True \
--config-settings system_libtreelite_dir=/opt/treelite/lib
pip install --force-reinstall -v . --config-settings=cmake.define.TREELITE_USE_SYSTEM_LIBTREELITE=ON \
--config-settings=cmake.define.TREELITE_SYSTEM_LIBTREELITE_DIR=/opt/treelite/lib
cd ..
rm -rf build/
python -c "import treelite; print(treelite.core._LIB)"
59 changes: 59 additions & 0 deletions .github/workflows/wheel-builder.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: wheel-builder

on:
pull_request:
push:
branches:
- mainline
- 'release_*'
schedule:
- cron: "0 7 * * *" # Run once daily

permissions:
contents: read # to fetch code (actions/checkout)

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

env:
COMMIT_ID: ${{ github.sha }}
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID_IAM_S3_UPLOADER }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY_IAM_S3_UPLOADER }}

jobs:
wheel-builder:
name: Build and test Python wheels (${{ matrix.os }})
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-latest
wheel-tag: manylinux_2_28_x86_64
- os: ubuntu-24.04-arm
wheel-tag: manylinux_2_28_aarch64
- os: macos-15-intel
wheel-tag: macosx_10_15_x86_64 # should match MACOSX_DEPLOYMENT_TARGET in pyproject.toml overrides
- os: macos-14
wheel-tag: macosx_12_0_arm64
- os: windows-latest
wheel-tag: win_amd64
steps:
- uses: actions/checkout@v7

- name: Build and test wheel
uses: pypa/cibuildwheel@v4.1.0
with:
package-dir: python
output-dir: wheelhouse

- name: Rename wheel with commit ID
shell: bash
run: |
python3 tests/ci_build/rename_whl.py wheelhouse "${COMMIT_ID}" ${{ matrix.wheel-tag }}

- name: Upload wheel to S3
shell: bash
run: |
aws s3 cp wheelhouse/treelite-*.whl s3://treelite-wheels/ --acl public-read --region us-west-2 || true
47 changes: 0 additions & 47 deletions .github/workflows/windows-wheel-builder.yml

This file was deleted.

11 changes: 5 additions & 6 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -41,12 +41,10 @@

# build folder
/build/
/python/dist/
/python/build/
/python/treelite.egg-info/
/runtime/python/dist/
/runtime/python/build/
/runtime/python/treelite_runtime.egg-info/
python/dist/
python/build/
python/treelite.egg-info/
python/cpp_src/

# Executables
*.exe
Expand All @@ -59,6 +57,7 @@

# Python wheel binaries
/python/dist/
**/wheelhouse/

# Python cache
__pycache__
Expand Down
12 changes: 6 additions & 6 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,16 @@ repos:
- id: check-added-large-files
args: ["--maxkb=4000"]
- repo: https://github.com/psf/black
rev: 26.1.0
rev: 26.5.1
hooks:
- id: black
- repo: https://github.com/pycqa/isort
rev: 8.0.1
rev: 9.0.0b5
hooks:
- id: isort
args: ["--profile", "black", "--filter-files"]
- repo: https://github.com/MarcoGorelli/cython-lint
rev: v0.19.0
rev: v0.21.0
hooks:
- id: cython-lint
- id: double-quote-cython-strings
Expand Down Expand Up @@ -49,12 +49,12 @@ repos:
additional_dependencies: [cpplint==1.6.1]
types_or: [c++]
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.19.1
rev: v2.3.1
hooks:
- id: mypy
additional_dependencies: [types-setuptools]
additional_dependencies: [types-setuptools, xgboost]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.15.4
rev: v0.16.4
hooks:
- id: ruff
args: ["--config", "python/pyproject.toml"]
Loading
Loading