问题标签 [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-3.x - 从 pyproject.toml 文件更新包版本的最佳方法
我的工作流程在包的init .py 中嵌入了一个__version__
包变量。当使用(或类似的)诗歌更新包版本时,我希望我的嵌入变量也更新。poetry version patch
__version__
我目前使用这样的预提交钩子(git):
有没有更好的方法我错过了,因为那个钩子看起来有点“笨拙”。
python - 使用 pyproject.toml 文件从私人仓库安装 python 诗歌
嗨,我正在尝试使用诗歌来安装包含我的私人仓库的软件包,但它似乎不起作用。知道做错了什么吗?
我收到错误消息因为 package1 依赖于 package2 不匹配任何版本,版本解决失败但能够使用我私人仓库中的 pip 安装包
python - 没有使用 tar.gz 的 pip 安装名为“Cython”的模块
我使用 Poetry 为我的示例包 ( https://github.com/iamishalkin/cyrtd ) 构建 tar.gz 和 whl 文件,然后尝试在 pipenv 环境中安装包。tar.gz 安装失败,这是一段日志:
Cython 已安装并可从虚拟解释器调用。即使在日志中写入,也满足了对 cython 的要求。奇怪的是——几个月前一切正常。我还尝试了 conda venv,升级了 cython 和诗歌,没有任何帮助。还尝试了与 Cython 的 setup_requires 的弱相关解决方法?- 仍然没有运气
UPD:我在这里找到了一些肮脏的解决方法:https ://luminousmen.com/post/resolve-cython-and-numpy-dependencies
这个想法是添加
在 Cython.Build 导入之前
在此之后,我得到这些日志:
仍在寻找更好的解决方案
UPD2: 主要文件内容:build.py:
python - 如何使用诗歌开始一个新的 Django 项目?
如何使用诗歌开始一个新的 Django 项目?
使用 virtualenv 很简单:
什么将等同于使用诗歌?
python-poetry - Python Poetry 与 scikit-umfpack 明显不兼容
我写了一个依赖 scikit-umfpack 的包,刚刚发现了 Python Poetry。
我正在尝试为诗歌设置 .toml 文件来管理 umfpack。
在输入poetry add的时候,建议使用scikit-umfpack 0.3.2版本,所以好像poetry知道。
但是,如果我在 .toml 文件中使用以下依赖项:
然后我在诗歌更新时得到以下输出:
有没有人成功地将 scikit-umfpack 与 Python 诗歌一起使用,如果是这样,如何?
python - 如何用诗歌管理可编辑的共享库?
我有 2 个 python 项目 A 和 B
- A 取决于 B
- B 是其他项目使用的共享库
- B 需要很长时间来构建和安装
以前,当我必须在新计算机上设置我的开发环境时,工作流程是:
- 创建虚拟环境
- git克隆A和B
- 运行 B 的设置开发
- 运行 A 的设置开发
现在我可以编辑 A 和 B 并将更改推送到 git,而不必每次都在 A 和 B 上重新运行设置。
现在,我想将诗歌整合到我的工作流程中。理想情况下,我希望能够git clone A
运行poetry install A
并让它镜像我的上述设置,但是我在通过 A 的设置安装 B 时遇到问题,同时仍然保持 B 可编辑。基于这个线程,似乎不可能在两个项目之间共享 venv。
我的权宜之计是:
- git克隆A和B
- 诗歌安装B
- 编辑 A 的 pyproject.toml 指向我手动安装的 B 目录(
B = {path = "../B/"}
) - 诗装A
我真的不喜欢这个工作流程,因为 A 的 pyproject.toml 现在只能在我的计算机上运行。我查看了问题线程和诗歌文档,但找不到处理这种情况的解决方案。非常感谢任何和所有建议。
A的pyproject.toml
编辑:我意识到如果我在 A 之前安装 B 并在安装 AI 之前编辑 pyproject 可以防止 2 安装 B
python - Python 诗歌 - 如何安装 64 位虚拟环境?
poetry install
第一次运行时如何强制 Poetry 创建 64 位虚拟环境?
我确定我遗漏了一些简单的东西,但是我在文档中找不到任何东西,或者在 Poetry 本身的命令行帮助中找不到任何东西。
python - 如何使用 docker 和 monorepo 组织共享库
我有的
我有 2 个共享一些代码的 python 应用程序,足以让我尝试将共享部分隔离到模块/包/库中(我故意使术语含糊不清,因为我不确定解决方案是什么) . 我所有的代码都在一个 monorepo 中,因为我希望克服管理比团队成员更多的 repo 的一些烦恼。
目前我的文件布局如下:
两者都appA
使用appB
and lib1
(lib2
它们本质上是抽象共享数据库的数据模型)。appA
是一个有几个组件的webapp,并不是所有的都是python。它被部署为一个涉及一堆容器的 docker 堆栈。我用诗歌管理我的依赖关系,以确保可重现的构建等......每个python组件(appA
,appB
......)都有自己的pyproject.toml
文件,虚拟环境等......
appB
是单独部署的。
如果有什么不同的话,所有的开发都在 linux 上。
我需要的
我正在寻找一种干净的方式来处理库:
- 的开发
appA
是在本地docker-compose
设置中完成的。后端在文件更改时自动重新加载(使用 docker 卷),我希望它也发生在库中的更改上。 - 开发
appB
更简单,但正在转移到 docker,所以问题是一样的。
我试过的
- 我最初的“解决方案”是将 libs 文件夹复制到一个临时位置以便在
appA
. 它适用于导入,但是一旦我想更改库代码(这仍然很常见),它就会很混乱,因为我需要更改原始文件,复制,重建容器。 - 我尝试将库符号链接到后端的 docker 环境中,但符号链接似乎不适用于 docker(它似乎没有跟随链接,因此文件不会最终出现在 docker 映像中,除非我基本上复制了docker build 上下文中的文件,这违背了链接的目的。)
- 我已经尝试将每个库打包到一个 python 包中,并通过
poetry add ../../libs/lib1
它在 docker 中安装它们,因为路径不匹配,然后我回到了符号链接问题。
我确信有一种干净的方法可以做到这一点,但我无法弄清楚。我知道我可以将 repo 分解成更小的 repo 并安装依赖项,但是开发仍然会在 docker 内部引起问题,因为每次更改 lib 文件时我仍然需要重建容器,所以我宁愿保留 monorepo。
python-poetry - 'modin' 的 ModuleNotFoundError 即使它是由诗歌安装的
在线import modin.pandas as modin_pd
我得到ModuleNotFoundError: No module named 'modin'
。我正在使用诗歌和 JupyterLab。如果在我输入的单元格中!poetry add modin
,我会ValueError
说Package modin is already present
。
所以它无法安装modin
,因为它已经安装但它也无法导入它。我缺少任何明显的解决方案吗?
pip freeze
命令也显示modin
已安装。我也尝试通过安装它,pip install
但绝对没有让我最终导入这个模块。