The State of Python Packaging in 2026: A Comprehensive Guide

If you’ve ever felt overwhelmed by Python’s packaging ecosystem, you’re experiencing what the legendary XKCD comic #927 perfectly captured. The comic shows a familiar scenario: fourteen competing standards exist, someone declares “this is ridiculous, we need one universal standard,” and the final panel reveals there are now fifteen competing standards. For nearly two decades, Python packaging seemed trapped in exactly this recursive loop. We transitioned from distutils to setuptools, introduced pip for installation and virtualenv for isolation, experimented with pipenv for lock files, embraced poetry for deterministic resolution, and explored pdm for standards compliance. Each tool promised to unify workflows around package installation, dependency resolution, and distribution. Each contributed valuable concepts like deterministic builds and standardized metadata, yet often created distinct, incompatible silos. ...

January 29, 2026 · 61 min · RepoForge

How to Install Private Python Packages with uv

This tutorial shows you how to configure uv to install Python packages from a private PyPI repository on RepoForge.io. What is uv? uv is an extremely fast Python package installer and resolver, written in Rust by Astral (the creators of Ruff). It’s a drop-in replacement for pip and pip-tools that’s 10-100x faster. Prerequisites A RepoForge.io account Your RepoForge repository URL (found under Show me how to publish packages) An access token with Python read permissions A package already published to your RepoForge repository Installing uv Install uv using the official installer: ...

January 28, 2026 · 2 min · RepoForge

How to Publish Python Packages to a Private PyPI from GitLab CI/CD

This tutorial shows how to automatically build and publish Python packages to a private repository using GitLab CI/CD. By the end, every tagged commit will trigger a pipeline that packages your code and uploads it to RepoForge.io. Prerequisites A RepoForge.io account (free trial works for this tutorial) A GitLab account A recent version of Python 3 Basic familiarity with git Step 1 — Create the folder structure Create an empty folder for your project and add a subfolder for your package code: ...

January 28, 2026 · 5 min · RepoForge

How to Publish Python Packages to a Private Repository with Poetry

This tutorial shows you how to publish Python packages built with Poetry to a private PyPI repository on RepoForge.io. Prerequisites A RepoForge.io account Your RepoForge repository URL (found under Show me how to publish packages) An access token with Python write permissions Installing Poetry Install Poetry using the official installer: curl -sSL https://install.python-poetry.org | python3 - Verify the installation: poetry --version Creating a Package in Poetry Now that poetry is installed you can create a poetry project like this: ...

January 28, 2026 · 2 min · RepoForge