问题标签 [python-poetry]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 即使存在,诗歌也找不到依赖的版本
当我在诗歌中将我的 python 版本从 3.7 升级到 3.8 时,重新安装所有依赖项失败,并出现以下版本:
该版本的发行版可在 pypa 获得,并且通常是最新版本。
简单地删除有问题的包并不能解决问题,因为诗歌可能会与其他包一起失败。经过一番调查,似乎以某种方式诗歌没有使用 pip3 安装在下面,而是使用 pip2.7。
实际上,这是由弃用警报支持的,如果我尝试使用 pip(全局或其他方式)而不是 pip3 安装相同的版本,该错误总是可重现的。
这个问题令人沮丧,单独删除 venv 似乎无济于事。我该如何解决这个原本不应该存在的依赖问题?
python-poetry - 如何更改运行`poetry new`时生成的默认`pyproject.toml`
当我运行poetry new [directory]
它时,它会在目录中生成一个pyproject.toml
,但我总是发现我对它进行了相同的初始更改,例如
- python 版本(从 2.7 到 3.8)
- pytest 版本(从 4.6 到 5.4)
如何更改这些默认值,以便在运行poetry new
python 和 pytest 时拥有我想要的版本?
中指定的python版本是pyproject.toml
基于系统的python版本吗?如果是这种情况,我认为我无法更改系统的 python 版本,因为我使用的是 Mac,它可能会弄乱我的操作系统。或者我可以吗?
python - mypy "'owclient' 的导入被忽略"
我正在尝试开发一个类型感知包,遵循PEP-561。
- 包回购:https ://gitlab.com/fcomabella/ow-client
- 导入包的示例项目:https ://gitlab.com/fcomabella/test-owclient-types
- 真正的目标项目(一个 Gtk+ 应用程序):https ://gitlab.com/fcomabella/pi-homebrew
我希望第三个项目使用类型提示。我正在使用诗歌来管理包和 mypy 中的依赖关系来检查类型。
第二个项目只是导入包。它仅用作运行 mypy 命令的目标。
但是当我mypy test-owclient.py --follow-imports=error
在任何依赖项目中运行时,我得到以下错误:
mypy 命令在我启动的 virtualenv shell 中启动poetry shell
。
最初我使用了诗歌构建和诗歌发布命令,但遇到了这里描述的问题:诗歌问题#1338
然后我尝试使用 setuptools,生成了我自己的 setup.py 文件,基于诗歌生成的文件,内容如下。
但是,当我尝试在包含该包的项目中运行 mypy 时,我得到了相同的结果。
如果我mypy owclient --follow-imports=error
在 owclient 包中运行,我不会收到任何错误。
这些 mypy 错误是预期的吗?我能做些什么来纠正它们?
python - 打包 Python 项目及其关联的 IPython 魔术扩展
我正在将一个 Python 项目部署到 Pypi,我们称之为foobar
. 我想用一个 shell 命令和一个 IPython 魔术命令来分发它。我使用 Poetry,我的.toml
配置文件的相关部分是:
将其上传到 TestPypi 并使用 安装后pip
,shell 命令 ( foobar
) 将按预期工作。但是,%load_ext foobar_magic
在 Jupyter Notebook 中执行失败并显示:
根据文档:
你可以把你的扩展模块放在你想要的任何地方,只要它们可以被 Python 的标准导入机制导入。
在同一个笔记本下,我已经验证了这一点!foobar
并且import foobar
两者都有效。我怎样才能foobar_magic
被发现呢?
而且,虽然我还没到那里,但我猜入口点的后缀也是错误的。实际上,我在 之后指定的函数:
将不带参数调用,但该函数load_ipython_extension()
需要一个 IPython 实例。
所以我完全迷失了方向,找不到任何部署 IPython Notebook 扩展的相关文档。
编辑 1. %load_ext foobar.magic
出乎意料地起作用,而且魔法%foobar
不会抱怨这些论点。我不明白为什么,为什么它是%foobar
而不是%foobar_magic
像声明的那样。
编辑 2.这些foobar_magic = ...
东西被忽略或无用。抑制它对 没有任何影响%load_ext foobar.magic
。我认为后一种调用可能没问题。但是不明白发生了什么有点烦人。
nltk - 您可以通过 Poetry 下载 NLTK 数据吗?
我正在构建一个同时使用 NLTK 和 Spacy 的应用程序,并通过 Poetry 管理依赖项。我可以通过将此行添加到我的pyproject.toml
下面来下载 Spacy 数据[tool.poetry.dependencies]
是否可以对 NLTK 数据做类似的事情?我宁愿将其全部指定在一个地方,而不是将其作为某些设置脚本的一部分下载
python - 使用 pip 或诗歌时 errno 9 错误的文件描述符
有一次我尝试用 pip 安装 pygame,但没有找到 pip。
当我做“ py pip install pygame ”
所以我尝试重新安装 python 4 次,并尝试了几乎所有可能的安装方式,但它不起作用。所以我尝试手动安装 pip,我尝试了所有可能的方法但有同样的错误:
我试过很多次。
所以在那之后我尝试通过pycharm安装,当我尝试安装它时显示“没有包安装工具,安装”,当我点击安装时,它显示相同的错误。
在此之后,我尝试使用诗歌,但当我这样做poetry install win10toast
时显示:
请帮忙,我所做的一切都失败了,我真的需要它,在 repl.it 上编码真的很难。
python - extras_require 与阅读文档和诗歌
我使用诗歌来构建带有 cython 扩展的包,因此启用了安装包标志。我想通过 readthedocs 托管文档。诗歌使用build.py
文件setup.py
通过poetry build
命令生成。但是 readthedocs 不支持build.py
,所以我提供setup.py
了以下内容:
为了摆脱requirements.txt
docs 文件夹中的文件,我想extras_require
在 setup 中添加参数,所以最后一行setup.py
:
阅读文档调用/<path>/envs/latest/bin/python -m pip install --upgrade --upgrade-strategy eager --no-cache-dir .[docs]
警告:不提供额外的“文档”docs/conf.py
并且从失败导入 toml
如果我添加额外内容pyproject.toml
:
警告消失但 rtd 仍然无法导入 toml。
我的.readthedocs.yml
:
python - 用诗歌运行一个包 pytest
我是诗歌新手,想用 pytest 设置它。我在以下设置中有一个包 mylib
在 test_functions 我有
但是,当我跑步时
它抱怨mylib
不被包括在内。我可以跑
但这会使我的 python 环境与 mylib 混淆。我也想将该环境用于其他软件包。
我的问题是:使用诗歌和 pytest 的正确方法是什么?
我的底层 python 环境是一个干净的 pyenv python 3.8。使用 pyproject.toml 我为 mylib 创建了一个基于项目的虚拟环境。
python-poetry - 我正在将 Poetry 用于 python 包依赖
我在我的项目中使用诗歌。但是我在导入redis包的时候遇到了导入模块错误。
当我从 pip 安装 redis 包时,安装成功,导入模块也成功。
但是诗歌不能导入redis模块。
我能做些什么来解决这个问题?有没有人遇到过同样的问题?
python - 运行诗歌失败,出现 /usr/bin/env: 'python': No such file or directory
我刚刚使用以下安装脚本安装了诗歌
但是,当我执行诗歌时,它失败并出现以下错误
我最近升级到 ubuntu 20.04,这是升级问题还是诗歌问题?