@@ -17,15 +17,15 @@ jobs:
1717 matrix :
1818 os : [ubuntu-latest]
1919 mpi-version : [mpich]
20- python-version : ["3.10 ", "3.11 ", "3.12 ", "3.13 "]
20+ python-version : ["py310 ", "py311 ", "py312 ", "py313", "py314 "]
2121 comms-type : [m, l]
2222 include :
2323 - os : macos-latest
24- python-version : " 3.11 "
24+ python-version : " py311 "
2525 mpi-version : mpich
2626 comms-type : m
2727 - os : macos-latest
28- python-version : " 3.11 "
28+ python-version : " py311 "
2929 mpi-version : mpich
3030 comms-type : l
3131
@@ -39,64 +39,44 @@ jobs:
3939 shell : bash -l {0}
4040
4141 steps :
42- - uses : actions/checkout@v6
43- - name : Setup conda - Python ${{ matrix.python-version }}
44- uses : conda-incubator/setup-miniconda@v3
42+ - uses : actions/checkout@v4
4543 with :
46- activate-environment : condaenv
47- miniconda-version : " latest"
48- python-version : ${{ matrix.python-version }}
49- channels : conda-forge
50- channel-priority : strict
51- auto-update-conda : true
52-
53- - name : Force-update certifi and pip
54- run : |
55- python --version
56- python -m pip install --upgrade pip
57- python -m pip install -I --upgrade certifi
58-
59- - name : Install Ubuntu compilers
60- if : matrix.os == 'ubuntu-latest'
61- run : |
62- conda install -c conda-forge gcc_linux-64
44+ lfs : true
6345
64- # Roundabout solution on macos for proper linking with mpicc
65- - name : Install macOS compilers
66- if : matrix.os == 'macos-latest'
67- run : |
68- conda install clang_osx-64
46+ - name : Checkout lockfile
47+ run : git lfs checkout
6948
70- - name : Install basic testing/feature dependencies
71- run : |
72- pip install -r install/testing_requirements.txt
73- pip install -r install/misc_feature_requirements.txt
74- source install/install_ibcdfo.sh
75- conda install numpy scipy
49+ - uses : prefix-dev/setup-pixi@v0.9.2
50+ with :
51+ pixi-version : v0.55.0
52+ cache : true
53+ frozen : true
54+ environments : ${{ matrix.python-version }}
55+ activate-environment : ${{ matrix.python-version }}
7656
77- - name : Install mpi4py and MPI from conda
57+ - name : Install IBCDFO
7858 run : |
79- conda install mpi4py ${{ matrix.mpi -version }}
59+ pixi run -e ${{ matrix.python -version }} ./install/install_ibcdfo.sh
8060
8161 - name : Install libEnsemble, test flake8
8262 run : |
8363 pip install -e .
8464 flake8 libensemble
8565
8666 - name : Remove various tests on newer pythons
87- if : matrix.python-version >= '3.11 '
67+ if : matrix.python-version == 'py311' || matrix.python-version == 'py312' || matrix.python-version == 'py313' || matrix.python-version == 'py314 '
8868 run : |
89- rm ./libensemble/tests/functionality_tests/test_local_sine_tutorial*.py # matplotlib errors on 3.12
69+ rm ./libensemble/tests/functionality_tests/test_local_sine_tutorial*.py # matplotlib errors on py312
9070
9171 - name : Run simple tests, Ubuntu
9272 if : matrix.os == 'ubuntu-latest'
9373 run : |
94- ./libensemble/tests/run_tests.py -A "-W error" -${{ matrix.comms-type }}
74+ ./libensemble/tests/run_tests.py -A "-W error" -${{ matrix.comms-type }}
9575
9676 - name : Run simple tests, macOS
9777 if : matrix.os == 'macos-latest'
9878 run : |
99- ./libensemble/tests/run_tests.py -A "-W error" -${{ matrix.comms-type }}
79+ pixi run -e ${{ matrix.python-version }} ./libensemble/tests/run_tests.py -A "-W error" -${{ matrix.comms-type }}
10080
10181 - name : Merge coverage
10282 run : |
0 commit comments