Skip to content

Add conda-forge workflow#158

Open
ndgrigorian wants to merge 2 commits intoadd-to-pre-commitfrom
add-conda-forge-workflow
Open

Add conda-forge workflow#158
ndgrigorian wants to merge 2 commits intoadd-to-pre-commitfrom
add-conda-forge-workflow

Conversation

@ndgrigorian
Copy link
Collaborator

Also updates recipe maintainers

@ndgrigorian ndgrigorian requested a review from antonwolfy as a code owner March 5, 2026 21:40
Copilot AI review requested due to automatic review settings March 5, 2026 21:40
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR introduces a conda-forge-oriented CI workflow/recipe setup and updates repository tooling to better enforce commit hygiene and workflow validation.

Changes:

  • Add a new conda-forge workflow (conda-package-cf.yml) and a parallel conda recipe directory (conda-recipe-cf/).
  • Update conda recipe maintainers.
  • Expand pre-commit hooks (including actionlint/gitleaks) and adjust CI scripts/quoting in GitHub workflows.

Reviewed changes

Copilot reviewed 11 out of 11 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
conda-recipe/meta.yaml Updates recipe-maintainers list.
conda-recipe-cf/meta.yaml Adds a conda-forge-oriented recipe definition.
conda-recipe-cf/conda_build_config.yaml Adds platform compiler/sysroot configuration for conda-build.
conda-recipe-cf/build.sh Adds Linux build script for the new recipe directory.
conda-recipe-cf/bld.bat Adds Windows build script for the new recipe directory.
.pre-commit-config.yaml Adds additional hooks (git hygiene, gitleaks, actionlint).
.github/workflows/pre-commit.yml Adjusts checkout ref and clang-format installation approach.
.github/workflows/conda-package.yml Improves quoting/arg handling in bash steps.
.github/workflows/conda-package-cf.yml Adds new conda-forge CI workflow (build + test matrix).
.github/workflows/build-with-clang.yml Improves quoting for compiler path export.
.git-blame-ignore-revs Adds ignore revision entry for the pre-commit hook expansion.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.


- name: Run tests
run: |
conda activate -n ${{ env.TEST_ENV_NAME }}
Copy link

Copilot AI Mar 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On Windows, conda activate does not accept -n (that's for commands like conda run/conda create). This will likely prevent the test environment from activating and cause the test step to fail. Use conda activate ${{ env.TEST_ENV_NAME }} (or run tests via conda run -n ...).

Suggested change
conda activate -n ${{ env.TEST_ENV_NAME }}
conda activate ${{ env.TEST_ENV_NAME }}

Copilot uses AI. Check for mistakes.
Comment on lines +1 to +16
c_compiler: # [linux]
- gcc # [linux]
cxx_compiler: # [linux]
- gxx # [linux]
cxx_compiler_version: # [linux]
- '14' # [linux]
c_stdlib: # [linux]
- sysroot # [linux]
c_stdlib_version: # [linux]
- '2.28' # [linux]
c_stdlib: # [win]
- vs # [win]
cxx_compiler: # [win]
- vs2022 # [win]
c_compiler: # [win]
- vs2022 # [win]
Copy link

Copilot AI Mar 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

conda_build_config.yaml repeats the same top-level keys (c_compiler, cxx_compiler, etc.) for linux and win. YAML duplicate keys are not reliably supported (often the last one wins), so the linux configuration may be ignored or the file may fail to parse. Combine selectors under a single key with multiple list entries instead of repeating the key.

Suggested change
c_compiler: # [linux]
- gcc # [linux]
cxx_compiler: # [linux]
- gxx # [linux]
cxx_compiler_version: # [linux]
- '14' # [linux]
c_stdlib: # [linux]
- sysroot # [linux]
c_stdlib_version: # [linux]
- '2.28' # [linux]
c_stdlib: # [win]
- vs # [win]
cxx_compiler: # [win]
- vs2022 # [win]
c_compiler: # [win]
- vs2022 # [win]
c_compiler:
- gcc # [linux]
- vs2022 # [win]
cxx_compiler:
- gxx # [linux]
- vs2022 # [win]
cxx_compiler_version:
- '14' # [linux]
c_stdlib:
- sysroot # [linux]
- vs # [win]
c_stdlib_version:
- '2.28' # [linux]

Copilot uses AI. Check for mistakes.
Comment on lines +7 to +16
c_stdlib: # [linux]
- sysroot # [linux]
c_stdlib_version: # [linux]
- '2.28' # [linux]
c_stdlib: # [win]
- vs # [win]
cxx_compiler: # [win]
- vs2022 # [win]
c_compiler: # [win]
- vs2022 # [win]
Copy link

Copilot AI Mar 5, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

c_stdlib is defined twice (linux and win). As with other duplicate keys, this can override earlier values and break the intended per-platform configuration. Restructure as a single c_stdlib: key with per-platform entries (using selectors on the list items).

Suggested change
c_stdlib: # [linux]
- sysroot # [linux]
c_stdlib_version: # [linux]
- '2.28' # [linux]
c_stdlib: # [win]
- vs # [win]
cxx_compiler: # [win]
- vs2022 # [win]
c_compiler: # [win]
- vs2022 # [win]
c_stdlib:
- sysroot # [linux]
- vs # [win]
c_stdlib_version: # [linux]
- '2.28' # [linux]
cxx_compiler: # [win]
- vs2022 # [win]
c_compiler: # [win]
- vs2022 # [win]

Copilot uses AI. Check for mistakes.
@ndgrigorian ndgrigorian force-pushed the add-conda-forge-workflow branch from d598fd2 to 33ec733 Compare March 5, 2026 21:44
@ndgrigorian ndgrigorian changed the base branch from master to add-to-pre-commit March 5, 2026 21:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants