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
7 changes: 6 additions & 1 deletion .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,11 +43,16 @@ jobs:
with:
os: ${{ matrix.os }}

- name: 📋 Install MacOS Dependencies
if: ${{ matrix.os == 'macos-latest' }}
run: |
brew install vtk

- name: 🦥 Cache Dependencies
uses: actions/cache@v4
with:
key: test-${{ matrix.os }}-${{ matrix.config }}
path: build
path: build/_deps/

- name: 🏗️ Compile
run: cmake -DVIENNALS_BUILD_TESTS=ON -B build && cmake --build build --config ${{ matrix.config }}
Expand Down
37 changes: 24 additions & 13 deletions .github/workflows/python.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ jobs:
matrix:
include:
- os: ubuntu-latest
container: ghcr.io/viennatools/vienna-builder:suite-python
container: ghcr.io/viennatools/vienna-builder:cuda-suite-python-nocuda
- os: windows-latest
- os: macos-latest

Expand All @@ -40,13 +40,18 @@ jobs:
with:
os: ${{ matrix.os }}

- name: 📋 Install MacOS Dependencies
if: ${{ matrix.os == 'macos-latest' }}
run: |
brew install vtk

- name: 🦥 Cache Dependencies
uses: actions/cache@v4
with:
key: python-${{ matrix.os }}
path: build
path: build/_deps/

- name: 🛠️ Disable IPO (Alpine)
- name: 🛠️ Disable IPO
if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
sed -i 's/\(DVIENNALS_BUILD_PYTHON=ON"\)/\1,"-DUSE_IPO=off"/g' pyproject.toml
Expand All @@ -64,7 +69,7 @@ jobs:
if: ${{ matrix.os != 'windows-latest' }}
run: |
python -m venv venv
CMAKE_ARGS=-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF ./venv/bin/pip install . # Alpine does not like LTO
CMAKE_ARGS=-DCMAKE_INTERPROCEDURAL_OPTIMIZATION=OFF ./venv/bin/pip install .
./venv/bin/python -c "import viennals; print(viennals.__doc__)"

- name: 📦 Upload Artifact
Expand All @@ -80,8 +85,7 @@ jobs:
matrix:
include:
- os: ubuntu-latest
container: ghcr.io/viennatools/vienna-builder:python
skip: "cp36-* cp37-* cp38-* cp39-* pp37-* pp38-* pp39-*"
skip: "cp36-* cp37-* cp38-* cp39-* pp37-* pp38-* pp39-* *-manylinux_i686 *-musllinux_*"

- os: windows-latest
skip: "cp36-* cp37-* cp38-* cp39-* pp37-* pp38-* pp39-*"
Expand All @@ -90,7 +94,6 @@ jobs:
skip: "cp36-* cp37-* cp38-* cp39-* cp310-* pp37-* pp38-* pp39-*"

runs-on: ${{ matrix.os }}
container: ${{ matrix.container }}

name: "🐍 Package Bindings on ${{ matrix.os }}"

Expand All @@ -104,27 +107,35 @@ jobs:
os: ${{ matrix.os }}

- name: 🛞 CIBuildWheel
run: pip install cibuildwheel==2.21.3 --break-system-packages
run: pip install cibuildwheel==3.4.0 --break-system-packages

- name: 🛠️ Build VTK (Windows)
- name: 🛠️ Package Config (Windows)
if: ${{ matrix.os == 'windows-latest' }}
run: |
sed -i 's/\(DVIENNALS_BUILD_PYTHON=ON"\)/\1,"-DVIENNALS_PACKAGE_PYTHON=ON","-DVIENNALS_IS_CI=ON"/g' pyproject.toml
type pyproject.toml

- name: 🛠️ Build VTK (MacOs)
- name: 🛠️ Package Config (MacOs)
if: ${{ matrix.os == 'macos-latest' }}
run: |
sed -i .bak 's/\(DVIENNALS_BUILD_PYTHON=ON"\)/\1,"-DVIENNALS_PACKAGE_PYTHON=ON","-DVIENNALS_IS_CI=ON"/g' pyproject.toml
cat pyproject.toml

- name: 🛠️ Use VTK-Python Libs
- name: 🛠️ Package Config (Linux)
if: ${{ matrix.os == 'ubuntu-latest' }}
run: |
sed -i 's/\(DVIENNALS_BUILD_PYTHON=ON"\)/\1,"-DVIENNALS_PACKAGE_PYTHON=ON","-DVIENNALS_IS_CI=ON"/g' pyproject.toml
cat pyproject.toml

- name: 🏗️ Build Wheels
- name: 🏗️ Build Wheels (Linux)
if: ${{ matrix.os == 'ubuntu-latest' }}
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_SKIP: ${{ matrix.skip }}
CIBW_MANYLINUX_X86_64_IMAGE: ghcr.io/viennatools/vienna-builder:cuda-python-nocuda

- name: 🏗️ Build Wheels (Other)
if: ${{ matrix.os != 'ubuntu-latest' }}
run: python -m cibuildwheel --output-dir wheelhouse
env:
CIBW_SKIP: ${{ matrix.skip }}
Expand Down Expand Up @@ -157,4 +168,4 @@ jobs:
- name: 🚀 Publish Wheels
uses: pypa/gh-action-pypi-publish@release/v1
with:
skip_existing: true
skip-existing: true
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ cmake_minimum_required(VERSION 3.20 FATAL_ERROR)
project(
ViennaLS
LANGUAGES CXX
VERSION 5.6.0)
VERSION 5.7.0)

# --------------------------------------------------------------------------------------------------------
# Library options
Expand Down
4 changes: 2 additions & 2 deletions include/viennals/lsVersion.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
namespace viennals {

// Version information generated by CMake
inline constexpr const char *version = "5.6.0";
inline constexpr const char *version = "5.7.0";
inline constexpr int versionMajor = 5;
inline constexpr int versionMinor = 6;
inline constexpr int versionMinor = 7;
inline constexpr int versionPatch = 0;

// Utility functions for version comparison
Expand Down
2 changes: 1 addition & 1 deletion pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ requires = [
build-backend = "scikit_build_core.build"

[project]
version = "5.6.0"
version = "5.7.0"
name = "ViennaLS"
readme = "README.md"
license = {file = "LICENSE"}
Expand Down
6 changes: 3 additions & 3 deletions python/viennals/__init__.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -46,8 +46,8 @@ from viennals.d2 import CompareChamfer
from viennals.d2 import CompareCriticalDimensions
from viennals.d2 import CompareNarrowBand
from viennals.d2 import CompareSparseField
from viennals.d2 import CompareVolume
from viennals.d2 import CompareVolume as CompareArea
from viennals.d2 import CompareVolume
from viennals.d2 import ConvexHull
from viennals.d2 import CustomSphereDistribution
from viennals.d2 import Cylinder
Expand Down Expand Up @@ -112,6 +112,6 @@ def setDimension(d: int):

"""
PROXY_DIM: int = 2
__version__: str = '5.6.0'
version: str = '5.6.0'
__version__: str = '5.7.0'
version: str = '5.7.0'
_C = _core
6 changes: 3 additions & 3 deletions python/viennals/_core.pyi
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@ import enum
import typing
from viennals import d2
import viennals.d2
import viennals.d3
from viennals import d3
import viennals.d3
__all__: list[str] = ['BooleanOperationEnum', 'BoundaryConditionEnum', 'CurvatureEnum', 'Extrude', 'FeatureDetectionEnum', 'FileFormatEnum', 'IntegrationSchemeEnum', 'LogLevel', 'Logger', 'MaterialMap', 'Mesh', 'NormalCalculationMethodEnum', 'PointData', 'Slice', 'SpatialSchemeEnum', 'TemporalSchemeEnum', 'TransformEnum', 'TransformMesh', 'VTKReader', 'VTKRenderWindow', 'VTKWriter', 'VelocityField', 'VoidTopSurfaceEnum', 'd2', 'd3', 'setNumThreads', 'version']
class BooleanOperationEnum(enum.IntEnum):
INTERSECT: typing.ClassVar[BooleanOperationEnum] # value = <BooleanOperationEnum.INTERSECT: 0>
Expand Down Expand Up @@ -549,6 +549,6 @@ class VoidTopSurfaceEnum(enum.IntEnum):
"""
def setNumThreads(arg0: typing.SupportsInt | typing.SupportsIndex) -> None:
...
__version__: str = '5.6.0'
version: str = '5.6.0'
__version__: str = '5.7.0'
version: str = '5.7.0'
IntegrationSchemeEnum = SpatialSchemeEnum
Loading