-
Notifications
You must be signed in to change notification settings - Fork 19
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
bump dependencies, overhaul build action (#21)
* move from setup.py to pyproject.toml * clean and modernize github actions * update dependencies to latest [ci build] * rename build action * dont use system python on macos action [ci build] * add scipy for tests [ci build] * minor * wait to bump for now [ci build] Co-authored-by: Ben Pedigo <[email protected]>
- Loading branch information
Showing
10 changed files
with
180 additions
and
228 deletions.
There are no files selected for viewing
This file was deleted.
Oops, something went wrong.
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 |
---|---|---|
@@ -0,0 +1,8 @@ | ||
[tool.cibuildwheel] | ||
skip = "cp36-*" # scikit-build-core requires >=3.7 | ||
build-verbosity = 3 | ||
|
||
[tool.cibuildwheel.linux] | ||
before-all = [ | ||
"yum remove -y cmake", | ||
] |
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 |
---|---|---|
@@ -0,0 +1,79 @@ | ||
name: Build and Publish | ||
|
||
# NOTE: build logic is duplicated here and in test_build.yml | ||
|
||
# Run on the main branch for commits only | ||
on: | ||
push: | ||
branches: | ||
- master | ||
|
||
jobs: | ||
build_wheels: | ||
|
||
# only run if the most recent commit contains '[ci publish]' | ||
if: "contains(github.event.head_commit.message, '[ci publish]')" | ||
|
||
strategy: | ||
matrix: | ||
# macos-13 is an intel runner, macos-14 is apple silicon | ||
os: [ubuntu-latest, windows-latest, macos-13, macos-14] | ||
|
||
name: Build wheels ${{ matrix.os }} | ||
runs-on: ${{ matrix.os }} | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: 'recursive' | ||
|
||
- name: Package source distribution | ||
if: runner.os == 'Linux' | ||
run: | | ||
python -m pip install build | ||
python -m build --sdist | ||
- name: Run cibuildwheel | ||
uses: pypa/[email protected] | ||
with: | ||
config-file: ".github/workflows/cibuildwheel_config.toml" | ||
|
||
# Upload binaries to the github artifact store | ||
- name: Upload wheels | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: cibw-wheels-${{ matrix.os }} | ||
path: | | ||
./wheelhouse/*.whl | ||
./wheelhouse/*.tar.gz | ||
overwrite: true | ||
|
||
# Push the resulting binaries to pypi on a tag starting with 'v' | ||
upload_pypi: | ||
name: Upload release to PyPI | ||
|
||
# only run if the most recent commit contains '[ci publish]' | ||
if: "contains(github.event.head_commit.message, '[ci publish]')" | ||
|
||
needs: [build_wheels] | ||
runs-on: ubuntu-latest | ||
environment: | ||
name: pypi | ||
url: https://pypi.org/p/robust-laplacian/ | ||
permissions: # we authenticate via PyPI's 'trusted publisher' workflow, this permission is required | ||
id-token: write | ||
steps: | ||
- name: Download built wheels artifact # downloads from the jobs storage from the previous step | ||
uses: actions/[email protected] | ||
with: | ||
# omitting the `name: ` field downloads all artifacts from this workflow | ||
path: dist | ||
|
||
- name: List downloaded files from artifact | ||
run: ls dist | cat # piping through cat prints one per line | ||
|
||
- name: Publish package to PyPI | ||
uses: pypa/gh-action-pypi-publish@release/v1 | ||
# with: | ||
# To test: repository_url: https://test.pypi.org/legacy/ | ||
|
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 |
---|---|---|
@@ -0,0 +1,53 @@ | ||
name: Test Build | ||
|
||
# NOTE: build logic is duplicated here and in publish.yml | ||
|
||
# Run on the master branch commit push and PRs to master (note conditional below) | ||
on: | ||
push: | ||
branches: | ||
- master | ||
pull_request: | ||
branches: | ||
- master | ||
|
||
jobs: | ||
build_wheels: | ||
|
||
# Only run if the commit message contains '[ci build]' | ||
if: "contains(toJSON(github.event.commits.*.message), '[ci build]') || contains(toJSON(github.event.pull_request.title), '[ci build]')" | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
# macos-13 is an intel runner, macos-14 is apple silicon | ||
os: [ubuntu-latest, windows-latest, macos-13, macos-14] | ||
|
||
name: Build wheels ${{ matrix.os }} | ||
runs-on: ${{ matrix.os }} | ||
|
||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
submodules: 'recursive' | ||
|
||
- name: Package source distribution | ||
if: runner.os == 'Linux' | ||
run: | | ||
python -m pip install build | ||
python -m build --sdist | ||
- name: Run cibuildwheel | ||
uses: pypa/[email protected] | ||
with: | ||
config-file: ".github/workflows/cibuildwheel_config.toml" | ||
|
||
# Upload binaries to the github artifact store | ||
- name: Upload wheels | ||
uses: actions/upload-artifact@v4 | ||
with: | ||
name: cibw-wheels-${{ matrix.os }} | ||
path: | | ||
./wheelhouse/*.whl | ||
./wheelhouse/*.tar.gz | ||
overwrite: true |
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
Submodule geometry-central
updated
177 files
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 |
---|---|---|
@@ -0,0 +1,33 @@ | ||
[project] | ||
name = "robust_laplacian" | ||
version = "0.2.8" | ||
description = "Robust Laplace matrices for meshes and point clouds" | ||
readme = "README.md" | ||
license.file = "LICENSE" | ||
authors = [ | ||
{ name = "Nicholas Sharp", email = "[email protected]" }, | ||
] | ||
maintainers = [ | ||
{ name = "Nicholas Sharp", email = "[email protected]" }, | ||
] | ||
classifiers = [ | ||
"Development Status :: 5 - Production/Stable", | ||
"License :: OSI Approved :: MIT License", | ||
"Programming Language :: Python :: 3", | ||
] | ||
requires-python = ">=3.7" | ||
|
||
dependencies = [ | ||
"numpy", | ||
] | ||
|
||
[project.urls] | ||
Homepage = "https://github.com/nmwsharp/robust-laplacians-py" | ||
|
||
[build-system] | ||
requires = ["scikit-build-core"] | ||
build-backend = "scikit_build_core.build" | ||
|
||
[tool.scikit-build] | ||
build.verbose = true | ||
logging.level = "INFO" |
Oops, something went wrong.