【问题标题】:Add requirements from requirements.txt to conda meta.yaml将需求从 requirements.txt 添加到 conda meta.yaml
【发布时间】:2020-08-12 13:44:16
【问题描述】:

我正在编写一个 Python 包,我想在 pypi 和 conda 上发布它。为避免错误,我想将需求存储在一个文件中;至少在可预见的未来,它们是相同的。

从 meta.yaml 到 setup.py 很容易(例如通过 pyyaml),但是反过来呢?如何将需求注入 meta.yaml?

有没有类似的:

{% set data = load_setup_py_data() %}
...
requirements:
  run:
    {{ data.get('install_requires') }}

此方案的最佳做法是什么?

【问题讨论】:

    标签: python anaconda dependencies pypi requirements.txt


    【解决方案1】:

    很难找出一个 jinja 菜鸟,但这是可行的:

    requirements:
      run:
        {% for req in data.get('install_requires', []) %}
          - {{ req }}
        {% endfor %}
    

    出人意料地难以弄清楚为什么,但 load_setup_py_data() 似乎在 conda-build 期间被多次调用,有时它返回一个没有 install_requires 的空字典,所以 .get 会返回一个 None

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-19
      • 1970-01-01
      • 2018-08-02
      • 2020-01-22
      • 2020-11-26
      • 2021-11-03
      • 1970-01-01
      相关资源
      最近更新 更多