Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add cuda.core v0.1.1 as an output #102

Merged
merged 11 commits into from
Dec 24, 2024

Conversation

conda-forge-admin
Copy link
Contributor

@conda-forge-admin conda-forge-admin commented Dec 23, 2024

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

I've started rerendering the recipe as instructed in #101.

If I find any needed changes to the recipe, I'll push them to this PR shortly. Thank you for waiting!

Here's a checklist to do before merging.

Fixes #101
xref: conda-forge/admin-requests#1243

@conda-forge-admin
Copy link
Contributor Author

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 (recipe/meta.yaml) and found it was in an excellent condition.

@conda-forge-admin conda-forge-admin marked this pull request as ready for review December 23, 2024 04:01
@leofang leofang marked this pull request as draft December 23, 2024 15:57
@leofang
Copy link
Member

leofang commented Dec 24, 2024

@conda-forge-admin, please rerender

@leofang leofang changed the title MNT: rerender Add cuda.core v0.1.1 as an output Dec 24, 2024
@conda-forge-admin
Copy link
Contributor Author

conda-forge-admin commented Dec 24, 2024

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 (recipe/meta.yaml) and found it was in an excellent condition.

I do have some suggestions for making it better though...

For recipe/meta.yaml:

  • ℹ️ The recipe is not parsable by parser conda-souschef (grayskull). This parser is not currently used by conda-forge, but may be in the future. We are collecting information to see which recipes are compatible with grayskull.
  • ℹ️ The recipe is not parsable by parser conda-recipe-manager. The recipe can only be automatically migrated to the new v1 format if it is parseable by conda-recipe-manager.

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

@leofang leofang marked this pull request as ready for review December 24, 2024 05:39
Comment on lines +5 to +16
{% set pkg_ver = major_version ~ "." ~ minor_version ~ "." ~ patch_version %}
{% if major_version != 0 %}
{% set building_bindings = true %}
{% set building_core = false %}
{% set tag = "v" ~ pkg_ver %}
{% set number = 2 %}
{% else %}
{% set building_bindings = false %}
{% set building_core = true %}
{% set tag = "cuda-core-v" ~ pkg_ver %}
{% set number = 0 %}
{% endif %}
Copy link
Member

Choose a reason for hiding this comment

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

With this PR, this feedstock starts to produce multiple outputs. In the future it'd be

  • cuda-core
  • cuda-bindings
  • cuda-python

as described in the upstream issue (NVIDIA/cuda-python#105). For this particular tag, however, we only release cuda-core and the bindings should be kept intact, so a deselection logic is implemented here to only build cuda-core. We'll need to figure out how the logic looks like depending on the situation of future releases. Right now we're still experimenting so this is OK.

{% set target_name = "x86_64-linux" %} # [linux64]
{% set target_name = "sbsa-linux" %} # [aarch64]
{% set target_name = "x64" %} # [win64]
{% set subdir = "" %}
Copy link
Member

Choose a reason for hiding this comment

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

For some reason conda-smithy is not happy without a default value (jinja parsing failed with "subdir undefined".

Copy link
Member

@leofang leofang Dec 24, 2024

Choose a reason for hiding this comment

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

Note: we add the per-package, per-OS silly build scripts here because the usual {{ PYTHON }} trick that we apply to multi-output recipes no longer works for some reason... It seems the Jinja expansion order has changed in conda-smithy recently? Using the scripts is a workaround for the Jinja issue.

build:
number: {{ number }}
# cuda.bindings needs to be built with the matching major.minor headers
{% if not (environ.get("cuda_compiler_version")|string()) == (major_version ~ "." ~ minor_version) %}
Copy link
Member

Choose a reason for hiding this comment

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

Note: This skip condition has been updated to ensure the requirement is visible in the recipe level, not in the private migrator level. In fact, the migrator has caused trouble during rerendering, so I simply removed it. I checked that the new recipe here builds fine (if we revert the deselection logic to build cuda-python).

@leofang leofang merged commit d5347e0 into conda-forge:main Dec 24, 2024
18 checks passed
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.

@conda-forge-admin, please rerender
2 participants