我的Python项目中有以下结构:
\n\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80pyproject.toml\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80mypackage\n \xe2\x94\x82\n \xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80lib\n \xe2\x94\x82 localdep-0.2.0-py3-none-any.whl\n \xe2\x94\x82 localdep-0.2.0.tar.gz\n \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80service\n app.py\n home.py\n modules.py\nRun Code Online (Sandbox Code Playgroud)\n\n我需要mypackage使用诗歌和本地依赖项进行构建localdep,以便mypackage/lib/localdep-0.2.0...能够mypackage仅使用简单的pip install mypackage-0.1.0.tar.gz命令进行安装,而无需任何其他文件。我尝试使用pathandfile说明符,pyproject.toml但不断收到以下错误:
\n\n\n错误:找不到满足 localdep 要求的版本(来自 mypackage==0.1.0)(来自版本:无)
\n
我的当前版本pyproject.toml:
[build-system]\nrequires = [ "poetry>=0.12",]\nbuild-backend = "poetry.masonry.api"\n\n[tool.poetry]\nname = "myproject"\nversion = "0.1.0"\ndescription = "Simple demo project."\nauthors = ["Some Author"]\nlicense = "MPL 2.0"\n\n[tool.poetry.dependencies]\npython = "3.7.3"\nlocaldep = {file = "mypackage/lib/localdep-0.2.0-py3-none-any.whl"}\nRun Code Online (Sandbox Code Playgroud)\n\n有谁知道如何传递本地依赖项,pyproject.toml以便poetry build能够以正确的方式打包它?
我有alpine:edge作为基本图像,并想在其中使用诗歌。我正在尝试像这样安装它:
\n\nRUN curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python\nRUN source $HOME/.poetry/env\nRun Code Online (Sandbox Code Playgroud)\n\n脚本运行没有错误,但是当我尝试实际使用它时,bash 说它没有安装:
\n\nStep 16/18 : RUN poetry install --no-dev\n ---> Running in 38ce454369cb\n/bin/sh: poetry: not found\nRun Code Online (Sandbox Code Playgroud)\n\n什么可能导致此问题?
\n\nUPD: env 文件似乎有问题:
\n\n~/.poetry # source env\n/bin/sh: /usr/bin/env: line 1: ELF: not found\n/bin/sh: /usr/bin/env: line 2: \xef\xbf\xbd: not found\n/bin/sh: /usr/bin/env: line 3: \xef\xbf\xbd: not found\n/bin/sh: /usr/bin/env: \xef\xbf\xbd\n : not found\n/bin/sh: /usr/bin/env: \xef\xbf\xbd\xef\xbf\xbd: not found\n/bin/sh: /usr/bin/env: \xef\xbf\xbde\xef\xbf\xbdmgUa: not found\n/bin/sh: /usr/bin/env: M\xef\xbf\xbdZ\xef\xbf\xbd\xef\xbf\xbd!9!di9W\xdb\x93\xc5\xb9\xef\xbf\xbd@9\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbdo\xef\xbf\xbd!\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd7e\xef\xbf\xbd\n \xef\xbf\xbd\xdd\xa3k\xef\xbf\xbd\xef\xbf\xbd: not found\n/bin/sh: /usr/bin/env: \xef\xbf\xbd\n \xef\xbf\xbdB\xef\xbf\xbd\xef\xbf\xbd\n …Run Code Online (Sandbox Code Playgroud) 我已将 black 和 flake8 加载到诗歌虚拟环境中。我想将默认线长度更改为黑色或 flake8,以便他们同意。做这个的最好方式是什么?
我正在按照以下链接在我的系统上安装 RASA:https : //github.com/RasaHQ/rasa 但不幸的是,在尝试安装依赖项或以下任何用 Makefile 编写的诗歌命令时,
$poetry run
$poetry install
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
虚拟环境设置似乎存在一些问题,但不知道如何解决。以下是堆栈跟踪:
$ make install
poetry run python -m pip install -U 'pip<20'
The virtual environment found in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6 seems to be broken.
Recreating virtualenv rasa-LHgLSZoI-py3.6 in /home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6
[CalledProcessError]
Command '['/home/kamaldeep/.cache/pypoetry/virtualenvs/rasa-LHgLSZoI-py3.6/bin/python', '-Im', 'ensurepip', '--upgrade', '--default-pip']' returned non-zero exit status 1.
Makefile:43: recipe for target 'install' failed
make: *** [install] Error 1
Run Code Online (Sandbox Code Playgroud) 我正在构建一个同时使用 NLTK 和 Spacy 的应用程序,并通过 Poetry 管理依赖项。我可以通过将此行添加到我的pyproject.toml下面来下载 Spacy 数据[tool.poetry.dependencies]
en_core_web_sm = { url = "https://github.com/explosion/spacy-models/releases/download/en_core_web_sm-2.2.5/en_core_web_sm-2.2.5.tar.gz" }
Run Code Online (Sandbox Code Playgroud)
是否可以对 NLTK 数据执行类似的操作?我宁愿将其全部指定在一个地方,而不是将其作为某些安装脚本的一部分下载
到目前为止,我一直使用 conda 作为虚拟环境和依赖项管理。但是,将我的 environment.yml 文件从我的开发机器传输到生产服务器时,有些东西无法按预期工作。现在,我想研究替代方案。诗歌看起来不错,尤其是因为
诗歌还维护一个锁定文件,它比 pipenv 有好处,因为它跟踪哪些包是子依赖项。( https://realpython.com/effective-python-environment/#poetry )
这可能会大大提高稳定性。但是,我正在从事科学性很强的项目(矩阵、数据科学、机器学习),因此在实践中我需要 scipy 堆栈(例如 numpy、pandas、scitkit-learn)。
Python 对于一些纯计算工作负载来说变得太慢了,所以 numpy 和 scipy 诞生了。[...] 它们是用 C 编写的,只是包装成一个 python 库。
编译这样的库会带来一系列挑战,因为它们(或多或少)必须在您的机器上编译以获得最大性能并与 glibc 等库正确链接。
Conda 是作为一种多合一的解决方案引入的,用于为科学界管理 Python 环境。
[...] 不是在您的机器上使用脆弱的库编译过程,而是预编译库,并在您请求时才下载。不幸的是,该解决方案附带了一个警告 - conda 不使用 PyPI,这是最流行的 Python 包索引。
(https://modelpredict.com/python-dependency-management-tools#fnref:conda-compiling-challenges)
据我所知,这甚至不符合 Conda 的标准,因为它做了相当多的优化以充分利用我的 CPU/GPU/numpy 架构。( https://jakevdp.github.io/blog/2016/08/25/conda-myths-and-misconceptions/#Myth-#6:-Now-that-pip-uses-wheels,-conda-is-no - 需要更长的时间)
https://numpy.org/install/本身建议使用 conda,但也说可以通过 pip 安装(而诗歌使用 pypi)
对于那些从个人喜好或阅读下面关于 conda 和 pip 之间的主要区别而知道他们更喜欢基于 pip/PyPI 的解决方案的用户,我们建议:
[...] 使用 Poetry 作为维护最良好的工具,它以与 conda 类似的方式提供依赖项解析器和环境管理功能。
我想获得诗歌设置的稳定性和 conda 设置的速度。
诗歌如何处理二进制依赖?它是否也像 conda …
我正在将 Poetry 与 Tox 结合起来以自动化构建和测试。然而,我正在从事的项目是私有的,我希望避免任何从事该项目的人意外地将其发布到 PyPi。我已经使用初始化了一个项目poetry init,我的假设是最终的设置不会产生一个可以在没有任何进一步设置的情况下发布的可行包。它是否正确?
我如何进一步配置诗歌,以便即使poetry publish将来有人意外运行该包也不会真正发布。
当激活诗歌 python shell 时,我在 bash 提示符中收到一个非常长的字符串:
(my-current-folder-pNzYm0GW-py3.8) (base) myusername@mycomputername>
Run Code Online (Sandbox Code Playgroud)
我希望它更短,也许像这样:
(py3.8) myusername@mycomputername>
Run Code Online (Sandbox Code Playgroud)
有谁知道这是怎么做到的吗?
(我猜这base来自于系统上也安装了 miniconda,我可以通过编辑我的 来修复它.bashrc)
我正在尝试设置Poetry以将包部署到我们内部的 Gitlab 包注册表。根据在线的其他来源,存储库 ID 应该是https://gitlab.com/api/v4/projects/<project id>/packages/pypi,但无论我尝试什么,Poetry 都会返回
[上传
错误] HTTP 错误 404:未找到
任何人得到这个工作?
curl -sSL https://raw.githubusercontent.com/python-poetry/poetry/master/get-poetry.py | python -几个月前,我在 mac 上使用安装了诗歌:
当我运行时,poetry self update -v我看到以下错误:
[RuntimeError]
Poetry was not installed with the recommended installer. Cannot update automatically.
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/clikit/console_application.py", line 131, in run
status_code = command.handle(parsed_args, io)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/clikit/api/command/command.py", line 120, in handle
status_code = self._do_handle(args, io)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/clikit/api/command/command.py", line 171, in _do_handle
return getattr(handler, handler_method)(args, io, self)
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/cleo/commands/command.py", line 92, in wrap_handle
return self.handle()
File "/Library/Frameworks/Python.framework/Versions/3.8/lib/python3.8/site-packages/poetry/console/commands/self/update.py", line 64, in handle
raise RuntimeError(
Run Code Online (Sandbox Code Playgroud)
自安装以来,此错误一直存在。我一直没有找到解决办法。如果有帮助,我安装了 …
python-poetry ×10
python ×6
anaconda ×1
conda ×1
docker ×1
flake8 ×1
gitlab ×1
nltk ×1
numpy ×1
pip ×1
pyenv ×1
python-3.x ×1
python-black ×1
rasa ×1