Fix detect binary files prefix inversion (#539) #1168
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| name: Commit Checks | |
| jobs: | |
| # NOTE: Tests also run via `pre-commit` | |
| pre-commit: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
| - uses: ./.github/actions/setup-env | |
| with: | |
| python-version: "3.11" | |
| # Executes `pre-commit` with the `make` directive to ensure all dependencies are found | |
| - run: | | |
| source $CONDA/bin/activate | |
| conda activate conda-recipe-manager | |
| make pre-commit | |
| test: | |
| runs-on: ubuntu-latest | |
| name: Test on ${{ matrix.python-version }} | |
| strategy: | |
| matrix: | |
| # NOTES: | |
| # - 3.11 is skipped as it is covered by the `pre-commit` job. | |
| python-version: ["3.12", "3.13", "3.14"] | |
| steps: | |
| - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
| - uses: ./.github/actions/setup-env | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - run: | | |
| source $CONDA/bin/activate | |
| conda activate conda-recipe-manager | |
| make test | |
| build-recipe-conda: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
| # As a work around for https://github.com/anaconda/conda-anaconda-telemetry/issues/87 we now build | |
| # outside of the base conda environment. | |
| - name: Build package in conda build | |
| run: | | |
| source $CONDA/bin/activate | |
| conda create --name build-env -y python=3.11 conda-build | |
| # Call the `conda-build` binary directly. Recent conda versions | |
| # don't register `conda build` as a subcommand, so `conda build` | |
| # fails with `invalid choice: 'build'` whether invoked via | |
| # `conda activate` or `conda run`. | |
| conda run -n build-env conda-build -c defaults recipe/meta.yaml | |
| # Eat our own dog food and build this project with rattler-build by converting our existing recipe. | |
| # Remember, `rattler-build` will pull from the `conda-forge` channel, which may cause some version inconsistencies. | |
| # NOTE: As of 2026-02-25, we tell `rattler-build` to ignore 3.14+ explicitly (via `sed`) to avoid issues with the | |
| # 3.14 build-out. | |
| build-recipe-rattler: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 | |
| - uses: ./.github/actions/setup-env | |
| with: | |
| python-version: "3.11" | |
| - name: Build package in rattler-build (experimental) | |
| run: | | |
| source $CONDA/bin/activate | |
| conda activate conda-recipe-manager | |
| conda install -y -c conda-forge rattler-build | |
| conda-recipe-manager convert -o recipe/recipe.yaml recipe/meta.yaml | |
| sed -ie 's/python >=3.11/python >=3.11,<3.14/g' recipe/recipe.yaml | |
| mkdir -p ../temp | |
| rattler-build build -r recipe/ --output-dir=../temp |