Python Package Management

Open-source Python projects categorized as Package Management

Top 13 Python Package Management Projects

Package Management
  • pip

    The Python package installer

  • Project mention: How to Create Virtual Environments in Python | dev.to | 2024-02-09

    Whenever you are working on a Python project that has external dependencies installed with pip, it is strongly recommended to first create a virtual environment.

  • pip-tools

    A set of tools to keep your pinned Python dependencies fresh.

  • Project mention: Pyenv – lets you easily switch between multiple versions of Python | news.ycombinator.com | 2024-03-25

    > Why is the "requirements.txt" file a stupid flat listing of all transitive dependencies with pinned versions? It makes it harder to change library versions even if there are no true conflicts.

    My friend, here is what you seek: https://github.com/jazzband/pip-tools

    requirements.txt is flat because it's really the output of `pip freeze`. It's supposed to completely and exactly rebuild the environment. Unfortunately it's far too flexible and people abuse it by putting in only direct dependencies etc.

    If you're writing packages, you don't need a requirements.txt at all, by the way. Package dependencies (only direct dependencies) live in pyproject.toml with the rest of the package config. requirements.txt (and pip tools) are only for when you want to freeze the whole environment, like for a server deployment.

  • Scout Monitoring

    Free Django app performance insights with Scout Monitoring. Get Scout setup in minutes, and let us sweat the small stuff. A couple lines in settings.py is all you need to start monitoring your apps. Sign up for our free tier today.

    Scout Monitoring logo
  • PDM

    A modern Python package and dependency manager supporting the latest PEP standards

  • Project mention: Implementing Quality Checks In Your Git Workflow With Hooks and pre-commit | dev.to | 2023-12-13

    # See https://pre-commit.com for more information # See https://pre-commit.com/hooks.html for more hooks repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v3.2.0 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: check-yaml - id: check-toml - id: check-added-large-files - repo: local hooks: - id: tox lint name: tox-validation entry: pdm run tox -e test,lint language: system files: ^src\/.+py$|pyproject.toml|^tests\/.+py$ types_or: [python, toml] pass_filenames: false - id: tox docs name: tox-docs language: system entry: pdm run tox -e docs types_or: [python, rst, toml] files: ^src\/.+py$|pyproject.toml|^docs\/ pass_filenames: false - repo: https://github.com/pdm-project/pdm rev: 2.10.4 # a PDM release exposing the hook hooks: - id: pdm-lock-check - repo: https://github.com/jumanjihouse/pre-commit-hooks rev: 3.0.0 hooks: - id: markdownlint

  • conda

    A system-level, binary package and environment manager running on all major operating systems and platforms.

  • Project mention: How to Create Virtual Environments in Python | dev.to | 2024-02-09

    Python's venv module is officially recommended for creating virtual environments since Python 3.5 comes packaged with your Python installation. While there still are additional older tools available, such as conda and virtualenv, if you are new to virtual environments, it is best to use venv now.

  • rez

    An integrated package configuration, build and deployment system for software

  • Project mention: Rez package manager alternatives | /r/vfx | 2023-07-07
  • conan-center-index

    Recipes for the ConanCenter repository

  • Project mention: The xz attack shell script | news.ycombinator.com | 2024-04-02

    Conan is a package manager for C/C++. See: https://conan.io/.

    The way it works is that you can provide "recipes", which are Python scripts, that automate the process of collecting source code (usually from a remote Git repository, or a remote source tarball), patching it, making its dependencies and transitive dependencies available, building for specific platform and architecture (via any number of build systems), then packaging up and serving binaries. There's a lot of complexity involved.

    Here are the two recipes I mentioned:

    libcurl: https://github.com/conan-io/conan-center-index/blob/master/r...

    OpenSSL v3: https://github.com/conan-io/conan-center-index/blob/master/r...

    Now, for the sake of this thread I want to highlight three things here:

    - Conan recipes are usually made by people unaffiliated with the libraries they're packaging;

    - The recipes are fully Turing-complete, do a lot of work, have their own bugs - therefore they should really be treated as software comonents themselves, for the purpose of OSS clearing/supply chain verification, except as far as I know, nobody does it;

    - The recipes can, and do, patch source code and build scripts. There's supporting infrastruture for this built into Conan, and of course one can also do it by brute-force search and replace. See e.g. ZLib recipe that does it both at the same time:

    https://github.com/conan-io/conan-center-index/blob/7b0ac710... -- `_patch_sources` does both direct search-and-replace in source files, and applies the patches from https://github.com/conan-io/conan-center-index/tree/master/r....

    Now, good luck keeping track of what's going on there.

  • termux-create-package

    Python script to create Termux packages easily.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • patchman

    Patchman is a Linux Patch Status Monitoring System

  • Project mention: System monitoring tool | /r/selfhosted | 2023-07-04
  • Curdling

    Concurrent package manager for Python

  • electric

    A fast, futuristic package manager for Windows. (by dimensionhq)

  • opi

    OBS Package Installer (CLI)

  • Project mention: Do you guys have installed codec trough zypper or opi? | /r/openSUSE | 2023-06-26

    This is incorrect. It also installs a set list of packages.

  • publishing-python-packages

    Examples and exercises for Publishing Python Packages from Manning Books 🐍 📦 ⬆️

  • pacwatch

    A pacman wrapper which helps you watch important package updates.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Python Package Management related posts

  • Pyenv – lets you easily switch between multiple versions of Python

    20 projects | news.ycombinator.com | 25 Mar 2024
  • How to Create Virtual Environments in Python

    4 projects | dev.to | 9 Feb 2024
  • Boring Python: dependency management (2022)

    3 projects | news.ycombinator.com | 4 Feb 2024
  • pip VS instld - a user suggested alternative

    2 projects | 9 Dec 2023
  • sudo pip install should be illegal

    1 project | /r/linuxmemes | 8 Dec 2023
  • Setting up Django in a Better Way in 5 Minutes and Understanding How It Works

    8 projects | dev.to | 13 Nov 2023
  • just-pip-tools: An example of managing python dependencies as layered lock files with just and pip-tools

    3 projects | /r/Python | 18 Oct 2023
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 4 Jun 2024
    Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality. Learn more →

Index

What are some of the best open-source Package Management projects in Python? This list will help you:

Project Stars
1 pip 9,322
2 pip-tools 7,510
3 PDM 6,747
4 conda 6,154
5 rez 910
6 conan-center-index 903
7 termux-create-package 402
8 patchman 340
9 Curdling 275
10 electric 240
11 opi 230
12 publishing-python-packages 76
13 pacwatch 25

Sponsored
Free Django app performance insights with Scout Monitoring
Get Scout setup in minutes, and let us sweat the small stuff. A couple lines in settings.py is all you need to start monitoring your apps. Sign up for our free tier today.
www.scoutapm.com