9292 done
9393 - name : Install khiops-python dependencies
9494 if : success() || failure()
95+ shell : bash
9596 run : |
9697 # The following git command is required,
9798 # as the Git repository is in a directory the current user does not own,
@@ -109,7 +110,15 @@ jobs:
109110 # Add homogeneous TOML support (Python >= 3.12 has standard tomllib)
110111 $CONDA install -y -n "$CONDA_ENV" tomli
111112 $CONDA run --no-capture-output -n "$CONDA_ENV" python scripts/extract_dependencies_from_pyproject_toml.py -f "pyproject.toml" > requires.txt
112- $CONDA install -y -n "$CONDA_ENV" `cat requires.txt`
113+ if [[ "${{ matrix.python-version }}" == "3.8" ]]; then
114+ # for python3.8 a pinned version of python is required to avoid installation conflicts
115+ $CONDA install -y -n "$CONDA_ENV" `cat requires.txt` python=${{ matrix.python-version }} python_abi=${{ matrix.python-version }}
116+ elif [[ "${{ matrix.python-version }}" == "3.9" ]]; then
117+ # for python3.9 only, conda "forgets" the specific dev channel used for khiops-core
118+ $CONDA install -c https://anaconda.org/khiops-dev -y -n "$CONDA_ENV" `cat requires.txt`
119+ else
120+ $CONDA install -y -n "$CONDA_ENV" `cat requires.txt`
121+ fi
113122 rm -f requires.txt
114123 done
115124 - name : Configure Expensive Tests Setting
@@ -356,20 +365,26 @@ jobs:
356365 ref : ${{ env.SAMPLES_REVISION }}
357366 token : ${{ secrets.GITHUB_TOKEN }}
358367 path : khiops-samples
368+ - name : Hack for pip under debian13
369+ if : matrix.container == 'debian13'
370+ run : |
371+ # Hack for pip under debian, the alternatives are using venv or pipx
372+ BREAK_SYSTEM_PACKAGES_FLAG="--break-system-packages"
373+ echo "BREAK_SYSTEM_PACKAGES_FLAG=${BREAK_SYSTEM_PACKAGES_FLAG}" >> $GITHUB_ENV
359374 - name : Install khiops-python dev dependencies
360375 run : |
361376 # The following git command is required,
362377 # as the Git repository is in a directory the current user does not own,
363378 # Python versioneer fails to compute the current version correctly otherwise
364379 git config --global --add safe.directory $(realpath .)
365380 # Install tomli for Python < 3.11
366- pip install --user tomli
381+ pip install ${BREAK_SYSTEM_PACKAGES_FLAG} tomli
367382 python scripts/extract_dependencies_from_pyproject_toml.py -f "pyproject.toml" > requires.txt
368- pip install --user `cat requires.txt`
383+ pip install ${BREAK_SYSTEM_PACKAGES_FLAG} `cat requires.txt`
369384 rm -f requires.txt
370385 - name : Setup and Install Test Requirements
371386 run : |
372- pip install -r test-requirements.txt
387+ pip install ${BREAK_SYSTEM_PACKAGES_FLAG} -r test-requirements.txt
373388 - name : Test Khiops Integration
374389 env :
375390 # Force > 2 CPU cores to launch mpiexec
0 commit comments