Ruff: Python linter and code formatter written in Rust

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

CodeRabbit: AI Code Reviews for Developers
Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.
coderabbit.ai
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. ruff

    An extremely fast Python linter and code formatter, written in Rust.

    Yes it's confirmed, you can listen to Charlie talk about here: https://youtu.be/byynvdS_7ac?si=JWeeD3uwXflWl5jo&t=1980

    Code Name is Red Knot: https://github.com/astral-sh/ruff/discussions/12143

  2. CodeRabbit

    CodeRabbit: AI Code Reviews for Developers. Revolutionize your code reviews with AI. CodeRabbit offers PR summaries, code walkthroughs, 1-click suggestions, and AST-based analysis. Boost productivity and code quality across all major languages with each PR.

    CodeRabbit logo
  3. tach

    A Python tool to visualize + enforce dependencies, using modular architecture 🌎 Open source 🐍 Installable via pip πŸ”§ Able to be adopted incrementally - ⚑ Implemented with no runtime impact ♾️ Interoperable with your existing systems πŸ¦€ Written in rust

    I'm very impressed by the recent developer experience improvements in the python ecosystem. Between ruff, uv, and https://github.com/gauge-sh/tach we'll be able to keep our django monolith going for a long time.

    Any opinions about the current state of the art type checker?

  4. black

    The uncompromising Python code formatter

    > I appreciate that Black annoyed everyone on our team about the same amount but in different ways.

    If it did affect people equally, it would be great. Unfortunately, spaces for indentation is an accessibility issue and the Black maintainers are hostile to making this configurable. Normally I am in agreement about minimising configurability, but this isn’t a matter of taste, it is making the Python ecosystem more difficult for some disabled people to participate in.

    https://github.com/psf/black/issues/2798

    Fortunately, Ruff makes this configurable, so you don’t have to choose between autoformatting and accessibility any more.

  5. setuptools

    Official project repository for the Setuptools build system

  6. packaging

    Core utilities for Python packages

  7. basedpyright

    pyright fork with various type checking improvements, improved vscode support and pylance features built into the language server

    Everyone is already recommending pyright, but I'll suggest checking the "based" community fork: https://github.com/detachhead/basedpyright

    Besides re-adding features that Microsoft makes exclusive to pylance, it tweaks a number of features that IMO makes pyright work better out the box:

    https://docs.basedpyright.com/latest/benefits-over-pyright/p...

  8. sccache

    Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.

    Compile times are still a bit much, but there are ways around it:

    - The insanely long times are only for the initial build. Further builds are incremental and more tolerable.

    - Compilation errors can be checked using 'cargo check'. It avoids the code generation step that's part of a build. I find myself doing it way more often than builds. So it's a time saver depending on how frequently you use it.

    - You can extend the incremental build mentioned above using sccache [1]. At the minimum, it allows you to share the build cache between all your local projects. So it saves time if your projects or other builds share a lot of common libraries (that's very common in Rust, though). But sccache can go further by using online build caches (for example, using S3) that can be shared between hosts. Finally, sccache also supports distributed builds if you have a few machines sitting idle. (This is like distcc with extra features).

    [1]: https://github.com/mozilla/sccache

  9. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  10. requests

    A simple, yet elegant, HTTP library.

    [2] https://github.com/psf/requests/pull/6667

  11. httpx

    A next generation HTTP client for Python. πŸ¦‹

    I've mostly ditched requests in favour of httpx these days. https://www.python-httpx.org

  12. pyright

    Static Type Checker for Python

    We have it already: https://github.com/microsoft/pyright

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • Uplink VS lapidary - a user suggested alternative

    2 projects | 16 Mar 2025
  • Show HN: Online Python Compiler with Libraries

    3 projects | news.ycombinator.com | 15 Mar 2025
  • HTTPX: Dump requests library in a junkyard πŸš€

    2 projects | dev.to | 22 Nov 2024
  • Are We PEP740 Yet?

    3 projects | news.ycombinator.com | 14 Nov 2024
  • Python Cloudflare Workers

    4 projects | news.ycombinator.com | 2 Apr 2024

Did you know that Python is
the 2nd most popular programming language
based on number of references?