标签: requirements.txt

pip安装要求失败

我在尝试安装django项目的要求时遇到了问题.

我无法弄清楚为什么我会收到这个错误.

有人能引导我朝着正确的方向前进吗?

 >Running setup.py egg_info for package django-staticfiles
    Traceback (most recent call last):
      File "<string>", line 14, in <module>
      File "/Users/glosseyvilly/Desktop/Workspace/chris_dev/mysite-env/build/django-staticfiles/setup.py", line 128, in <module>
        'versiontools >= 1.6',
      File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/distutils/core.py", line 113, in setup
        _setup_distribution = dist = klass(attrs)
      File "build/bdist.linux-i686/egg/setuptools/dist.py", line 260, in __init__
      File "build/bdist.linux-i686/egg/setuptools/dist.py", line 284, in fetch_build_eggs
      File "build/bdist.linux-i686/egg/pkg_resources.py", line 563, in resolve
        plugin_projects = list(plugin_env)
      File "build/bdist.linux-i686/egg/pkg_resources.py", line 799, in best_match

      File "build/bdist.linux-i686/egg/pkg_resources.py", line 811, in obtain

      File "build/bdist.linux-i686/egg/setuptools/dist.py", line 327, in fetch_build_egg
      File …
Run Code Online (Sandbox Code Playgroud)

python django pip requirements.txt

8
推荐指数
1
解决办法
2万
查看次数

管理Python虚拟环境的requirements.txt内容

所以我从头开始创建一个全新的Flask应用程序.正如所有优秀的开发人员所做的那样,我的第一步是创建虚拟环境.

我在虚拟环境中安装的第一件事是Flask==0.11.1.Flask安装以下依赖项:

  • 点击== 6.6
  • itsdangerous == 0.24
  • Jinja2的== 2.8
  • MarkupSafe == 0.23
  • WERKZEUG == 0.11.11
  • 轮== 0.24.0

现在,我创建了一个requirements.txt,以确保每个克隆存储库的人都拥有相同版本的库.但是,我的困境是这样的:

  • 我是否在requirements.txt中提及每个Flask依赖项以及版本号OR
  • 我是否只需要requirements.txt中提及确切的Flask版本号,并希望当他们执行pip install requirements.txt时,Flask将负责依赖管理,他们将下载正确版本的依赖库

python pip virtualenv requirements.txt

8
推荐指数
3
解决办法
2万
查看次数

pip 需求文件有命名约定吗?

requirements.txt是否存在在 Python 代码存储库中存储多个文件的约定。例如,一个文件用于简单运行程序,另一个文件用于日常开发,另一个文件用于进行 Windows 构建。

  • 一些存储库包含两个文件,requirements.txtand requirements_dev.txt,或requirements.txtand requirements_win.txt- 这看起来非常特别。
  • 我还有其他带有requires子文件夹的。但我不确定requires/requirements.txt在这种情况下的含义是什么——运行应用程序还是用于开发?
  • 构建项目(Python 漫游指南)或pip install (pip 文档)中没有提到存储多个需求文件。

python pip naming-conventions requirements.txt

8
推荐指数
1
解决办法
2611
查看次数

cairocffi 在 Ubuntu 18.04 上安装失败

我正在pip freeze一个 python 项目上运行,它显示除数字版本之外的字符串 VERSION 并且包安装失败,警告消息是:

weasyprint 43 有要求 cairocffi>=0.9.0,但您将拥有不兼容的 cairocffi file-.cairocffi-VERSION。

cairocffi===file-.cairocffi-VERSION
Run Code Online (Sandbox Code Playgroud)

cairoccffi 是我在项目中使用的 Weasyprint 的依赖项,并且 weasypring 版本是正确的:

WeasyPrint==43
Run Code Online (Sandbox Code Playgroud)

我尝试使用pipreqs生成 requirements.txt,它没有显示 cairocffi 包,但包安装失败并出现相同的错误。

我检查了 site-packages 文件夹,它包含

cairocffi-file_.cairocffi_VERSION.dist-info/
Run Code Online (Sandbox Code Playgroud)

导致问题的原因。

有人可以帮忙吗?

python-3.x requirements.txt weasyprint

8
推荐指数
1
解决办法
1947
查看次数

使用 &gt;= 或 ~= 来实现跨系统兼容性?

我的目标是一种简单而正确的方法来导出我的venv. 在最佳情况下,结果requirements.txt适用于所有兼容系统。

目前我使用pip freeze > requirements.txt. 这使用了==“版本匹配子句”。在其他系统上,该文件可能由于版本冲突而无法工作,尽管它是兼容的。

PEP 440中还有一个~=“兼容条款”。但是,我在 pip freeze docs中找不到相应的选项。awk使用“查找和替换”或类似将 == 替换为 ~= 的工具可以正常工作。

我天真的结论是,这~=将是在 中使用的理想子句requirements.txt。然而,当我查看流行的软件包时,他们经常使用它们>=来指定版本。例如在urllib3

~= 有一个我没有看到的缺点吗?
如果不是这样:为什么在这么多包中使用 >= ?

编辑:
Pigar有一个本地使用 >= 的选项,并且这里有一个与 freeze 的比较。显然,他们也不使用〜=。
然而,我仍然不确定该使用哪一个,因为当发生重大版本更改时 >= 可能会中断。此外,较低次要版本的软件包将被标记为不兼容,尽管它们应该是兼容的。

python pip requirements.txt

8
推荐指数
1
解决办法
588
查看次数

gevent 的构建轮 (pyproject.toml) 未成功运行

我在为我的项目安装依赖项时遇到错误!

\n

操作系统:Windows 11

\n

Python:3.10.4(64位)

\n

点:22.1.2

\n
  Building wheel for django-admin-sortable2 (setup.py) ... done\n  Created wheel for django-admin-sortable2: filename=django_admin_sortable2-0.7.5-py3-none-any.whl size=69989 sha256=0a4ff29d0c9b0422611dde61c6c1665dd36b10f98413f4ed7b8532e29afdc03d\n  Stored in directory: c:\\users\\kev\\appdata\\local\\pip\\cache\\wheels\\99\\3e\\95\\384eeaa2d641ef0c9e8b46e701737b53ae6a973358887816e0\n  Building wheel for easy-thumbnails (setup.py) ... done\n  Created wheel for easy-thumbnails: filename=easy_thumbnails-2.7-py2.py3-none-any.whl size=69700 sha256=ce66afcd2ca403acf9225b53eed60300c8d37c3bad53dcdf37ebc3a25550bdc6\n  Stored in directory: c:\\users\\kev\\appdata\\local\\pip\\cache\\wheels\\cb\\33\\00\\f7fa4b381ae4cbaf99674fb7a4411339d38e616cfcc41632c5\n  Building wheel for gevent (pyproject.toml) ... error\n  error: subprocess-exited-with-error\n\n  \xc3\x97 Building wheel for gevent (pyproject.toml) did not run successfully.\n  \xe2\x94\x82 exit code: 1\n  \xe2\x95\xb0\xe2\x94\x80> [288 lines of output]\n      running bdist_wheel\n      running build\n      running build_py\n      creating …
Run Code Online (Sandbox Code Playgroud)

python requirements.txt python-wheel

8
推荐指数
1
解决办法
4万
查看次数

有没有办法在我自己的python项目中自动检测所需的模块和包

我想创建一个python分发包,并且需要检查我自己的包所需的所有包。

对于requirements.txt,它包括它需要的所有包。但是,我想找到一种方法来检查我需要的所有包,并且对于某些包,它们也是我项目中其他包的一些要求。

有什么方法可以检查我需要哪些包,并为我自己的项目维护最少的包?

python pip requirements.txt

7
推荐指数
2
解决办法
3261
查看次数

由于缺少 pandoc,构建文档失败

问题

在 readthedocs.io 网络界面上单击“构建”时,我无法成功构建我的文档,但它在我的本地机器上构建得很好。为了测试这是一个环境问题,我创建了一个虚拟环境:

conda create virtualenv -n venv
conda env export -n venv
source activate venv
Run Code Online (Sandbox Code Playgroud)

然后我将我的 requirements.txt 文件安装为:

pip install -r requirements.txt
Run Code Online (Sandbox Code Playgroud)

然后跑了

make clean html
Run Code Online (Sandbox Code Playgroud)

在虚拟环境和在线 buildthedocs 中,我收到错误消息:

Notebook error:
PandocMissing in ex_degassing.ipynb:
Pandoc wasn't found.
Please check that pandoc is installed:
http://pandoc.org/installing.html
make: *** [html] Error 2
Run Code Online (Sandbox Code Playgroud)

我已经搜索并搜索了一个解决方案,但我最好的猜测是 pandoc 没有通过 pip 安装,即使它在 requirements.txt 文件中。我还尝试通过在我的 requirements.txt 文件中替换pandocwith来告诉它从源代码构建git+git://github.com/jgm/pandoc#egg=pandoc,但这不起作用(请参阅下文了解我的文件的外观)。我可以轻松地在本地机器上安装 pandoc,但无法通过我的虚拟环境或 readthedocs 中的 requirements.txt 文件进行安装。

我的一些文件

这是我的requirements.txt文件:

sphinx>=1.4
sphinx_rtd_theme
ipykernel
nbsphinx
pandas
pandoc
numpy …
Run Code Online (Sandbox Code Playgroud)

python pandoc requirements.txt read-the-docs

7
推荐指数
3
解决办法
597
查看次数

确定项目/包所需的最低 python 包版本的方法?

这个问题涉及任何包,而不仅仅是Python版本本身。提供一些背景信息:我们计划在工作中构建一个内部包,它自然会有很多依赖项。为了给我们的开发人员提供自由并避免混乱的版本冲突,我想为包需求(.txt)指定更广泛的约束,例如,pandas>=1.0pyspark>=1.0.0, <2.0

有没有一种方法可以有效地确定/测试给定代码所需的最低版本?

我可以安装pandas==0.2.4并查看代码是否运行,等等,但这种方法似乎很快就会失控。这是我第一次从事软件包构建工作,所以我对此有点迷失。查看其他包的源代码(在 GitHub 上)对我没有帮助,因为我不知道开发人员用来指定依赖项约束的方法是什么。

python dependencies package-managers requirements.txt

7
推荐指数
0
解决办法
339
查看次数

我收到“错误:在 --require-hashes 模式下,当我执行“pip install -r requests”时,所有要求的版本都必须用 == 固定

当我尝试使用“pip install -rrequirements.txt”将 python 3.6.8 的一些需求安装到我的文件夹时,我在 cmd 行底部收到以下消息

ERROR: In --require-hashes mode, all requirements must have their versions pinned with ==. These do not:
    importlib-metadata from https://files.pythonhosted.org/packages/71/c2/cb1855f0b2a0ae9ccc9b69f150a7aebd4a8d815bd951e74621c4154c52a8/importlib_metadata-4.8.1-py3-none-any.whl#sha256=b618b6d2d5ffa2f16add5697cf57a46c76a56229b0ed1c438322e4e95645bd15 (from backports.entry-points-selectable==1.1.0->-r requirements-38.txt (line 7))
Run Code Online (Sandbox Code Playgroud)

我已经将我的 pip 版本更新到 21.2.4,有谁知道可能会导致什么以及如何解决这个问题?欣赏!!

pip requirements.txt python-3.6

7
推荐指数
1
解决办法
5782
查看次数