Repolode
astral-sh

astral-sh/ruff

Сверхбыстрый линтер и форматтер Python-кода на Rust: более 900 правил линтинга и форматирование, совместимое с Black.

Open source альтернатива:BlackFlake8

Звёзды
50,197
Форки
2,534
Открытые issues
2,220
Последний коммит
4 часа назад

Что это?

Ruff — линтер и форматтер Python-кода на Rust. Он проверяет код на ошибки, нарушения стиля и устаревшие конструкции и может автоматически исправлять многие из них. Ruff призван заменить набор инструментов вроде Flake8 с плагинами, Black, isort, pydocstyle и pyupgrade: они запускаются одной командой и используют общую конфигурацию.

В линтере есть более 900 правил, многие из которых повторяют функциональность популярных плагинов Flake8, реализованных непосредственно на Rust. Правила включаются через pyproject.toml, ruff.toml или .ruff.toml; стандартный набор работает и без конфигурации. Встроенное кэширование пропускает файлы, не изменившиеся с прошлого запуска.

Ruff можно установить через pip, uv, pipx, Homebrew и Conda. Для него доступны интеграции с редакторами, в том числе расширение для VS Code, хуки pre-commit и GitHub Action. Конфигурация поддерживает иерархический поиск, что удобно для монорепозиториев.

Ключевые возможности

  • 01Проверяет Python-код по более чем 900 правилам, многие из которых повторяют функциональность плагинов Flake8
  • 02Форматирует код с помощью форматтера, совместимого с Black
  • 03Автоматически исправляет многие найденные проблемы с помощью --fix
  • 04Кэширует результаты и пропускает неизменившиеся файлы
  • 05Настраивается через pyproject.toml или ruff.toml и поддерживает иерархический поиск конфигурации

Сценарии использования

  • Замена Flake8, Black и isort в Python-проекте одним инструментом
  • Запуск проверок линтинга и форматирования как хука pre-commit или в CI
  • Быстрая проверка большого монорепозитория с конфигурацией для отдельных каталогов
  • Получение подсказок и автоматических исправлений в VS Code и других редакторах

Быстрый старт

  1. 1

    Установите Ruff с помощью uv (рекомендуется)

    uv tool install ruff@latest
  2. 2

    Установите Ruff с помощью pip

    pip install ruff
  3. 3

    Проверьте все файлы в текущем каталоге с помощью линтера

    ruff check
  4. 4

    Отформатируйте все файлы в текущем каталоге

    ruff format

Темы

Частые вопросы

Что такое ruff?
Сверхбыстрый линтер и форматтер Python-кода на Rust: более 900 правил линтинга и форматирование, совместимое с Black. Ruff — линтер и форматтер Python-кода на Rust. Он проверяет код на ошибки, нарушения стиля и устаревшие конструкции и может автоматически исправлять многие из них. Ruff призван заменить набор инструментов вроде Flake8 с плагинами, Black, isort, pydocstyle и pyupgrade: они запускаются одной командой и используют общую конфигурацию.
ruff можно использовать бесплатно? Какая у него лицензия?
ruff распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
ruff всё ещё поддерживается?
Активно поддерживается. Последний коммит в ruff — 21 окт. 2026 г..
Для чего можно использовать ruff?
Замена Flake8, Black и isort в Python-проекте одним инструментом Запуск проверок линтинга и форматирования как хука pre-commit или в CI Быстрая проверка большого монорепозитория с конфигурацией для отдельных каталогов Получение подсказок и автоматических исправлений в VS Code и других редакторах
Как установить ruff?
Установите Ruff с помощью uv (рекомендуется): uv tool install ruff@latest Установите Ruff с помощью pip: pip install ruff Проверьте все файлы в текущем каталоге с помощью линтера: ruff check Отформатируйте все файлы в текущем каталоге: ruff format
Где скачать ruff?
Исходный код и инструкции по установке — на GitHub: https://github.com/astral-sh/ruff

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты