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

run_exports from channeldata.json not always applied #3610

Closed
jjhelmus opened this issue Jul 17, 2019 · 1 comment · Fixed by #3611
Closed

run_exports from channeldata.json not always applied #3610

jjhelmus opened this issue Jul 17, 2019 · 1 comment · Fixed by #3611
Labels
locked [bot] locked due to inactivity

Comments

@jjhelmus
Copy link
Contributor

Using conda 3.18.7 run_exports are not reliably applied to recipes.

For example:

package:
  name: example
  version: 1.0

requirements:
  build:
    - {{ compiler('c') }}

Rendering this recipe repeatedly gives two different results, the second one in this example is correct.

[root@chi9 io]# conda build --version
conda-build 3.18.7
[root@chi9 io]# conda render .
--------------
Hash contents:
--------------
{'c_compiler': 'gcc'}
----------
meta.yaml:
----------
package:
    name: example
    version: '1.0'
requirements:
    build:
        - _libgcc_mutex 0.1 main
        - binutils_impl_linux-64 2.31.1 h6176602_1
        - libstdcxx-ng 9.1.0 hdf63c60_0
        - binutils_linux-64 2.31.1 h6176602_7
        - libgcc-ng 9.1.0 hdf63c60_0
        - gcc_impl_linux-64 7.3.0 habb00fd_1
        - gcc_linux-64 7.3.0 h553295d_7
extra:
    copy_test_source_files: true
    final: true

[root@chi9 io]# conda render .
--------------
Hash contents:
--------------
{'c_compiler': 'gcc'}
----------
meta.yaml:
----------
package:
    name: example
    version: '1.0'
requirements:
    build:
        - _libgcc_mutex 0.1 main
        - libgcc-ng 9.1.0 hdf63c60_0
        - binutils_linux-64 2.31.1 h6176602_7
        - binutils_impl_linux-64 2.31.1 h6176602_1
        - gcc_impl_linux-64 7.3.0 habb00fd_1
        - gcc_linux-64 7.3.0 h553295d_7
        - libstdcxx-ng 9.1.0 hdf63c60_0
    host:
        - _libgcc_mutex 0.1 main
        - libgcc-ng 9.1.0 hdf63c60_0
    run:
        - libgcc-ng >=7.3.0
extra:
    copy_test_source_files: true
    final: true

From my limited debugging this seems to depend on the order in which the channeldata is read in for the sub-channels of defaults in the download_channel function. If main is read in last the correct run_exports are applied, if r then the results are incorrect.

Likely related to some of the comments in #3583

jjhelmus added a commit to jjhelmus/conda-build that referenced this issue Jul 17, 2019
Merge channeldata from all urls associated with a channel. Previously
only the channeldata from the last url examined was returned.

closes conda#3610
@github-actions
Copy link

Hi there, thank you for your contribution!

This issue has been automatically locked because it has not had recent activity after being closed.

Please open a new issue if needed.

Thanks!

@github-actions github-actions bot added the locked [bot] locked due to inactivity label Mar 10, 2022
@github-actions github-actions bot locked as resolved and limited conversation to collaborators Mar 10, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
locked [bot] locked due to inactivity
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant