- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
Pip 支持 pyproject.toml
文件,但到目前为止,新模式的所有实际使用都需要一个 3rd 方工具来自动生成这些文件(例如,诗歌和 pip)。不像 setup.py
这已经是人类可写的,pyproject.toml
不是(还)。
来自 setuptools docs ,
[build-system]
requires = [
"setuptools >= 40.9.0",
"wheel",
]
build-backend = "setuptools.build_meta"
但是,此文件不包含包依赖项(如 PEP 621 中所述)。 Pip 支持使用
pyproject.toml
安装软件包但在
pyproject.toml
中,pep 没有指定如何编写包依赖项。用于官方构建系统
setuptools
.
pyproject.toml
中编写包依赖项?
pyproject.toml
,我的问题不同,因为我要求人工编写 pyproject.toml
.最佳答案
PEP 621
2020 年 12 月
有一个标准叫PEP621指定项目的元数据(包括依赖项)应如何在 pyproject.toml
中布局。文件。
2021 年 1 月
pdm seems to have added support for the PEP 621 notation .
2021 年 5 月
更多构建后端添加了对 PEP 621 的支持,例如:
pdm
flit
trampolim
enscons
my question differ because I ask for a human-written
pyproject.toml
pyproject.toml
文件是“人类可写的”(以及
setup.cfg
)。我会在这里给
setuptools一个答案和
poetry .
pyproject.toml
中。 ,有些人希望它在另一个文件中。
pyproject.toml
.你仍然必须写一个
setup.py
,或
setup.cfg
,或两者的结合。
setup.cfg
,以及
setup.py
可以很短:
import setuptools
setuptools.setup()
这样的
setup.cfg
看起来像这样:
[metadata]
name = Thing
version = 1.2.3
[options]
install_requires =
SomeLibrary ~= 2.2
packages = find:
有关依赖项的具体引用:
setup.py
文件完整,条件之一是
setup.cfg
文件和
pyproject.toml
文件存在并包含所有必要的信息。以下是
pyproject.toml
的示例这适用于 setuptools 构建后端:
[build-system]
build-backend = 'setuptools.build_meta'
requires = [
'setuptools >= 43.0.0',
]
最后还有
plans来自 setuptools 维护者,允许在
pyproject.toml
中写入配置(而不是
setup.cfg
或
setup.py
),但我们还没有(2020 年 10 月)。
pyproject.toml
中定义.
pip install
和
pip wheel
之类的命令可以让您走得更远)。
pyproject.toml
文件可以很简单:
[tool.poetry]
name = 'Thing'
version = '1.2.3'
[tool.poetry.dependencies]
python = '^3.6'
SomeLibrary = '~2.2'
[build-system]
requires = ['poetry-core~=1.0']
build-backend = 'poetry.core.masonry.api'
引用:
关于setuptools - 如何编写一个可以安装包的最小工作 pyproject.toml 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64150719/
我有一个 TOML 文档,其中某些键可能存在也可能不存在。例如。该文件是有效文件: foo = "bar" 但这也是有效的: foo = "bar" something = "else" 我现在正尝试
我正在使用 Dynaconf (3.1.2) 来处理我的 python 应用程序设置。 如果我在 settings.toml 和 .secrets.toml 中使用相同的 key ,则这些部分最后仅包
我正在使用 Dynaconf (3.1.2) 来处理我的 python 应用程序设置。 如果我在 settings.toml 和 .secrets.toml 中使用相同的 key ,则这些部分最后仅包
TOML said“TOML和YAML都强调人类的可读性,例如使人们更容易理解给定行目的的注释。TOML的不同之处在于将它们组合在一起,允许注释(与JSON不同),但保留了简单性(与YAML不同)。”
我正在尝试为 TOML 文档实现可链接的查询执行。 A Query是更改 TOML 文档并可能返回另一个 Query 的东西应在其自身之后执行的对象。 Query执行的获取前一个查询的结果(如果有的话
看着 toml repo ,我没有看到任何关于键命名约定的限制/建议 看起来大部分变量都是 lowercase但想知道 key 的最佳实践 - 命名约定是什么? 假设我想要一个名为 firstname
我想从 TOML 文件生成 JSON。 JSON 结构应该是这样的,在对象数组中包含对象数组: { "things": [ { "a": "thing1
背景 我正要尝试从GitHub下载的Python包,发现它没有setup.py ,所以我无法安装它 pip install -e 相反,该软件包具有 pyproject.toml 文件似乎具有与 s
获取以下 TOML 数据: [[items]] foo = 10 bar = 100 [[items]] foo = 12 bar = 144 还有下面的 rust 代码: use serde_der
“WSO IS 5.9.0”的新功能是 deployment.toml ,但我还没有找到配置选项,也没有找到如何从这个文件设置 xml 配置文件的方法。 例如,如果我想在 carbon.xml 中启用
“WSO IS 5.9.0”的新功能是 deployment.toml ,但我还没有找到配置选项,也没有找到如何从这个文件设置 xml 配置文件的方法。 例如,如果我想在 carbon.xml 中启用
从 toml 文件中读取的字符串值包含额外的引号: # Toml file string_key = "fdsafdsafdsfds" 代码: let cfg_file_content = g
我正在尝试读取 TOML 文件以创建一个结构,该结构包含具有关联值的枚举向量。这是示例代码: extern crate serde; #[macro_use] extern crate serde_d
我有共享公共(public)资源且无法同时执行的测试。这些测试因 cargo test 而失败,但适用于 RUST_TEST_THREADS=1 cargo test。 我可以修改测试以等待全局互斥锁
我使用以下方式安装了依赖项: go get github.com/BurntSushi/toml 我在与 main.go 相同的文件夹中创建了一个 toml 文件: . |-- cloud.toml
我有一个包含两个可执行文件的 Rust 项目: src └── bin ├── app.rs └── tool.rs tool 程序作为app 的子进程运行。 (需要进行分离,因为 t
背景 我目前正在编写一个绑定(bind) C 库的 crate ,我需要用户指定构建库的位置。以前,我见过 llvm-sys 的句柄crate 使用环境变量。但是,如果我经常使用它,每次我想运行一个项
所以我在 GitHub 存储库中有几个文件,我想设置一个自定义的 404 错误页面。当我搜索它时,它要求我在 netlify.toml 中插入一些东西。文件,它应该在我的根目录中(我认为这意味着存储库
Pip 支持 pyproject.toml文件,但到目前为止,新模式的所有实际使用都需要一个 3rd 方工具来自动生成这些文件(例如,诗歌和 pip)。不像 setup.py这已经是人类可写的,pyp
我希望有这样的东西:cargo install stopwatch 但在文档中找不到它。 查找包版本并手动将包添加到.toml: [dependencies] stopwatch="0.0.6" 感觉
我是一名优秀的程序员,十分优秀!