You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/topics/03_code-formatting.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -33,7 +33,7 @@ We evaluated the leading options for automated code formatting:
33
33
-**Opinionatedness & Configuration:** Very High. Famously requires minimal configuration (`--line-length` is a common option). Aligns with the "Opinionated is better than impartial" philosophy.
34
34
-**Performance:** Good. Reasonably fast for typical file sizes and project sizes. Noticeably slower than Rust-based alternatives like :ruff-documentation:`Ruff` on larger codebases or when run very frequently.
35
35
-**OS Interoperability:** Excellent. Pure Python package, works reliably on all major operating systems.
36
-
-**Integration:** Excellent. Long-standing standard, strong integration with :pre-commit-documentation:`pre-commit`, :nox-documentation:`Nox`/:uv-documentation:`uv`, CI platforms, and almost all editors/IDEs.
36
+
-**Integration:** Excellent. Long-standing standard, strong integration with :pre-commit-documentation:`pre-commit`, :nox-documentation:`Nox`/[:term:`uv` run](uv-documentation), CI platforms, and almost all editors/IDEs.
37
37
-**Tool Count:** Moderate. Requires using two separate tools (`black`, `isort`) for the complete formatting task (code style + import sorting). Adds a small layer of management (dependencies, running both).
38
38
-**Maturity & Stability:** Very High. Mature, stable, widely used standard.
39
39
-**Community & Documentation:** Very High. Large, active community, extensive documentation.
@@ -79,7 +79,7 @@ We evaluated the leading options for automated code formatting:
79
79
-**Opinionatedness & Configuration:** Very High. Highly opinionated with minimal configuration, inheriting philosophy from :black-documentation:`Black`. Configuration is shared with the linter in `pyproject.toml` or `.ruff.toml`.
80
80
-**Performance:** Excellent. **Orders of magnitude faster** than all Python-based formatters (:black-documentation:`Black`, :isort-documentation:`isort`, :autopep8-documentation:`autopep8`, :yapf-documentation:`yapf`). This is a major practical advantage, especially for pre-commit hooks and large projects.
81
81
-**OS Interoperability:** Excellent. Rust binary, works natively and reliably across all major operating systems.
82
-
-**Integration:** Excellent and Growing Rapidly. Native support in :pre-commit-documentation:`pre-commit`, easily callable via CLI for :nox-documentation:`Nox`/:uv-documentation:`uv`, integrates into CI, rapidly gaining editor/IDE support due to its speed and dual formatting/linting capabilities.
82
+
-**Integration:** Excellent and Growing Rapidly. Native support in :pre-commit-documentation:`pre-commit`, easily callable via CLI for :nox-documentation:`Nox`/[:term:`uv` run](uv-documentation), integrates into CI, rapidly gaining editor/IDE support due to its speed and dual formatting/linting capabilities.
83
83
-**Tool Count:** Excellent. **Consolidates code formatting AND import sorting** into a single tool and command (`ruff format`).
84
84
-**Maturity & Stability:** High (Formatter is newer than Linter, but built on stable core). :ruff-documentation:`Ruff` as a project is very mature. The formatter feature itself is newer but built on the same highly performant core and rapidly stabilizing, considered production-ready by its authors.
85
85
-**Community & Documentation:** High (Exploding). Very active development, massive and rapidly growing user base, excellent and extensive documentation.
Copy file name to clipboardExpand all lines: docs/topics/04_code-linting.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -38,7 +38,7 @@ We evaluated the leading options for Python code linting and static analysis:
38
38
-**Configurable:** High. Configurable via `.flake8`, `setup.cfg`, or `pyproject.toml` (`[flake8]`). Default checks are standard, but many plugins require explicit configuration.
39
39
-**Performance:** Moderate. As a Python tool wrapping other Python tools, performance is acceptable for many projects but noticeably slower than Rust-based alternatives, potentially impacting editor feedback speed or pre-commit hook viability on large codebases.
40
40
-**OS Interoperability:** Excellent. Pure Python package, works reliably across Linux, macOS, and Windows.
41
-
-**Integration:** Excellent. A long-standing standard, deep integration across editors/IDEs, :pre-commit-documentation:`pre-commit` (official hook), :nox-documentation:`Nox`/:uv-documentation:`uv`, CI/CD platforms.
41
+
-**Integration:** Excellent. A long-standing standard, deep integration across editors/IDEs, :pre-commit-documentation:`pre-commit` (official hook), :nox-documentation:`Nox`/[:term:`uv` run](uv-documentation), CI/CD platforms.
42
42
-**Tool Count:** Moderate. It's a wrapper, so requires installing :flake8-documentation:`flake8` itself plus desired plugins. Simpler than installing PyFlakes, pycodestyle, etc. separately. Often used alongside a formatter.
43
43
-**Maturity & Stability:** Very High. Mature, stable, widely adopted for many years.
44
44
-**Community & Documentation:** Very High. Large, active community, extensive documentation for both base :flake8-documentation:`flake8` and its plugins.
@@ -91,7 +91,7 @@ We evaluated the leading options for Python code linting and static analysis:
91
91
-**Configurable:** High. Configurable via `.ruff.toml` or `pyproject.toml`. Powerful and flexible rule selection. Default set includes core checks, adding more rules (like Pylint conventions) is explicit.
92
92
-**Performance:** Excellent. **Orders of magnitude faster** than Python-based linters. Transformative for developer workflow feedback loops (real-time checks in editors, pre-commit speed) and CI times.
93
93
-**OS Interoperability:** Excellent. Rust binary, works natively and reliably across all major operating systems.
94
-
-**Integration:** Excellent. Rapidly gaining ecosystem integration. Native :pre-commit-documentation:`pre-commit` hook (highly recommended due to speed). Easily callable via CLI for :nox-documentation:`Nox`/:uv-documentation:`uv`, integrates into CI, strong and increasing editor/IDE support.
94
+
-**Integration:** Excellent. Rapidly gaining ecosystem integration. Native :pre-commit-documentation:`pre-commit` hook (highly recommended due to speed). Easily callable via CLI for :nox-documentation:`Nox`/[:term:`uv` run](uv-documentation), integrates into CI, strong and increasing editor/IDE support.
95
95
-**Tool Count:** Excellent. **Consolidates the functionality of multiple separate linters** into a single binary and configuration file. Also includes formatting.
96
96
-**Maturity & Stability:** Very High (Linter). :ruff-documentation:`Ruff` as a linter is mature, stable, and very widely adopted. The project has a massive and active community.
97
97
-**Community & Documentation:** Very High (Exploding). Very active development, massive and rapidly growing user base, excellent and extensive documentation.
-**Performance:** Excellent. As a Rust binary, running these checks is very fast (similar to linting performance).
95
95
-**OS Interoperability:** Excellent. Rust binary, works across OSs.
96
-
-**Integration:** Excellent. Seamlessly integrated into :ruff-documentation:`Ruff`'s check command, leveraging its integrations (:pre-commit-documentation:`pre-commit`, :nox-documentation:`Nox`/:uv-documentation:`uv`, CI). Speed makes it ideal for fast checks.
96
+
-**Integration:** Excellent. Seamlessly integrated into :ruff-documentation:`Ruff`'s check command, leveraging its integrations (:pre-commit-documentation:`pre-commit`, :nox-documentation:`Nox`/[:term:`uv` run](uv-documentation), CI). Speed makes it ideal for fast checks.
97
97
-**Maturity & Stability:** High (:ruff-documentation:`Ruff`), Low (Security Rules). The :ruff-documentation:`Ruff` platform is mature. The _security rule set_ is still very new and under active development, not comprehensive enough for full standalone security code analysis.
98
98
-**Community & Documentation:** High (:ruff-documentation:`Ruff`), Moderate (Security Rules). Benefits from the large :ruff-documentation:`Ruff` community, but specific documentation and community experience with _just_ the security rules are still building.
0 commit comments