Skip to content

Commit ff9dd5b

Browse files
authored
Merge pull request #25 from psavery/update-paraview
Update paraview to 6.1.0
2 parents 46667ce + b846ebe commit ff9dd5b

26 files changed

Lines changed: 177 additions & 57 deletions

.github/workflows/build_and_test.yml

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,14 @@ jobs:
1919
name: Linux,
2020
os: ubuntu-latest
2121
}
22+
- {
23+
name: macOS,
24+
os: macos-latest
25+
}
26+
- {
27+
name: Windows,
28+
os: windows-latest
29+
}
2230

2331
defaults:
2432
run:
@@ -52,9 +60,15 @@ jobs:
5260
echo "build_env.yml file contents is:"
5361
cat build_env.yml
5462
55-
- name: Build Tomviz
63+
- name: Build Tomviz (Unix)
64+
if: runner.os != 'Windows'
5665
run: bash tomviz/.github/workflows/scripts/build_tomviz.sh
5766

67+
- name: Build Tomviz (Windows)
68+
if: runner.os == 'Windows'
69+
shell: cmd /C CALL {0}
70+
run: tomviz\.github\workflows\scripts\build_tomviz.bat
71+
5872
- name: Install Runtime Requirements
5973
# I can't get the defaults channel fully removed, so we have to
6074
# --override-channels here.

.github/workflows/build_requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
cxx-compiler
22
cmake
33
ninja
4-
paraview==6.0.1
4+
paraview==6.1.0
55
vtk
66
libxml2-devel=2.14*
77
# This is needed for building the tests

.github/workflows/pyxrf_requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ pyxrf
44
xrf-tomo
55
xraylib
66
scikit-beam
7-
tomopy
7+
# 1.15.3 is required for NumPy 2.x compatibility
8+
tomopy>=1.15.3
89
# These are required for installing the pyxrf-utils environment
910
hatchling
1011
# Pandas needs to be pinned to prevent a bug in xrf-tomo, until

.github/workflows/runtime_requirements.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,5 @@ pyfftw
88
pygments
99
pystackreg
1010
h5py
11+
click
12+
scikit-image
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
@echo off
2+
3+
mkdir tomviz-build
4+
cd tomviz-build
5+
6+
REM FIXME: setting the zlib paths manually shouldn't be necessary forever.
7+
REM Try removing it sometime
8+
cmake -G"Ninja" ^
9+
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo ^
10+
-DCMAKE_INSTALL_LIBDIR:STRING=lib ^
11+
-DTOMVIZ_USE_EXTERNAL_VTK:BOOL=ON ^
12+
-DENABLE_TESTING:BOOL=ON ^
13+
-DPython3_FIND_STRATEGY:STRING=LOCATION ^
14+
-DZLIB_LIBRARY=%CONDA_PREFIX%\Library\lib\zlib.lib ^
15+
-DZLIB_INCLUDE_DIR=%CONDA_PREFIX%\Library\include ^
16+
..\tomviz
17+
if %errorlevel% neq 0 exit /b %errorlevel%
18+
19+
ninja
20+
if %errorlevel% neq 0 exit /b %errorlevel%

.github/workflows/scripts/build_tomviz.sh

Lines changed: 31 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,37 @@
22

33
mkdir -p tomviz-build && cd tomviz-build
44

5+
CMAKE_ARGS=(
6+
-G"Ninja"
7+
-DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo
8+
-DCMAKE_INSTALL_LIBDIR:STRING=lib
9+
-DTOMVIZ_USE_EXTERNAL_VTK:BOOL=ON
10+
-DENABLE_TESTING:BOOL=ON
11+
-DPython3_FIND_STRATEGY:STRING=LOCATION
12+
)
13+
514
# FIXME: setting the zlib paths manually shouldn't be necessary forever.
615
# Try removing it sometime
7-
cmake -G"Ninja" -DCMAKE_BUILD_TYPE:STRING=RelWithDebInfo \
8-
-DCMAKE_INSTALL_LIBDIR:STRING=lib \
9-
-DTOMVIZ_USE_EXTERNAL_VTK:BOOL=ON \
10-
-DENABLE_TESTING:BOOL=ON \
11-
-DPython3_FIND_STRATEGY:STRING=LOCATION \
12-
-DZLIB_LIBRARY=$CONDA_PREFIX/lib/libz.so.1 \
13-
-DZLIB_INCLUDE_DIR=$CONDA_PREFIX/include \
14-
../tomviz
16+
case "$(uname -s)" in
17+
Linux*)
18+
CMAKE_ARGS+=(
19+
-DZLIB_LIBRARY=$CONDA_PREFIX/lib/libz.so.1
20+
-DZLIB_INCLUDE_DIR=$CONDA_PREFIX/include
21+
)
22+
;;
23+
Darwin*)
24+
CMAKE_ARGS+=(
25+
-DZLIB_LIBRARY=$CONDA_PREFIX/lib/libz.dylib
26+
-DZLIB_INCLUDE_DIR=$CONDA_PREFIX/include
27+
)
28+
;;
29+
MINGW*|MSYS*)
30+
CMAKE_ARGS+=(
31+
-DZLIB_LIBRARY=$CONDA_PREFIX/Library/lib/zlib.lib
32+
-DZLIB_INCLUDE_DIR=$CONDA_PREFIX/Library/include
33+
)
34+
;;
35+
esac
36+
37+
cmake "${CMAKE_ARGS[@]}" ../tomviz
1538
ninja

README.md

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,19 @@ Installing
2222
----------
2323
<img align="right" src="https://github.com/OpenChemistry/tomviz/blob/master/docs/images/animation_nponcarbon1_small.gif">
2424

25-
We recommend downloading the current [stable release](../../releases),
26-
but also provide nightly binaries built by our [dashboards][Dashboard] for
25+
Tomviz is currently undergoing major upgrades. Updated packages are available
26+
on [conda-forge](https://anaconda.org/conda-forge/tomviz) for Linux:
27+
28+
conda install -c conda-forge tomviz
29+
30+
Within the next 6 months, we plan to provide conda-forge packages for all
31+
other operating systems (Windows, macOS), as well as installable binary
32+
packages (MSI, DMG, etc.).
33+
34+
### Older releases
35+
36+
For older releases, we recommend downloading the [stable release](../../releases).
37+
Nightly binaries were also previously built by our [dashboards][Dashboard] for
2738
Windows, macOS, and Linux.
2839

2940
__Windows__: Follow the installation instructions, double-click on the Tomviz

cmake/CompilerFlags.cmake

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,8 @@ if (UNIX)
22
include(CheckCXXCompilerFlag)
33

44
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pedantic -Wshadow -Wextra")
5-
elseif (WIN32)
6-
if (MSVC AND MSVC14)
7-
set(CMAKE_CXX_FLAGS_STD_CPP)
8-
else()
9-
message(FATAL_ERROR "Only the MSVC 2015 compiler is supported on windows.")
10-
endif()
5+
elseif (WIN32 AND MSVC)
6+
set(CMAKE_CXX_FLAGS_STD_CPP)
117
endif()
128

139
if(CMAKE_CXX_COMPILER_ID STREQUAL "GNU" OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")

tests/cxx/CMakeLists.txt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,10 +59,16 @@ add_cxx_qtest(ModulePlot)
5959
add_cxx_qtest(Tvh5Data)
6060
add_cxx_qtest(InterfaceBuilder)
6161
add_cxx_qtest(PipelineExecution PYTHONPATH ${_pythonpath})
62-
add_cxx_qtest(DockerUtilities)
63-
add_cxx_qtest(AcquisitionClient PYTHONPATH "${CMAKE_SOURCE_DIR}/acquisition")
62+
if(UNIX AND NOT APPLE)
63+
add_cxx_qtest(DockerUtilities)
64+
endif()
65+
if(NOT WIN32)
66+
add_cxx_qtest(AcquisitionClient PYTHONPATH "${CMAKE_SOURCE_DIR}/acquisition")
67+
endif()
6468
add_cxx_qtest(PtychoWorkflow PYTHONPATH ${_pythonpath})
69+
set_tests_properties(PtychoWorkflow PROPERTIES TIMEOUT 1800)
6570
add_cxx_qtest(PyXRFWorkflow PYTHONPATH ${_pythonpath})
71+
set_tests_properties(PyXRFWorkflow PROPERTIES TIMEOUT 1800)
6672

6773
# Generate the executable
6874
create_test_executable(tomvizTests)

tests/cxx/PyXRFWorkflowTest.cxx

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -150,13 +150,16 @@ private slots:
150150
// Keep processing events until all dialogs have
151151
// been found and accepted/rejected.
152152
int timeElapsed = 0;
153-
int maxTime = 30;
153+
int maxTime = 120;
154154
while (!found && timeElapsed < maxTime) {
155155
QThread::sleep(1);
156156
QApplication::processEvents();
157157
timeElapsed += 1;
158158
}
159159

160+
// Clean up the runner (terminates any running processes)
161+
delete runner;
162+
160163
// Verify everything was found
161164
QVERIFY(found);
162165

0 commit comments

Comments
 (0)