Skip to content

Migration to conda-build 3 and new compilers from AnacondaΒ #460

@msarahan

Description

@msarahan

Mega-thread for discussion and issue tracking with migration.

Currently known things to address:

  • how does toolchain package translate to compiler activation flags with new compilers?
  • Pinning is managed with conda_build_config.yaml files in conda-build 3. How to migrate conda-forge's existing pinning scheme to that?
  • Compatibility of Anaconda compiler's flags with conda-forge's existing defaults: are the default flags in the anaconda packages good enough that conda-forge need not carry its own customization? Note: customization risks incompatibility.
  • conda-build-all and job computation. CB3 has native matrix support, and outputs jobs as rendered MetaData objects. In Anaconda's CI system, we dump the conda_build_config.yaml files from those rendered objects, and use those dumped conda_build_config.yaml files to build the original templated recipe. We probably need a way to output temporary folders for the CI's to process as jobs. CB3's matrix support does not use env vars (but could).
  • Decide on usage of run_exports. run_exports essentially is the feature where a package declares what its runtime needs are if anyone uses that package at build time. This feature can make pinning much simpler, but perhaps makes recipes harder to read, because runtime dependencies become indirectly specified. Anaconda's recipes use run_exports very liberally.

Added 10/18/2017:

  • Implement windows activation script wrappers that are compatible with Appveyor's VS situation

Lots more I'm probably missing here, so please comment and/or modify this issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions