Pip 23.1 Released - Massive improvement to backtracking

This page summarizes the projects mentioned and recommended in the original post on /r/Python

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. pip

    The Python package installer

    Another good benchmark to trying to resolve apache-airflow[all]==1.10.13 using the state of PyPi on 2020-12-02, I give instructions here on how to reproduce that workflow: https://github.com/pypa/pip/issues/11836. Including a benchmark how how many extra packages your resolver should visit.

  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. resolvelib

    Resolve abstract dependencies into concrete ones

    Pip separates out the resolution logic into a library called resolvelib. It had been discovered that there was a logical error under certain circumstances, and also there was a known better backtracking technique it could employ called backjumping. Both of these were recently fixed and implemented in resolvelib, which were then vendored in to Pip 23.1.

  4. mixology

    A generic dependency-resolution library written in pure Python

    I was looking into this recently, but I'm not an expert. Poetry uses a library called mixology that implements a dependency resolution algorithm called PubGrub. There's a nice explainer here that touches on how PubGrub handles backtracking.

  5. WinPython

    A free Python-distribution for Windows platform, including prebuilt packages for Scientific Python.

    Feel free to share the resolver you wrote and we can test it on real world scenarios that are very difficult, here's a fun one that I remember: https://github.com/winpython/winpython/blob/master/Qt5_requirements64.txt

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

  • PEP 486 – Make the Python Launcher aware of virtual environments (2015)

    3 projects | news.ycombinator.com | 19 Feb 2025
  • Venvstacks: Virtual Environment Stacks for Python

    2 projects | news.ycombinator.com | 3 Nov 2024
  • PEP 760: No more bare excepts

    3 projects | news.ycombinator.com | 9 Oct 2024
  • Things I've learned serving on the board of the Python Software Foundation

    2 projects | news.ycombinator.com | 24 Sep 2024
  • Rye and Uv: August Is Harvest Season for Python Packaging

    5 projects | news.ycombinator.com | 21 Aug 2024

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