使用Pipenv在软件包之间拆分依赖关系

时间:2019-02-07 09:51:37

标签: python python-3.x pip package pipenv

我正在研究一个Python代码库,该代码库分为3个不同的软件包:

  • common是其他软件包使用的库
  • datascience,它使用common并包含许多很大的库(numpy / scipy /...)
  • api仅使用common

我正在使用pipenv来管理我的依赖项,现在在根目录下有一个Pipfile,其中包含所有库。 问题是api打包了datascience所需的所有非常大的库,即使它没有使用它们。

.
├── Pipfile
├── common
|   ├── __init__.py
|   └── common.py
├── datascience
|   ├── __init__.py
|   └── ds.py
├── api
    ├── __init__.py
    └── handler.py

我希望能够部署api软件包及其依赖关系,而无需部署common软件包及其dep。 同样,我还需要构建datascience程序包,其中包括datascience程序包及其依赖项,而common程序包及其dep除外。

我尝试执行以下操作:

api

. ├── common | ├── Pipfile << Only contains deps used by common pkg | ├── __init__.py | └── common.py ├── datascience | ├── Pipfile << Only contains deps used by datascience pkg | ├── __init__.py | └── ds.py ├── api ├── Pipfile << Only contains deps used by api pkg ├── __init__.py └── handler.py ,但失败了。

0 个答案:

没有答案