perpetual 0.9.1__tar.gz → 0.9.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of perpetual might be problematic. Click here for more details.
- {perpetual-0.9.1 → perpetual-0.9.3}/.github/workflows/CI.yml +221 -244
- {perpetual-0.9.1 → perpetual-0.9.3}/.github/workflows/cargo-build-publish.yml +31 -31
- {perpetual-0.9.1 → perpetual-0.9.3}/.github/workflows/docs.yml +30 -28
- perpetual-0.9.3/.github/workflows/release.yml +173 -0
- {perpetual-0.9.1 → perpetual-0.9.3}/.gitignore +11 -11
- {perpetual-0.9.1 → perpetual-0.9.3}/.pre-commit-config.yaml +19 -19
- {perpetual-0.9.1 → perpetual-0.9.3}/CONTRIBUTING.md +110 -110
- {perpetual-0.9.1 → perpetual-0.9.3}/Cargo.toml +2 -2
- {perpetual-0.9.1 → perpetual-0.9.3}/LICENSE +673 -673
- {perpetual-0.9.1 → perpetual-0.9.3}/PKG-INFO +131 -130
- {perpetual-0.9.1/python-package → perpetual-0.9.3}/README.md +130 -129
- {perpetual-0.9.1 → perpetual-0.9.3}/benches/perpetual_benchmarks.rs +168 -168
- {perpetual-0.9.1 → perpetual-0.9.3}/examples/cal_housing.rs +150 -150
- {perpetual-0.9.1 → perpetual-0.9.3}/examples/cover_types.rs +182 -182
- {perpetual-0.9.1 → perpetual-0.9.3}/examples/titanic.rs +61 -61
- {perpetual-0.9.1 → perpetual-0.9.3}/pyproject.toml +3 -3
- {perpetual-0.9.1 → perpetual-0.9.3}/python/perpetual/__init__.py +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/python/perpetual/booster.py +1066 -1064
- {perpetual-0.9.1 → perpetual-0.9.3}/python/perpetual/data.py +25 -25
- {perpetual-0.9.1/python-package → perpetual-0.9.3}/python/perpetual/serialize.py +74 -74
- {perpetual-0.9.1 → perpetual-0.9.3}/python/perpetual/types.py +150 -150
- {perpetual-0.9.1/python-package → perpetual-0.9.3}/python/perpetual/utils.py +217 -217
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/.gitignore +71 -71
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/Cargo.lock +52 -46
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/Cargo.toml +5 -5
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/LICENSE +673 -673
- {perpetual-0.9.1 → perpetual-0.9.3/python-package}/README.md +130 -129
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/docs/index.md +39 -39
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/benchmark_lgbm.py +134 -134
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/benchmark_perpetual.py +63 -63
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/categorical_data.ipynb +398 -398
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/categorical_data_diamonds.ipynb +392 -392
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/categorical_data_titanic.ipynb +286 -286
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/fetch_openml.ipynb +101 -101
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/lgbm_openml_sensory.ipynb +141 -141
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/openml.ipynb +178 -178
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/openml_mnist.ipynb +86 -86
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/performance_benchmark.ipynb +339 -339
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/santander.ipynb +197 -197
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/examples/toy_datasets.ipynb +101 -101
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/mkdocs.yml +47 -47
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/python/perpetual/__init__.py +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/python/perpetual/booster.py +1066 -1064
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/python/perpetual/data.py +25 -25
- {perpetual-0.9.1 → perpetual-0.9.3/python-package}/python/perpetual/serialize.py +74 -74
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/python/perpetual/types.py +150 -150
- {perpetual-0.9.1 → perpetual-0.9.3/python-package}/python/perpetual/utils.py +217 -217
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/src/booster.rs +503 -503
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/src/lib.rs +22 -22
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/src/multi_output.rs +428 -428
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/src/utils.rs +53 -53
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/tests/test_booster.py +724 -724
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/tests/test_multi_output.py +22 -22
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/tests/test_save_load.py +186 -186
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/tests/test_serialize.py +63 -63
- {perpetual-0.9.1 → perpetual-0.9.3}/python-package/uv.lock +1980 -1980
- {perpetual-0.9.1 → perpetual-0.9.3}/rust-toolchain +1 -1
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/make_resources.py +102 -102
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/remove-optional-deps.py +18 -18
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/run-python-tests.ps1 +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/run-python-tests.sh +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/run-single-python-test.ps1 +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/uv_script.ps1 +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/scripts/uv_script.sh +6 -6
- {perpetual-0.9.1 → perpetual-0.9.3}/src/bin.rs +158 -158
- {perpetual-0.9.1 → perpetual-0.9.3}/src/binning.rs +237 -237
- {perpetual-0.9.1 → perpetual-0.9.3}/src/booster/booster.rs +1256 -1098
- {perpetual-0.9.1 → perpetual-0.9.3}/src/booster/mod.rs +4 -4
- {perpetual-0.9.1 → perpetual-0.9.3}/src/booster/multi_output.rs +758 -758
- {perpetual-0.9.1 → perpetual-0.9.3}/src/booster/predict.rs +213 -213
- {perpetual-0.9.1 → perpetual-0.9.3}/src/booster/setters.rs +168 -168
- {perpetual-0.9.1 → perpetual-0.9.3}/src/conformal/cqr.rs +178 -178
- {perpetual-0.9.1 → perpetual-0.9.3}/src/conformal/mod.rs +1 -1
- {perpetual-0.9.1 → perpetual-0.9.3}/src/constants.rs +9 -9
- {perpetual-0.9.1 → perpetual-0.9.3}/src/constraints.rs +11 -11
- {perpetual-0.9.1 → perpetual-0.9.3}/src/data.rs +381 -381
- {perpetual-0.9.1 → perpetual-0.9.3}/src/errors.rs +18 -18
- {perpetual-0.9.1 → perpetual-0.9.3}/src/grower.rs +46 -46
- {perpetual-0.9.1 → perpetual-0.9.3}/src/histogram.rs +567 -567
- {perpetual-0.9.1 → perpetual-0.9.3}/src/lib.rs +29 -29
- perpetual-0.9.3/src/metrics/classification/metrics.rs +75 -0
- perpetual-0.9.3/src/metrics/classification/mod.rs +2 -0
- perpetual-0.9.1/src/metric.rs → perpetual-0.9.3/src/metrics/mod.rs +179 -314
- perpetual-0.9.3/src/metrics/regression/metrics.rs +76 -0
- perpetual-0.9.3/src/metrics/regression/mod.rs +2 -0
- {perpetual-0.9.1 → perpetual-0.9.3}/src/node.rs +287 -287
- perpetual-0.9.3/src/objective_functions/adaptive_huber_loss.rs +140 -0
- perpetual-0.9.3/src/objective_functions/huber_loss.rs +115 -0
- perpetual-0.9.3/src/objective_functions/log_loss.rs +87 -0
- perpetual-0.9.3/src/objective_functions/mod.rs +165 -0
- perpetual-0.9.3/src/objective_functions/quantile_loss.rs +121 -0
- perpetual-0.9.3/src/objective_functions/squared_loss.rs +73 -0
- {perpetual-0.9.1 → perpetual-0.9.3}/src/partial_dependence.rs +151 -151
- {perpetual-0.9.1 → perpetual-0.9.3}/src/prune.rs +381 -381
- {perpetual-0.9.1 → perpetual-0.9.3}/src/sampler.rs +43 -43
- {perpetual-0.9.1 → perpetual-0.9.3}/src/shapley.rs +221 -221
- {perpetual-0.9.1 → perpetual-0.9.3}/src/splitter.rs +2256 -2256
- {perpetual-0.9.1 → perpetual-0.9.3}/src/tree/mod.rs +2 -2
- {perpetual-0.9.1 → perpetual-0.9.3}/src/tree/predict.rs +292 -292
- {perpetual-0.9.1 → perpetual-0.9.3}/src/tree/tree.rs +833 -833
- {perpetual-0.9.1 → perpetual-0.9.3}/src/utils.rs +1354 -1354
- perpetual-0.9.1/src/objective.rs +0 -400
- {perpetual-0.9.1 → perpetual-0.9.3}/resources/perp_logo.png +0 -0
- {perpetual-0.9.1 → perpetual-0.9.3}/rustfmt.toml +0 -0
|
@@ -1,244 +1,221 @@
|
|
|
1
|
-
name: Test and Deploy
|
|
2
|
-
on: [pull_request]
|
|
3
|
-
|
|
4
|
-
jobs:
|
|
5
|
-
windows-build-test:
|
|
6
|
-
strategy:
|
|
7
|
-
matrix:
|
|
8
|
-
pyversion: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
9
|
-
runs-on: "windows-latest"
|
|
10
|
-
steps:
|
|
11
|
-
- uses: actions/checkout@v4
|
|
12
|
-
- name: Install latests stable Rust
|
|
13
|
-
uses: dtolnay/rust-toolchain@stable
|
|
14
|
-
with:
|
|
15
|
-
toolchain: stable
|
|
16
|
-
- uses: actions/setup-python@v5
|
|
17
|
-
with:
|
|
18
|
-
python-version: ${{ matrix.pyversion }}
|
|
19
|
-
architecture: x64
|
|
20
|
-
- name: Install deps
|
|
21
|
-
run: pip install numpy pandas seaborn scikit-learn toml
|
|
22
|
-
- run: |
|
|
23
|
-
cp README.md python-package/README.md
|
|
24
|
-
cp LICENSE python-package/LICENSE
|
|
25
|
-
- name: Build test data
|
|
26
|
-
run: |
|
|
27
|
-
cd python-package
|
|
28
|
-
python -m pip install -e .[dev]
|
|
29
|
-
cd ..
|
|
30
|
-
python scripts/make_resources.py
|
|
31
|
-
- name: Build wheels with maturin
|
|
32
|
-
uses: PyO3/maturin-action@v1
|
|
33
|
-
with:
|
|
34
|
-
target: x86_64
|
|
35
|
-
command: build
|
|
36
|
-
args: --release --strip --interpreter python --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
37
|
-
- name: Install wheel
|
|
38
|
-
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
39
|
-
- name: Run Package Tests
|
|
40
|
-
run: |
|
|
41
|
-
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
42
|
-
cd python-package
|
|
43
|
-
ruff check .
|
|
44
|
-
black --check .
|
|
45
|
-
pytest --cov-fail-under=90 tests
|
|
46
|
-
cd ..
|
|
47
|
-
- name: Save Artifacts
|
|
48
|
-
uses: actions/upload-artifact@v4
|
|
49
|
-
with:
|
|
50
|
-
name: dist-windows-${{ matrix.pyversion }}
|
|
51
|
-
path: dist
|
|
52
|
-
|
|
53
|
-
macos-build-test:
|
|
54
|
-
strategy:
|
|
55
|
-
matrix:
|
|
56
|
-
pyversion: ["3.11", "3.12", "3.13"]
|
|
57
|
-
os: [macos-latest, macos-latest-large]
|
|
58
|
-
runs-on: ${{ matrix.os }}
|
|
59
|
-
steps:
|
|
60
|
-
- uses: actions/checkout@v4
|
|
61
|
-
- name: Install latest stable Rust
|
|
62
|
-
uses: dtolnay/rust-toolchain@stable
|
|
63
|
-
with:
|
|
64
|
-
toolchain: stable
|
|
65
|
-
- uses: actions/setup-python@v5
|
|
66
|
-
with:
|
|
67
|
-
python-version: ${{ matrix.pyversion }}
|
|
68
|
-
- name: Install deps
|
|
69
|
-
run: pip install numpy pandas seaborn scikit-learn toml
|
|
70
|
-
- run: |
|
|
71
|
-
cp README.md python-package/README.md
|
|
72
|
-
cp LICENSE python-package/LICENSE
|
|
73
|
-
- name: Build test data
|
|
74
|
-
run: |
|
|
75
|
-
cd python-package
|
|
76
|
-
python -m pip install -e .[dev]
|
|
77
|
-
cd ..
|
|
78
|
-
python scripts/make_resources.py
|
|
79
|
-
- name: Build wheels with maturin
|
|
80
|
-
uses: PyO3/maturin-action@v1
|
|
81
|
-
with:
|
|
82
|
-
command: build
|
|
83
|
-
args: --release --strip --interpreter python --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
84
|
-
- name: Install wheel
|
|
85
|
-
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
86
|
-
- name: Run Package Tests
|
|
87
|
-
run: |
|
|
88
|
-
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
89
|
-
cd python-package
|
|
90
|
-
ruff check .
|
|
91
|
-
black --check .
|
|
92
|
-
pytest --cov-fail-under=90 tests
|
|
93
|
-
cd ..
|
|
94
|
-
- name: Save Artifacts
|
|
95
|
-
uses: actions/upload-artifact@v4
|
|
96
|
-
with:
|
|
97
|
-
name: dist-${{ matrix.os }}-${{ matrix.pyversion }}
|
|
98
|
-
path: dist
|
|
99
|
-
|
|
100
|
-
linux-build-test:
|
|
101
|
-
runs-on: ubuntu-latest
|
|
102
|
-
strategy:
|
|
103
|
-
matrix:
|
|
104
|
-
pyversion: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
105
|
-
steps:
|
|
106
|
-
- uses: actions/checkout@v4
|
|
107
|
-
- name: Install latests stable Rust
|
|
108
|
-
uses: dtolnay/rust-toolchain@stable
|
|
109
|
-
with:
|
|
110
|
-
toolchain: stable
|
|
111
|
-
- uses: actions/setup-python@v5
|
|
112
|
-
with:
|
|
113
|
-
python-version: ${{ matrix.pyversion }}
|
|
114
|
-
architecture: x64
|
|
115
|
-
- name: Install deps
|
|
116
|
-
run: pip install numpy pandas seaborn scikit-learn toml
|
|
117
|
-
- run: |
|
|
118
|
-
cp README.md python-package/README.md
|
|
119
|
-
cp LICENSE python-package/LICENSE
|
|
120
|
-
- name: Build test data
|
|
121
|
-
run: |
|
|
122
|
-
cd python-package
|
|
123
|
-
python -m pip install -e .[dev]
|
|
124
|
-
cd ..
|
|
125
|
-
python scripts/make_resources.py
|
|
126
|
-
- name: Build wheels with maturin
|
|
127
|
-
uses: PyO3/maturin-action@v1
|
|
128
|
-
with:
|
|
129
|
-
target: x86_64
|
|
130
|
-
manylinux: auto
|
|
131
|
-
command: build
|
|
132
|
-
args: --release --strip --interpreter python${{ matrix.pyversion }} --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
133
|
-
- name: Install wheel
|
|
134
|
-
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
135
|
-
- name: Run Package Tests
|
|
136
|
-
run: |
|
|
137
|
-
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
138
|
-
cd python-package
|
|
139
|
-
ruff check .
|
|
140
|
-
black --check .
|
|
141
|
-
pytest --cov-fail-under=90 tests
|
|
142
|
-
cd ..
|
|
143
|
-
- name: Save Artifacts
|
|
144
|
-
uses: actions/upload-artifact@v4
|
|
145
|
-
with:
|
|
146
|
-
name: dist-linux-${{ matrix.pyversion }}
|
|
147
|
-
path: dist
|
|
148
|
-
|
|
149
|
-
linux-arm-build-test:
|
|
150
|
-
runs-on: ubuntu-24.04-arm
|
|
151
|
-
strategy:
|
|
152
|
-
matrix:
|
|
153
|
-
pyversion: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
154
|
-
steps:
|
|
155
|
-
- uses: actions/checkout@v4
|
|
156
|
-
- name: Install latests stable Rust
|
|
157
|
-
uses: dtolnay/rust-toolchain@stable
|
|
158
|
-
with:
|
|
159
|
-
toolchain: stable
|
|
160
|
-
- uses: actions/setup-python@v5
|
|
161
|
-
with:
|
|
162
|
-
python-version: ${{ matrix.pyversion }}
|
|
163
|
-
architecture: arm64
|
|
164
|
-
- name: Install deps
|
|
165
|
-
run: pip install numpy pandas seaborn scikit-learn toml
|
|
166
|
-
- run: |
|
|
167
|
-
cp README.md python-package/README.md
|
|
168
|
-
cp LICENSE python-package/LICENSE
|
|
169
|
-
- name: Build test data
|
|
170
|
-
run: |
|
|
171
|
-
cd python-package
|
|
172
|
-
python -m pip install -e .[dev]
|
|
173
|
-
cd ..
|
|
174
|
-
python scripts/make_resources.py
|
|
175
|
-
- name: Build wheels with maturin
|
|
176
|
-
uses: PyO3/maturin-action@v1
|
|
177
|
-
with:
|
|
178
|
-
manylinux: auto
|
|
179
|
-
command: build
|
|
180
|
-
args: --release --strip --interpreter python${{ matrix.pyversion }} --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
181
|
-
- name: Install wheel
|
|
182
|
-
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
183
|
-
- name: Run Package Tests
|
|
184
|
-
run: |
|
|
185
|
-
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
186
|
-
cd python-package
|
|
187
|
-
ruff check .
|
|
188
|
-
black --check .
|
|
189
|
-
pytest --cov-fail-under=90 tests
|
|
190
|
-
cd ..
|
|
191
|
-
- name: Save Artifacts
|
|
192
|
-
uses: actions/upload-artifact@v4
|
|
193
|
-
with:
|
|
194
|
-
name: dist-linux-arm-${{ matrix.pyversion }}
|
|
195
|
-
path: dist
|
|
196
|
-
|
|
197
|
-
cargo-build-test:
|
|
198
|
-
runs-on: ubuntu-latest
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
cp
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
run: cargo test --verbose
|
|
223
|
-
- name: Publish Crate
|
|
224
|
-
run: cargo publish --token ${CRATES_TOKEN} --allow-dirty
|
|
225
|
-
env:
|
|
226
|
-
CRATES_TOKEN: ${{ secrets.CRATES_TOKEN }}
|
|
227
|
-
|
|
228
|
-
pypi-publish:
|
|
229
|
-
runs-on: ubuntu-latest
|
|
230
|
-
needs: ["windows-build-test", "macos-build-test", "linux-build-test"]
|
|
231
|
-
environment:
|
|
232
|
-
name: Test and Deploy
|
|
233
|
-
url: https://pypi.org/p/perpetual
|
|
234
|
-
permissions:
|
|
235
|
-
id-token: write
|
|
236
|
-
steps:
|
|
237
|
-
- name: Retrieve release distributions
|
|
238
|
-
uses: actions/download-artifact@v4
|
|
239
|
-
with:
|
|
240
|
-
pattern: dist-*
|
|
241
|
-
merge-multiple: true
|
|
242
|
-
path: dist
|
|
243
|
-
- name: Publish release distributions to PyPI
|
|
244
|
-
uses: pypa/gh-action-pypi-publish@release/v1
|
|
1
|
+
name: Test and Deploy
|
|
2
|
+
on: [pull_request]
|
|
3
|
+
|
|
4
|
+
jobs:
|
|
5
|
+
windows-build-test:
|
|
6
|
+
strategy:
|
|
7
|
+
matrix:
|
|
8
|
+
pyversion: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
9
|
+
runs-on: "windows-latest"
|
|
10
|
+
steps:
|
|
11
|
+
- uses: actions/checkout@v4
|
|
12
|
+
- name: Install latests stable Rust
|
|
13
|
+
uses: dtolnay/rust-toolchain@stable
|
|
14
|
+
with:
|
|
15
|
+
toolchain: stable
|
|
16
|
+
- uses: actions/setup-python@v5
|
|
17
|
+
with:
|
|
18
|
+
python-version: ${{ matrix.pyversion }}
|
|
19
|
+
architecture: x64
|
|
20
|
+
- name: Install deps
|
|
21
|
+
run: pip install numpy pandas seaborn scikit-learn toml
|
|
22
|
+
- run: |
|
|
23
|
+
cp README.md python-package/README.md
|
|
24
|
+
cp LICENSE python-package/LICENSE
|
|
25
|
+
- name: Build test data
|
|
26
|
+
run: |
|
|
27
|
+
cd python-package
|
|
28
|
+
python -m pip install -e .[dev]
|
|
29
|
+
cd ..
|
|
30
|
+
python scripts/make_resources.py
|
|
31
|
+
- name: Build wheels with maturin
|
|
32
|
+
uses: PyO3/maturin-action@v1
|
|
33
|
+
with:
|
|
34
|
+
target: x86_64
|
|
35
|
+
command: build
|
|
36
|
+
args: --release --strip --interpreter python --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
37
|
+
- name: Install wheel
|
|
38
|
+
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
39
|
+
- name: Run Package Tests
|
|
40
|
+
run: |
|
|
41
|
+
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
42
|
+
cd python-package
|
|
43
|
+
ruff check .
|
|
44
|
+
black --check .
|
|
45
|
+
pytest --cov-fail-under=90 tests
|
|
46
|
+
cd ..
|
|
47
|
+
- name: Save Artifacts
|
|
48
|
+
uses: actions/upload-artifact@v4
|
|
49
|
+
with:
|
|
50
|
+
name: dist-windows-${{ matrix.pyversion }}
|
|
51
|
+
path: dist
|
|
52
|
+
|
|
53
|
+
macos-build-test:
|
|
54
|
+
strategy:
|
|
55
|
+
matrix:
|
|
56
|
+
pyversion: ["3.11", "3.12", "3.13"]
|
|
57
|
+
os: [macos-latest, macos-latest-large]
|
|
58
|
+
runs-on: ${{ matrix.os }}
|
|
59
|
+
steps:
|
|
60
|
+
- uses: actions/checkout@v4
|
|
61
|
+
- name: Install latest stable Rust
|
|
62
|
+
uses: dtolnay/rust-toolchain@stable
|
|
63
|
+
with:
|
|
64
|
+
toolchain: stable
|
|
65
|
+
- uses: actions/setup-python@v5
|
|
66
|
+
with:
|
|
67
|
+
python-version: ${{ matrix.pyversion }}
|
|
68
|
+
- name: Install deps
|
|
69
|
+
run: pip install numpy pandas seaborn scikit-learn toml
|
|
70
|
+
- run: |
|
|
71
|
+
cp README.md python-package/README.md
|
|
72
|
+
cp LICENSE python-package/LICENSE
|
|
73
|
+
- name: Build test data
|
|
74
|
+
run: |
|
|
75
|
+
cd python-package
|
|
76
|
+
python -m pip install -e .[dev]
|
|
77
|
+
cd ..
|
|
78
|
+
python scripts/make_resources.py
|
|
79
|
+
- name: Build wheels with maturin
|
|
80
|
+
uses: PyO3/maturin-action@v1
|
|
81
|
+
with:
|
|
82
|
+
command: build
|
|
83
|
+
args: --release --strip --interpreter python --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
84
|
+
- name: Install wheel
|
|
85
|
+
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
86
|
+
- name: Run Package Tests
|
|
87
|
+
run: |
|
|
88
|
+
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
89
|
+
cd python-package
|
|
90
|
+
ruff check .
|
|
91
|
+
black --check .
|
|
92
|
+
pytest --cov-fail-under=90 tests
|
|
93
|
+
cd ..
|
|
94
|
+
- name: Save Artifacts
|
|
95
|
+
uses: actions/upload-artifact@v4
|
|
96
|
+
with:
|
|
97
|
+
name: dist-${{ matrix.os }}-${{ matrix.pyversion }}
|
|
98
|
+
path: dist
|
|
99
|
+
|
|
100
|
+
linux-build-test:
|
|
101
|
+
runs-on: ubuntu-latest
|
|
102
|
+
strategy:
|
|
103
|
+
matrix:
|
|
104
|
+
pyversion: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
105
|
+
steps:
|
|
106
|
+
- uses: actions/checkout@v4
|
|
107
|
+
- name: Install latests stable Rust
|
|
108
|
+
uses: dtolnay/rust-toolchain@stable
|
|
109
|
+
with:
|
|
110
|
+
toolchain: stable
|
|
111
|
+
- uses: actions/setup-python@v5
|
|
112
|
+
with:
|
|
113
|
+
python-version: ${{ matrix.pyversion }}
|
|
114
|
+
architecture: x64
|
|
115
|
+
- name: Install deps
|
|
116
|
+
run: pip install numpy pandas seaborn scikit-learn toml
|
|
117
|
+
- run: |
|
|
118
|
+
cp README.md python-package/README.md
|
|
119
|
+
cp LICENSE python-package/LICENSE
|
|
120
|
+
- name: Build test data
|
|
121
|
+
run: |
|
|
122
|
+
cd python-package
|
|
123
|
+
python -m pip install -e .[dev]
|
|
124
|
+
cd ..
|
|
125
|
+
python scripts/make_resources.py
|
|
126
|
+
- name: Build wheels with maturin
|
|
127
|
+
uses: PyO3/maturin-action@v1
|
|
128
|
+
with:
|
|
129
|
+
target: x86_64
|
|
130
|
+
manylinux: auto
|
|
131
|
+
command: build
|
|
132
|
+
args: --release --strip --interpreter python${{ matrix.pyversion }} --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
133
|
+
- name: Install wheel
|
|
134
|
+
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
135
|
+
- name: Run Package Tests
|
|
136
|
+
run: |
|
|
137
|
+
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
138
|
+
cd python-package
|
|
139
|
+
ruff check .
|
|
140
|
+
black --check .
|
|
141
|
+
pytest --cov-fail-under=90 tests
|
|
142
|
+
cd ..
|
|
143
|
+
- name: Save Artifacts
|
|
144
|
+
uses: actions/upload-artifact@v4
|
|
145
|
+
with:
|
|
146
|
+
name: dist-linux-${{ matrix.pyversion }}
|
|
147
|
+
path: dist
|
|
148
|
+
|
|
149
|
+
linux-arm-build-test:
|
|
150
|
+
runs-on: ubuntu-24.04-arm
|
|
151
|
+
strategy:
|
|
152
|
+
matrix:
|
|
153
|
+
pyversion: ["3.9", "3.10", "3.11", "3.12", "3.13"]
|
|
154
|
+
steps:
|
|
155
|
+
- uses: actions/checkout@v4
|
|
156
|
+
- name: Install latests stable Rust
|
|
157
|
+
uses: dtolnay/rust-toolchain@stable
|
|
158
|
+
with:
|
|
159
|
+
toolchain: stable
|
|
160
|
+
- uses: actions/setup-python@v5
|
|
161
|
+
with:
|
|
162
|
+
python-version: ${{ matrix.pyversion }}
|
|
163
|
+
architecture: arm64
|
|
164
|
+
- name: Install deps
|
|
165
|
+
run: pip install numpy pandas seaborn scikit-learn toml
|
|
166
|
+
- run: |
|
|
167
|
+
cp README.md python-package/README.md
|
|
168
|
+
cp LICENSE python-package/LICENSE
|
|
169
|
+
- name: Build test data
|
|
170
|
+
run: |
|
|
171
|
+
cd python-package
|
|
172
|
+
python -m pip install -e .[dev]
|
|
173
|
+
cd ..
|
|
174
|
+
python scripts/make_resources.py
|
|
175
|
+
- name: Build wheels with maturin
|
|
176
|
+
uses: PyO3/maturin-action@v1
|
|
177
|
+
with:
|
|
178
|
+
manylinux: auto
|
|
179
|
+
command: build
|
|
180
|
+
args: --release --strip --interpreter python${{ matrix.pyversion }} --manifest-path python-package/Cargo.toml --out dist --sdist
|
|
181
|
+
- name: Install wheel
|
|
182
|
+
run: pip install perpetual --no-index --find-links dist --no-deps --force-reinstall
|
|
183
|
+
- name: Run Package Tests
|
|
184
|
+
run: |
|
|
185
|
+
pip install pytest pytest-cov black ruff setuptools --upgrade
|
|
186
|
+
cd python-package
|
|
187
|
+
ruff check .
|
|
188
|
+
black --check .
|
|
189
|
+
pytest --cov-fail-under=90 tests
|
|
190
|
+
cd ..
|
|
191
|
+
- name: Save Artifacts
|
|
192
|
+
uses: actions/upload-artifact@v4
|
|
193
|
+
with:
|
|
194
|
+
name: dist-linux-arm-${{ matrix.pyversion }}
|
|
195
|
+
path: dist
|
|
196
|
+
|
|
197
|
+
cargo-build-test:
|
|
198
|
+
runs-on: ubuntu-latest
|
|
199
|
+
steps:
|
|
200
|
+
- uses: actions/checkout@v4
|
|
201
|
+
- name: Install latest stable Rust
|
|
202
|
+
uses: dtolnay/rust-toolchain@stable
|
|
203
|
+
with:
|
|
204
|
+
toolchain: stable
|
|
205
|
+
- uses: actions/setup-python@v5
|
|
206
|
+
with:
|
|
207
|
+
python-version: "3.11"
|
|
208
|
+
architecture: x64
|
|
209
|
+
- name: Install deps
|
|
210
|
+
run: pip install numpy pandas seaborn scikit-learn toml
|
|
211
|
+
- run: |
|
|
212
|
+
cp README.md python-package/README.md
|
|
213
|
+
cp LICENSE python-package/LICENSE
|
|
214
|
+
- name: Build test data
|
|
215
|
+
run: |
|
|
216
|
+
cd python-package
|
|
217
|
+
python -m pip install -e .[dev]
|
|
218
|
+
cd ..
|
|
219
|
+
python scripts/make_resources.py
|
|
220
|
+
- name: Run tests
|
|
221
|
+
run: cargo test --verbose
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
name: Cargo Build Publish
|
|
2
|
-
on: [workflow_dispatch]
|
|
3
|
-
|
|
4
|
-
jobs:
|
|
5
|
-
cargo-build-test:
|
|
6
|
-
runs-on: ubuntu-latest
|
|
7
|
-
steps:
|
|
8
|
-
- uses: actions/checkout@v3
|
|
9
|
-
- name: Install latests stable Rust
|
|
10
|
-
uses: dtolnay/rust-toolchain@stable
|
|
11
|
-
with:
|
|
12
|
-
toolchain: stable
|
|
13
|
-
- uses: actions/setup-python@v4
|
|
14
|
-
with:
|
|
15
|
-
python-version: "3.10"
|
|
16
|
-
architecture: x64
|
|
17
|
-
- name: Install deps
|
|
18
|
-
run: pip install numpy pandas seaborn scikit-learn toml
|
|
19
|
-
- run: |
|
|
20
|
-
cp README.md python-package/README.md
|
|
21
|
-
cp LICENSE python-package/LICENSE
|
|
22
|
-
- name: Update TOML
|
|
23
|
-
run: python scripts/remove-optional-deps.py
|
|
24
|
-
- name: Build test data
|
|
25
|
-
run: python scripts/make_resources.py
|
|
26
|
-
- name: Run tests
|
|
27
|
-
run: cargo test --verbose
|
|
28
|
-
- name: Publish Crate
|
|
29
|
-
run: cargo publish --token ${CRATES_TOKEN} --allow-dirty
|
|
30
|
-
env:
|
|
31
|
-
CRATES_TOKEN: ${{ secrets.CRATES_TOKEN }}
|
|
1
|
+
name: Cargo Build Publish
|
|
2
|
+
on: [workflow_dispatch]
|
|
3
|
+
|
|
4
|
+
jobs:
|
|
5
|
+
cargo-build-test:
|
|
6
|
+
runs-on: ubuntu-latest
|
|
7
|
+
steps:
|
|
8
|
+
- uses: actions/checkout@v3
|
|
9
|
+
- name: Install latests stable Rust
|
|
10
|
+
uses: dtolnay/rust-toolchain@stable
|
|
11
|
+
with:
|
|
12
|
+
toolchain: stable
|
|
13
|
+
- uses: actions/setup-python@v4
|
|
14
|
+
with:
|
|
15
|
+
python-version: "3.10"
|
|
16
|
+
architecture: x64
|
|
17
|
+
- name: Install deps
|
|
18
|
+
run: pip install numpy pandas seaborn scikit-learn toml
|
|
19
|
+
- run: |
|
|
20
|
+
cp README.md python-package/README.md
|
|
21
|
+
cp LICENSE python-package/LICENSE
|
|
22
|
+
- name: Update TOML
|
|
23
|
+
run: python scripts/remove-optional-deps.py
|
|
24
|
+
- name: Build test data
|
|
25
|
+
run: python scripts/make_resources.py
|
|
26
|
+
- name: Run tests
|
|
27
|
+
run: cargo test --verbose
|
|
28
|
+
- name: Publish Crate
|
|
29
|
+
run: cargo publish --token ${CRATES_TOKEN} --allow-dirty
|
|
30
|
+
env:
|
|
31
|
+
CRATES_TOKEN: ${{ secrets.CRATES_TOKEN }}
|
|
@@ -1,28 +1,30 @@
|
|
|
1
|
-
name: docs
|
|
2
|
-
on:
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
1
|
+
name: docs
|
|
2
|
+
on:
|
|
3
|
+
release:
|
|
4
|
+
types: [published]
|
|
5
|
+
|
|
6
|
+
permissions:
|
|
7
|
+
contents: write
|
|
8
|
+
jobs:
|
|
9
|
+
deploy:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
steps:
|
|
12
|
+
- uses: actions/checkout@v3
|
|
13
|
+
- uses: actions/setup-python@v4
|
|
14
|
+
with:
|
|
15
|
+
python-version: 3.x
|
|
16
|
+
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
|
|
17
|
+
- uses: actions/cache@v3
|
|
18
|
+
with:
|
|
19
|
+
key: mkdocs-material-${{ env.cache_id }}
|
|
20
|
+
path: .cache
|
|
21
|
+
restore-keys: |
|
|
22
|
+
mkdocs-material-
|
|
23
|
+
- run: |
|
|
24
|
+
cp README.md python-package/README.md
|
|
25
|
+
cp LICENSE python-package/LICENSE
|
|
26
|
+
- run: pip install mkdocs-material
|
|
27
|
+
- run: |
|
|
28
|
+
cd python-package
|
|
29
|
+
pip install .[dev]
|
|
30
|
+
mkdocs gh-deploy --force
|