@@ -254,12 +254,14 @@ jobs:
254254 conda activate mhkit_conda_env
255255 pip3 install -e .
256256
257+ # mhkit 1.0.1 requires numpy 2.0+ (uses np.trapezoid)
258+ # scipy 1.14+ is compatible with numpy 2.0
257259 - name : Pin scipy version
258260 shell : bash -l {0}
259261 run : |
260262 conda activate mhkit_conda_env
261263 pip uninstall -y scipy
262- pip install scipy==1.12 .0
264+ pip install scipy==1.14 .0
263265
264266 # Some tests fail with:
265267 # Python Error: ImportError: DLL load failed while importing pyexpat: The operating system cannot run %1.
@@ -340,18 +342,22 @@ jobs:
340342 content = f'''getenv('path')
341343 setenv('path', ['{python_dir};', getenv('path')])
342344 getenv('path')
343- pyenv(Version='{python_exe}', ExecutionMode='InProcess ')
345+ pyenv(Version='{python_exe}', ExecutionMode='OutOfProcess ')
344346 % Verify Python environment
345347 pe = pyenv;
346348 disp(pe);
347- % Warm up numpy
349+ % Warm up numpy - must call function to force resolution
348350 py.importlib.import_module('numpy');
349351 dummy = py.numpy.array([1,2,3]);
352+ disp(class(dummy));
350353 clear dummy;
351354 disp('py.numpy.array: resolved');
352- % Warm up mhkit
355+ % Warm up mhkit submodules - force resolution by calling functions
353356 py.importlib.import_module('mhkit');
354- disp('mhkit: resolved');
357+ py.importlib.import_module('mhkit.wave.io.ndbc');
358+ py.importlib.import_module('mhkit.wave.io.swan');
359+ py.importlib.import_module('mhkit.river.resource');
360+ disp('mhkit submodules: imported');
355361 py.sys.path
356362 version
357363 pyenv
0 commit comments