【问题标题】:Python package build does not update codePython包构建不更新代码
【发布时间】:2021-01-23 06:36:48
【问题描述】:

我已经设置了一个用于分发的 python 包,过去它总是成功构建。 包的基本结构如下:

package  
|--folder 1  
     |--init  
|--folder 2  
     |--init  
setup.py  
LICENSE.txt  
MANIFEST.txt  

最近我注意到包“记住”旧代码。它不会完全更新最新的模块和代码。在文件夹 1 被完全删除(以及对其的所有引用,在 inits 中导入)并创建文件夹 3 的情况下,文件夹 1 仍被构建到新包中。一些 python 文件也不会更新,而其他文件则使用新版本成功更新。

我目前在 inits 中使用 __all__ = [] 而不是导入(我非常怀疑这是导致问题的原因,因为构建(据我了解)只需要每个目录中的 __init__ python 文件。

如何完全转储先前构建的软件包的“内存”?

编辑

我确实查看了 egg 信息以及包构建的输出。构建本身似乎正在创建所有正确的文件/文件夹。

在再次安装软件包之前,我尝试使用其名称 pip uninstall package 以及 pip uninstall package.2.0.0.whl 使用 pip 卸载软件包。在新的虚拟环境中从头开始安装也会产生相同的结果。

【问题讨论】:

  • 你是如何构建你的包的?
  • 我正在使用 setup.py 文件和命令python setup.py sdist bdist_wheel 构建包 setup.py 中的一些设置是:name=package_name version=2.0.0(我也尝试过更新) include_package_data = True 包描述、要求、url等附加项都包括在内。它使用 setuptools 设置

标签: python build


【解决方案1】:

事实证明,这个问题是由我的 python 包中的 build 文件夹引起的(它是在构建包时创建的)。我完全删除了这个文件(因为它似乎没有正确覆盖),将整个目录保存为本地副本(从 gi​​t 文件夹中删除)并重建。所有旧的“内存”都已完全重建,并且包正在正确部署

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-28
    • 1970-01-01
    • 1970-01-01
    • 2011-05-29
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    相关资源
    最近更新 更多