Hacker News Digest

Тег: #ruff

Постов: 2

Show HN: Pyscn – Python code quality analyzer for vibe coders (github.com)

pyscn — это интеллектуальный анализатор качества Python-кода с открытым исходным кодом. Он использует статический анализ для выявления проблем вроде неиспользуемых переменных, избыточных конструкций и нарушений стиля, помогая разработчикам писать более чистый и эффективный код.

Инструмент предлагает детальные отчёты с рекомендациями по исправлению, интеграцию в CI/CD и поддержку кастомных правил. Особенность — акцент на объяснении ошибок, что ускоряет обучение и улучшает практики кодинга.

by d-yoda • 05 октября 2025 г. в 13:22 • 109 points

ОригиналHN

#python#static-analysis#code-quality#ast#tree-edit-distance#pylint#ruff#ci-cd#github

Комментарии (64)

  • Обсуждение инструмента для анализа качества кода, который использует tree edit distance на AST для обнаружения структурных дубликатов, в отличие от текстовых сравнений
  • Споры о "vibe coders" (разработчиках, полагающихся на ИИ): одни считают их безразличными к качеству, другие защищают как прагматичный подход для определенных задач
  • Вопросы о технических деталях: влияние языков со статическим анализом, обобщаемость на другие языки через tree-sitter, сравнение с существующими инструментами (Pylint, Ruff)
  • Предложения по интеграции: как инструмент для инженеров, поддерживающих legacy-код, или как MCP-сервер для AI-агентов
  • Обсуждение будущего: роль инструментов анализа в эпоху ИИ-ассистентов и их потенциал для улучшения качества в доминирующих языках (Python/JS)

Code formatting comes to uv experimentally (pydevtools.com) 🔥 Горячее 💬 Длинная дискуссия

uv format — экспериментальная команда в uv для форматирования кода. Под капотом вызывает Ruff, но не требует отдельной установки.

Как начать

# форматировать текущий проект
uv format

# проверить, без изменений
uv format --check

# только нужные файлы
uv format src/ tests/

Передача аргументов Ruff

Всё, что идёт после --, уходит напрямую в Ruff:

# исключить файлы
uv format -- --exclude="*_pb2.py"

# задать длину строки
uv format -- --line-length 100

Пока функция флажком --preview, но уже позволяет обойтись без отдельного бинарника ruff.

by tanelpoder • 21 августа 2025 г. в 20:26 • 351 points

ОригиналHN

#uv#ruff#code-formatting#command-line#python

Комментарии (242)

  • Пользователи спорят: стоит ли встраивать форматирование (ruff format) в uv или это «feature-creep».
  • Одни рады единой команде uv format, упрощающей жизнь новичкам и командам; другие требуют оставить инструменты раздельными, как в UNIX-way.
  • Создатели подчеркивают: ruff и uv не сливаются; uv format лишь удобный алиас, аналогичный cargo fmt.