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

Migrate to {{ stdlib("c") }} #13

Merged
merged 3 commits into from
May 14, 2024

Conversation

hcho3
Copy link
Contributor

@hcho3 hcho3 commented Apr 23, 2024

The sysroot* syntax is getting phased out (conda-forge/conda-forge.github.io#2102).
The recommendation is to move to {{ stdlib("c") }}.

Ref conda-forge/cuda-feedstock#26

@hcho3 hcho3 requested a review from a team as a code owner April 23, 2024 21:34
@conda-forge-webservices
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 (recipe) and found it was in an excellent condition.

@hcho3 hcho3 changed the title Migrate to {{ stdlib("c") }} Migrate to CentOS 7 and glibc 2.17 Apr 24, 2024
@hcho3 hcho3 changed the title Migrate to CentOS 7 and glibc 2.17 Migrate to {{ stdlib("c") }} Apr 24, 2024
@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

@jakirkham
Copy link
Member

@conda-forge-admin , please restart CI

Comment on lines -1 to -2
c_stdlib:
- vs
Copy link
Member

Choose a reason for hiding this comment

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

Weird. Re-rendering shouldn't have removed this

Note that this is what leads to the CI error for Windows:

conda_libmamba_solver.conda_build_exceptions.ExplainedDependencyNeedsBuildingError: Unsatisfiable dependencies for platform win-64: {MatchSpec("c_win-64")}
Encountered problems while solving:
  - nothing provides requested c_win-64

Will try re-rendering again

Copy link
Member

Choose a reason for hiding this comment

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

On closer inspection, it looks like re-rendering with conda-smithy is doing the right thing

The cuda-nvtx package has a skip for win-64. As a result is ignored when generating the variants. Hence c_stdlib is dropped

However for some reason it is still being considered by conda-build when building cuda-nvtx-dev

@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

recipe/meta.yaml Outdated
@@ -51,6 +51,7 @@ outputs:
build:
- {{ compiler("c") }}
- {{ compiler("cxx") }}
- {{ stdlib("c") }}
Copy link
Member

Choose a reason for hiding this comment

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

As a workaround let's try adding a selector to limit {{ stdlib("c") }} to Linux. This shouldn't be needed as the cuda-nvtx package is Linux only. Though maybe this helps conda-build in its parsing of this recipe

Suggested change
- {{ stdlib("c") }}
- {{ stdlib("c") }} # [linux]

Copy link
Member

Choose a reason for hiding this comment

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

Looks like this is still needed even with conda-build version 24.3.0

Suggested change
- {{ stdlib("c") }}
- {{ stdlib("c") }} # [linux]

@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

@jakirkham
Copy link
Member

jakirkham commented May 14, 2024

Interesting apparently the bot had a no change commit: 0228ab7

According to the GHA job, some changes were made:

[stdlib-migration 3dfa8c6] MNT: Re-rendered with conda-build 24.5.0, conda-smithy 3.35.1, and conda-forge-pinning 2024.05.14.14.54.30
 1 file changed, 2 deletions(-)
INFO:conda_smithy.configure_feedstock:
INFO:conda_smithy.configure_feedstock:These changes need to be pushed to github!

[stdlib-migration 0228ab7] MNT: Re-rendered with conda-build 24.5.0, conda-smithy 3.35.1, and conda-forge-pinning 2024.05.14.14.54.30
 Date: Tue May 14 21:28:01 2024 +0000

@jakirkham
Copy link
Member

jakirkham commented May 14, 2024

Testing locally, conda-smithy appears to be applying these changes ( conda-forge/conda-smithy#1923 ) to the GHA automerge workflow as expected

Guessing this is just a bug with the re-rendering bot. Filed upstream in issue: conda-forge/webservices-dispatch-action#70

@jakirkham
Copy link
Member

Seeing a new issue with the Windows build on CI (also attached log for posterity):

Traceback (most recent call last):
  File "C:\Miniforge\Scripts\conda-build-script.py", line 10, in <module>
    sys.exit(execute())
  File "C:\Miniforge\lib\site-packages\conda_build\cli\main_build.py", line 590, in execute
    api.build(
  File "C:\Miniforge\lib\site-packages\conda_build\api.py", line 250, in build
    return build_tree(
  File "C:\Miniforge\lib\site-packages\conda_build\build.py", line 3638, in build_tree
    packages_from_this = build(
  File "C:\Miniforge\lib\site-packages\conda_build\build.py", line 2696, in build
    output_d["files"] = set(output_d["files"]) - to_remove
TypeError: 'frozendict.frozendict' object does not support item assignment

Looks potentially related to an upstream change: conda/conda-build#5284

@jakirkham
Copy link
Member

Reproduced independently of these changes in PR ( #16 ). Have summarized the results in comment ( #16 (comment) ). Also raised as upstream issue ( conda/conda-build#5342 )

@jakirkham jakirkham mentioned this pull request May 14, 2024
5 tasks
@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

@jakirkham
Copy link
Member

To bring CI back into a working state, have pinned to conda-build version 24.3.0 in PR: #17

Squashed and rebased the changes here. Plus cleaned out any workaround that were attempted

Asked the bot to do a fresh re-render, which it did

Think that should clear up the CI issues we have seen before so that we can merge this

@jakirkham jakirkham added the automerge Merge the PR when CI passes label May 14, 2024
Copy link
Contributor

github-actions bot commented May 14, 2024

Hi! This is the friendly conda-forge automerge bot!

I considered the following status checks when analyzing this PR:

  • linter: passed
  • azure: passed

Thus the PR was passing and merged! Have a great day!

Workaround as `conda-build` considers the dependencies of this package
even when it is skipped (as is the case on Windows).
@jakirkham jakirkham removed the automerge Merge the PR when CI passes label May 14, 2024
@jakirkham
Copy link
Member

@conda-forge-admin , please re-render

Copy link
Contributor

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

I tried to rerender for you, but it looks like there was nothing to do.

This message was generated by GitHub actions workflow run https://github.com/conda-forge/cuda-nvtx-feedstock/actions/runs/9087714664.

@jakirkham jakirkham added the automerge Merge the PR when CI passes label May 14, 2024
@github-actions github-actions bot merged commit 9437f53 into conda-forge:main May 14, 2024
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
automerge Merge the PR when CI passes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants