上周五,我已经建立了一个RPM规格为我的Django项目。该RPM创建virtualenv,通过pip并提出所有的东西都包下载的依赖。今天,我发现,BeautifulSoup 3.2已被释放。幸运的是,我有我的BeautifulSoup版本在requirements.txt寄托,所以我发现,由于构建失败的了。

现在完全不同的问题是:我该怎么办避免升级的东西,在未来? BeautifulSoup删除了一封来自PyPI所有先前版本,所以我不能下载,我对实际测试版本。 pip的下载缓存并不能帮助这里,因为相关pip总是试图先检查PyPI中。

你能推荐一下,以避免这种情况呢?

有帮助吗?

解决方案

首先,这是一个不寻常的情况。我从来没有见过另一个包中取出所有旧版本的BeautifulSoup的方式做。我认为,与其用户的敌对行为,存在严重的安全修补程序的情况下,或许除外。

这是说,如果你使用PIP想要一个可靠的构建过程中,你确实需要镜像所有你依靠本地的包。这并不难做到;您可以使用画中画的 - 表格下载选项(或您的现有的画中画缓存),让所有的包压缩包,然后就甩掉他们在索引,Web的服务目录,并使用--find链接在您的要求文件,以点画中画有(加--no指数来告诉它不使用的PyPI)。

其他提示

在有问题的文件仍然可以发现:只需提供直接的网址,而不是包的名称:

HTTP://www.crummy。 COM /软件/ BeautifulSoup /下载/ 3.X / 3.0.8.tar.gz

例如

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top