Skip to content

Conversation

scal444
Copy link

@scal444 scal444 commented Oct 9, 2025

Checklist

  • Title of this PR is meaningful: e.g. "Adding my_nifty_package", not "updated meta.yaml".
  • License file is packaged (see here for an example).
  • Source is from official source.
  • Package does not vendor other packages. (If a package uses the source of another package, they should be separate packages or the licenses of all packages need to be packaged).
  • If static libraries are linked in, the license of the static library is packaged.
  • Package does not ship static libraries. If static libraries are needed, follow CFEP-18.
  • Build number is 0.
  • A tarball (url) rather than a repo (e.g. git_url) is used in your recipe (see here for more details).
  • GitHub users listed in the maintainer section have posted a comment confirming they are willing to be listed there.
  • When in trouble, please check our knowledge base documentation before pinging a team.

Copy link
Contributor

github-actions bot commented Oct 9, 2025

Hi! This is the staged-recipes linter and your PR looks excellent! 🚀

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/nvmolkit/recipe.yaml) and found some lint.

Here's what I've got...

For recipes/nvmolkit/recipe.yaml:

  • ❌ The homepage item is expected in the about section.
  • ❌ There are too few lines. There should be one empty line at the end of the file.
  • requirements: build: cmake >= 3.30 should not contain a space between relational operator and the version, i.e. cmake >=3.30
  • requirements: host: cuda-version==12.8 must contain a space between the name and the pin, i.e. cuda-version ==12.8
  • requirements: run: cuda-version==12.8 must contain a space between the name and the pin, i.e. cuda-version ==12.8
  • ❌ This recipe is using a compiler, which now requires adding a build dependence on ${{ stdlib("c") }} as well. Note that this rule applies to each output of the recipe using a compiler. For further details, please see META: {{ stdlib("c") }} migration conda-forge.github.io#2102.

For recipes/nvmolkit/recipe.yaml:

  • ℹ️ You should not need to depend on libboost-python directly. If your package is linking to libboost_python3x.so, use libboost-python-devel in the host environment (which will create the correct dependence at runtime through a run-export), or use libboost-headers if you only need the boost headers.
  • ℹ️ Jinja2 variable references are suggested to take a ${{<one space><variable name><one space>}} form. See lines [9].

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/18382910856. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/nvmolkit/recipe.yaml) and found it was in an excellent condition.

@scal444
Copy link
Author

scal444 commented Oct 10, 2025

@conda-forge-admin, please ping team "conda-forge/help-python"

@conda-forge-webservices
Copy link

Hi! This is the friendly automated conda-forge-webservice.

I was asked to ping @conda-forge/staged-recipes and so here I am doing that.

Copy link
Contributor

To help direct your pull request to the best reviewers, please mention a topic-specifc team if your recipe matches any of the following: conda-forge/help-c-cpp, conda-forge/help-cdts, conda-forge/help-go, conda-forge/help-java, conda-forge/help-julia, conda-forge/help-nodejs, conda-forge/help-perl, conda-forge/help-python, conda-forge/help-python-c, conda-forge/help-r, conda-forge/help-ruby,or conda-forge/help-rust. Thanks!

@scal444
Copy link
Author

scal444 commented Oct 10, 2025

conda-forge/help-python

@scal444
Copy link
Author

scal444 commented Oct 15, 2025

@conda-forge/help-python ready for review

@traversaro
Copy link
Contributor

As this is is a Python package with some C code, you can also ping @conda-forge/help-python-c


zip_keys:
- - python
- is_python_min No newline at end of file
Copy link
Contributor

Choose a reason for hiding this comment

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

Just to understand, why you specified the cuda version and the python version in the variants.yaml file ? Tipically version supported by conda-forge are defined in https://github.com/conda-forge/conda-forge-pinning-feedstock, and packages can skip given version (for example, skipping python==3.10 builds by requiring an higher python version).

I see why this may needed due to conda-forge/conda-forge-pinning-feedstock#5719, but do you think it would be possible to drop that for Python and cuda?

Copy link
Author

Choose a reason for hiding this comment

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

OK thanks for the info, that pinning package helps me understand the recipe logic better. I've dropped what I can from the variants for now. The CUDA 12.6 default is ok with us, build should work fine if not quite optimal on modern architectures. I'd rather get our first release out with the standard compiler than worry about compatibility.

I tried to pin the python version in recipe.yaml instead but am getting Non noarch packages should have python requirement without any version constraints.

I'm also getting failures in the default linux build, because the cuda compiler version isn't populated. Should I skip the non-CUDA build? Not sure how exactly in the rattler-build recipe format.

Copy link
Contributor

Choose a reason for hiding this comment

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

OK thanks for the info, that pinning package helps me understand the recipe logic better. I've dropped what I can from the variants for now. The CUDA 12.6 default is ok with us, build should work fine if not quite optimal on modern architectures. I'd rather get our first release out with the standard compiler than worry about compatibility.

In the feedstock we have a build configuration that tries to target all supported versions of CUDA to maximize the platforms over which it can be installed. Users on systems that support the newest version of CUDA should automatically get the version built for newest CUDA target, and users with older systems will still have the ability to install the package though they will obviously experience lower performance.

Copy link
Author

@scal444 scal444 Oct 17, 2025

Choose a reason for hiding this comment

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

OK I applied the recommended fix with a small syntax change. I also removed the python version limit. Given the default builds of conda-forge are only off by 1 from my initial support matrix, it's not hard to extend to all 4 python versions and makes things easier.

Thanks!

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I wanted to let you know that I linted all conda-recipes in your PR (recipes/nvmolkit/recipe.yaml) and found some lint.

Here's what I've got...

For recipes/nvmolkit/recipe.yaml:

  • ❌ Non noarch packages should have python requirement without any version constraints.
  • ❌ Non noarch packages should have python requirement without any version constraints.

This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/18593847388. Examine the logs at this URL for more detail.

@conda-forge-admin
Copy link
Contributor

Hi! This is the friendly automated conda-forge-linting service.

I just wanted to let you know that I linted all conda-recipes in your PR (recipes/nvmolkit/recipe.yaml) and found it was in an excellent condition.

@scal444
Copy link
Author

scal444 commented Oct 17, 2025

All comments so far are addressed!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants