Replies: 3 comments
-
|
Just to keep track of the support landscape, lychee just added support for As for the "precedence/order issue", here is my benchmarking of existing tools:
|
Beta Was this translation helpful? Give feedback.
-
|
I implemented a "tool runner" in So now you can have a [tool.biome.formatter]
indentStyle = "space"
indentWidth = 4
[tool.biome.linter.rules.style]
useConst = "error"With an let greeting="hello"
let items = [1,2,3,4,5]
let total=items.reduce((sum, n) =>sum+n,0)
console.log(greeting,total)Then run Which produces a formatted and linted const greeting = "hello";
const items = [1, 2, 3, 4, 5];
const total = items.reduce((sum, n) => sum + n, 0);
console.log(greeting, total);Both the formatter config (spacing around operators, semicolons) and the linter rule ( This bridges the gap for Python projects that want to centralize all tool configuration in |
Beta Was this translation helpful? Give feedback.
-
|
I agree that it is helpful to centralise configuration for all tools used in the project. I think Vite+ is a success story for that in JS/TS world, which places all config into a single However, if we support multiple types of configuration in one tool, the config hell begins. Back in the day many JS/TS tools used to support including configs in It is hard to know which config is applied or where it is configured when multiple config locations are supported. What is their priority? Can multiple configs get merged? If so, how are they merged?
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Biome is a fantastic tool and with #8818 on the horizon, it starts to play nice with the Python ecosystem.
To integrate even more with Python projects, it would be cool to have
biomesource its configuration from a[tool.biome]section inpyproject.toml.Other non-Python tools are supporting this, probably to increase adoption of their own tools in the Python world. See:
[tool.ruff]: https://docs.astral.sh/ruff/configuration/#configuring-ruff (Rust)[tool.typos]: https://github.com/crate-ci/typos/blob/master/docs/reference.md (Rust)[tool.uv]: https://docs.astral.sh/uv/concepts/configuration-files/ (Rust)[tool.ty]: https://docs.astral.sh/ty/ (Rust)[tool.maturin]: https://www.maturin.rs/config (Rust)[tool.pyright]: https://github.com/microsoft/pyright/blob/main/docs/configuration.md (TypeScript)[tool.tombi]: https://tombi-toml.github.io/tombi/docs/configuration/ (Rust)[tool.rumdl]: https://github.com/rvben/rumdl (Rust)[tool.lychee]: Support forpyproject.toml(andcargo.toml) lycheeverse/lychee#1930 (Rust)Other tools are considering adding support:
taploconfiguration inpyproject.tomltamasfe/taplo#603 (Rust)[tool.actionlint]section ofpyproject.tomlrhysd/actionlint#623 (Go)[tool.shfmt]section ofpyproject.tomlmvdan/sh#1268 (Go)pyproject.tomlgitleaks/gitleaks#2066 (Go)Beta Was this translation helpful? Give feedback.
All reactions