如何在setup.py / install_requires中与pipfile / packages同步值



如果您在使用setup.pyPipfile的项目上工作,您通常会在以下方面找到相同的值: Pipfile/[packages]setup.py/install_requires

有人知道我如何告诉Pipfile使用setup.py/install_requires的值对[packages]

在您的setup.py中:

  1. 定义读取部分的函数:

    def locked_requirements(section):
    """Look through the 'Pipfile.lock' to fetch requirements by section."""
        with open('Pipfile.lock') as pip_file:
            pipfile_json = json.load(pip_file)
        if section not in pipfile_json:
            print("{0} section missing from Pipfile.lock".format(section))
            return []
        return [package + detail.get('version', "")
                for package, detail in pipfile_json[section].items()]
    
  2. setup功能中,从default返回列表:

    setup(
        # ...snip...
        install_requires=locked_requirements('default'),
        # ...snip...
    )
    

重要说明 :在MANIFEST.in中包括Pipfile.lock,例如:

include Pipfile.lock

相关内容

  • 没有找到相关文章

最新更新