From 947b974b56f2745cabbddf38702c9062dc9f0ae2 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Wed, 18 Dec 2024 11:23:38 +0100 Subject: [PATCH 01/24] run different python versions --- .github/workflows/continuous.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 327b8cd..a8a48a3 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -24,6 +24,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-22.04, macOS-13, windows-2019] + python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] config: [Debug, Release] include: - os: ubuntu-22.04 @@ -47,7 +48,7 @@ jobs: uses: conda-incubator/setup-miniconda@v3 with: channels: conda-forge - python-version: 3.7 + python-version: ${{ matrix.python-version }} channel-priority: true activate-environment: test-env From 41af1c3c2e8603646c40d1d1c41483393330be09 Mon Sep 17 00:00:00 2001 From: Marius Causemann Date: Wed, 18 Dec 2024 13:54:28 +0100 Subject: [PATCH 02/24] update parse_svg --- wildmeshing/parse_svg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wildmeshing/parse_svg b/wildmeshing/parse_svg index b920779..0cb2769 160000 --- a/wildmeshing/parse_svg +++ b/wildmeshing/parse_svg @@ -1 +1 @@ -Subproject commit b920779788948655d2985de19acad5133b5125d8 +Subproject commit 0cb27692f67b855f96c76e41778abdb0a10edd93 From b29e17deb33a4d5d254f927a203374066565906b Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Thu, 19 Dec 2024 11:35:32 +0100 Subject: [PATCH 03/24] pip install rather than setup.py --- .github/workflows/continuous.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index a8a48a3..63d5349 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -68,12 +68,11 @@ jobs: - name: Build (Debug) if: matrix.config == 'Debug' - run: | - python setup.py build --debug install + run: python -m pip install -v --debug . - name: Build (Release) if: matrix.config == 'Release' - run: python setup.py build install + run: python -m pip install -v . - name: Fast Tests run: | From 63ca2b4acfaeb02920b37f50d5af5d439b98e9a6 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 21 Dec 2024 17:35:57 +0100 Subject: [PATCH 04/24] migrate to oneapi tbb --- cmake/WildMeshingDownloadExternal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/WildMeshingDownloadExternal.cmake b/cmake/WildMeshingDownloadExternal.cmake index 7c8ff11..e0c5f87 100644 --- a/cmake/WildMeshingDownloadExternal.cmake +++ b/cmake/WildMeshingDownloadExternal.cmake @@ -32,8 +32,8 @@ endfunction() function(wildmeshing_download_tetwild) wildmeshing_download_project(tetwild - GIT_REPOSITORY https://github.com/wildmeshing/fTetWild - GIT_TAG f471f09dd26006745387dd61694762f861c787b9 + GIT_REPOSITORY https://github.com/MrDiver/fTetWild.git + GIT_TAG c7cf173cf861af3be3ef2538df39910808ddd2ad ) endfunction() From ab6b948bc436188dc4dd8e7753b2f7153b85de3e Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 21 Dec 2024 19:45:32 +0100 Subject: [PATCH 05/24] remove tbb scheduler --- src/tetrahedralize.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tetrahedralize.cpp b/src/tetrahedralize.cpp index ed07934..9c7371a 100644 --- a/src/tetrahedralize.cpp +++ b/src/tetrahedralize.cpp @@ -19,7 +19,7 @@ #include #ifdef FLOAT_TETWILD_USE_TBB -#include +#include #include #endif @@ -61,7 +61,7 @@ namespace wildmeshing_binding num_threads = std::min(max_threads, num_threads); // params.num_threads = num_threads; std::cout << "TBB threads " << num_threads << std::endl; - tbb::task_scheduler_init scheduler(num_threads, stack_size); + //tbb::task_scheduler_init scheduler(num_threads, stack_size); #endif set_num_threads(num_threads); } @@ -819,4 +819,4 @@ namespace wildmeshing_binding py::arg("coarsen") = true, py::arg("manifold_surface") = false, py::arg("use_input_for_wn") = false, py::arg("correct_surface_orientation") = false, py::arg("all_mesh") = false, py::arg("binary") = true); } #endif -} // namespace wildmeshing_binding \ No newline at end of file +} // namespace wildmeshing_binding From b643c273801a74cd22c846e869558dd7990e53c3 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 21 Dec 2024 21:29:22 +0100 Subject: [PATCH 06/24] move to my branch --- cmake/WildMeshingDownloadExternal.cmake | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/cmake/WildMeshingDownloadExternal.cmake b/cmake/WildMeshingDownloadExternal.cmake index e0c5f87..9585243 100644 --- a/cmake/WildMeshingDownloadExternal.cmake +++ b/cmake/WildMeshingDownloadExternal.cmake @@ -32,8 +32,8 @@ endfunction() function(wildmeshing_download_tetwild) wildmeshing_download_project(tetwild - GIT_REPOSITORY https://github.com/MrDiver/fTetWild.git - GIT_TAG c7cf173cf861af3be3ef2538df39910808ddd2ad + GIT_REPOSITORY https://github.com/MariusCausemann/fTetWild.git + GIT_TAG 4996d6716391c8009e4e4ff7f93b930f617524ad ) endfunction() From cd6937dee1dfba99ef082ee54a6332975f26b16a Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Fri, 3 Jan 2025 10:00:29 +0100 Subject: [PATCH 07/24] retrigger run --- .github/workflows/continuous.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 63d5349..637d7e0 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -79,6 +79,7 @@ jobs: python test/tri_test.py python test/small_tet_test.py + - name: Slow Tests if: matrix.config == 'Release' run: | From fa5e52198bdd1faeb245c84a6f4a9623021e9cdb Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Fri, 3 Jan 2025 11:48:53 +0100 Subject: [PATCH 08/24] fix debug? --- .github/workflows/continuous.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 637d7e0..9426b09 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -68,7 +68,7 @@ jobs: - name: Build (Debug) if: matrix.config == 'Debug' - run: python -m pip install -v --debug . + run: python -m pip install -v --install-option="--debug" . - name: Build (Release) if: matrix.config == 'Release' From e4896c32785fe0d512a14fa1e79d105139def48c Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Fri, 3 Jan 2025 12:52:05 +0100 Subject: [PATCH 09/24] use config-setting --- .github/workflows/continuous.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 9426b09..61ef07b 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -68,7 +68,7 @@ jobs: - name: Build (Debug) if: matrix.config == 'Debug' - run: python -m pip install -v --install-option="--debug" . + run: python -m pip install -v --config-setting="--build-option=--debug" . - name: Build (Release) if: matrix.config == 'Release' From 330ac0194c83374ca8f80565f36d6e69575b6704 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Fri, 3 Jan 2025 12:54:59 +0100 Subject: [PATCH 10/24] debug from sys.argv --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 4cb4fd8..f7c91d4 100644 --- a/setup.py +++ b/setup.py @@ -42,7 +42,7 @@ def build_extension(self, ext): '-DPYTHON_EXECUTABLE=' + sys.executable, ] - cfg = 'Debug' if self.debug else 'Release' + cfg = 'Debug' if "debug" in sys.argv else 'Release' build_args = ['--config', cfg] cmake_args += ['-DCMAKE_BUILD_TYPE=' + cfg] From d70873d4355ae8d4f73daff6bcd232fed489b5a7 Mon Sep 17 00:00:00 2001 From: Marius Causemann Date: Fri, 3 Jan 2025 13:36:12 +0100 Subject: [PATCH 11/24] pass debug --- .github/workflows/continuous.yml | 2 +- setup.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 61ef07b..de8fd02 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -68,7 +68,7 @@ jobs: - name: Build (Debug) if: matrix.config == 'Debug' - run: python -m pip install -v --config-setting="--build-option=--debug" . + run: python -m pip install -v --config-settings="--build-option=build_ext" --config-settings="--build-option=--debug" . - name: Build (Release) if: matrix.config == 'Release' diff --git a/setup.py b/setup.py index f7c91d4..4cb4fd8 100644 --- a/setup.py +++ b/setup.py @@ -42,7 +42,7 @@ def build_extension(self, ext): '-DPYTHON_EXECUTABLE=' + sys.executable, ] - cfg = 'Debug' if "debug" in sys.argv else 'Release' + cfg = 'Debug' if self.debug else 'Release' build_args = ['--config', cfg] cmake_args += ['-DCMAKE_BUILD_TYPE=' + cfg] From 9a74c06b63fac4e49305bbf739d8b3f82e230d4c Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Fri, 3 Jan 2025 16:16:47 +0100 Subject: [PATCH 12/24] remove platform spefication for windows --- setup.py | 4 ---- 1 file changed, 4 deletions(-) diff --git a/setup.py b/setup.py index 4cb4fd8..c708cc8 100644 --- a/setup.py +++ b/setup.py @@ -49,10 +49,6 @@ def build_extension(self, ext): if platform.system() == "Windows": cmake_args += [ '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_{}={}'.format(cfg.upper(), extdir)] - if os.environ.get('CMAKE_GENERATOR') != "NMake Makefiles": - if sys.maxsize > 2**32: - cmake_args += ['-A', 'x64'] - build_args += ['--', '/m'] else: build_args += ['--', '-j2'] From 480505624b19696679db6a0bd21a85202bd8cc9f Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 4 Jan 2025 21:53:50 +0100 Subject: [PATCH 13/24] set c++11 --- CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index b310010..18d11fc 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,6 +23,8 @@ include(Warnings) # Use C++11/14 include(CXXFeatures) +set(CMAKE_CXX_STANDARD 11) # C++11... +set(CMAKE_CXX_STANDARD_REQUIRED ON) # Sort projects inside the solution set_property(GLOBAL PROPERTY USE_FOLDERS ON) From abce251a620cb67496c26038fd26a97acecd6079 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 4 Jan 2025 23:03:18 +0100 Subject: [PATCH 14/24] set c++14? --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 18d11fc..1cf3870 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,7 @@ include(Warnings) # Use C++11/14 include(CXXFeatures) -set(CMAKE_CXX_STANDARD 11) # C++11... +set(CMAKE_CXX_STANDARD 14) # C++14... set(CMAKE_CXX_STANDARD_REQUIRED ON) # Sort projects inside the solution From bafe2e08631de37d6d264063976c8de69f999552 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 4 Jan 2025 23:31:53 +0100 Subject: [PATCH 15/24] Update CMakeLists.txt --- CMakeLists.txt | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 1cf3870..0cff680 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,8 +23,7 @@ include(Warnings) # Use C++11/14 include(CXXFeatures) -set(CMAKE_CXX_STANDARD 14) # C++14... -set(CMAKE_CXX_STANDARD_REQUIRED ON) +set(CMAKE_CXX_STANDARD 11) # C++14... # Sort projects inside the solution set_property(GLOBAL PROPERTY USE_FOLDERS ON) From 08583920685d9989f2c593e304e8f59babfd0423 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 4 Jan 2025 23:55:46 +0100 Subject: [PATCH 16/24] undo c++11 --- CMakeLists.txt | 1 - 1 file changed, 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0cff680..b310010 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,6 @@ include(Warnings) # Use C++11/14 include(CXXFeatures) -set(CMAKE_CXX_STANDARD 11) # C++14... # Sort projects inside the solution set_property(GLOBAL PROPERTY USE_FOLDERS ON) From ea4a378c8e7883a90afacb3c67aee1942a329857 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Sat, 4 Jan 2025 23:56:49 +0100 Subject: [PATCH 17/24] bump fTetWild --- cmake/WildMeshingDownloadExternal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/WildMeshingDownloadExternal.cmake b/cmake/WildMeshingDownloadExternal.cmake index 9585243..5394977 100644 --- a/cmake/WildMeshingDownloadExternal.cmake +++ b/cmake/WildMeshingDownloadExternal.cmake @@ -33,7 +33,7 @@ endfunction() function(wildmeshing_download_tetwild) wildmeshing_download_project(tetwild GIT_REPOSITORY https://github.com/MariusCausemann/fTetWild.git - GIT_TAG 4996d6716391c8009e4e4ff7f93b930f617524ad + GIT_TAG dc2412be7eb343e85eb12289859ec7910dee7832 ) endfunction() From 34f3cf72ea8c3f4d0617123feefbee92e6aca03d Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Mon, 6 Jan 2025 15:11:38 +0100 Subject: [PATCH 18/24] bump fTetWild for c++17 --- cmake/WildMeshingDownloadExternal.cmake | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmake/WildMeshingDownloadExternal.cmake b/cmake/WildMeshingDownloadExternal.cmake index 5394977..902fd56 100644 --- a/cmake/WildMeshingDownloadExternal.cmake +++ b/cmake/WildMeshingDownloadExternal.cmake @@ -33,7 +33,7 @@ endfunction() function(wildmeshing_download_tetwild) wildmeshing_download_project(tetwild GIT_REPOSITORY https://github.com/MariusCausemann/fTetWild.git - GIT_TAG dc2412be7eb343e85eb12289859ec7910dee7832 + GIT_TAG 725fdc3abfacfde2096496eb0b16f9db5e9b6293 ) endfunction() From f44b4340686ab8b37fbe07ebd34f5e55b4676fc2 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Tue, 7 Jan 2025 14:28:23 +0100 Subject: [PATCH 19/24] allow cmake args and disable tbb tests --- setup.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index c708cc8..51b2413 100644 --- a/setup.py +++ b/setup.py @@ -1,6 +1,7 @@ import os import re import sys +import shlex # import sysconfig import platform import subprocess @@ -38,8 +39,10 @@ def build_extension(self, ext): extdir = os.path.join(os.path.abspath(os.path.dirname( self.get_ext_fullpath(ext.name))), "wildmeshing") - cmake_args = ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir, + cmake_args = shlex.split(os.environ.get("CMAKE_ARGS", "")) + cmake_args += ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir, '-DPYTHON_EXECUTABLE=' + sys.executable, + '-DTBB_BUILD_TESTS=OFF' ] cfg = 'Debug' if self.debug else 'Release' From 220c7ddfb966a53322959c8b5aec86352c63568a Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Tue, 7 Jan 2025 14:43:50 +0100 Subject: [PATCH 20/24] try again disabling TBB tests --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 51b2413..50126a3 100644 --- a/setup.py +++ b/setup.py @@ -42,7 +42,7 @@ def build_extension(self, ext): cmake_args = shlex.split(os.environ.get("CMAKE_ARGS", "")) cmake_args += ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir, '-DPYTHON_EXECUTABLE=' + sys.executable, - '-DTBB_BUILD_TESTS=OFF' + '-DTBB_BUILD_TESTS=OFF', '-DTBB_TESTS=OFF' ] cfg = 'Debug' if self.debug else 'Release' From 9284a34c806f079058a296e653e7c103383fcefe Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Tue, 7 Jan 2025 15:00:31 +0100 Subject: [PATCH 21/24] TBB_TEST typo --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 50126a3..cb14eb0 100644 --- a/setup.py +++ b/setup.py @@ -42,7 +42,7 @@ def build_extension(self, ext): cmake_args = shlex.split(os.environ.get("CMAKE_ARGS", "")) cmake_args += ['-DCMAKE_LIBRARY_OUTPUT_DIRECTORY=' + extdir, '-DPYTHON_EXECUTABLE=' + sys.executable, - '-DTBB_BUILD_TESTS=OFF', '-DTBB_TESTS=OFF' + '-DTBB_BUILD_TESTS=OFF', '-DTBB_TEST=OFF' ] cfg = 'Debug' if self.debug else 'Release' From 2a30e1a4c7cd4b0a9db114ffca66904fbd913408 Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Wed, 8 Jan 2025 13:21:28 +0100 Subject: [PATCH 22/24] disable parallel build --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index cb14eb0..94760cb 100644 --- a/setup.py +++ b/setup.py @@ -53,7 +53,7 @@ def build_extension(self, ext): cmake_args += [ '-DCMAKE_LIBRARY_OUTPUT_DIRECTORY_{}={}'.format(cfg.upper(), extdir)] else: - build_args += ['--', '-j2'] + build_args += ['--', '-j1'] env = os.environ.copy() env['CXXFLAGS'] = '{} -DVERSION_INFO=\\"{}\\"'.format( From e605970bfeb96e9db94899907932b80ff6cba0ac Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Mon, 13 Jan 2025 12:41:04 +0100 Subject: [PATCH 23/24] bump windows to 2022 --- .github/workflows/continuous.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index de8fd02..9e4c2a6 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -23,13 +23,13 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-22.04, macOS-13, windows-2019] + os: [ubuntu-22.04, macOS-13, windows-2022] python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] config: [Debug, Release] include: - os: ubuntu-22.04 name: Linux - - os: windows-2019 + - os: windows-2022 name: Windows - os: macos-13 name: macOS From ca937beb66d282bf606303a793295b99d66df5eb Mon Sep 17 00:00:00 2001 From: MariusCausemann Date: Mon, 13 Jan 2025 12:54:05 +0100 Subject: [PATCH 24/24] return to win 2019 --- .github/workflows/continuous.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/continuous.yml b/.github/workflows/continuous.yml index 9e4c2a6..de8fd02 100644 --- a/.github/workflows/continuous.yml +++ b/.github/workflows/continuous.yml @@ -23,13 +23,13 @@ jobs: strategy: fail-fast: false matrix: - os: [ubuntu-22.04, macOS-13, windows-2022] + os: [ubuntu-22.04, macOS-13, windows-2019] python-version: ["3.8", "3.9", "3.10", "3.11", "3.12"] config: [Debug, Release] include: - os: ubuntu-22.04 name: Linux - - os: windows-2022 + - os: windows-2019 name: Windows - os: macos-13 name: macOS