This is the website for an older EuroPython. Looking for the latest EuroPython? Click here!
Skip to main content

An unbiased evaluation of environment management and packaging tools

Level:
intermediate
Room:
terrace 2a
Start:
Duration:
45 minutes

Abstract

Python packaging is quickly evolving and new tools pop up on a regular basis. Lots of talks and posts on packaging exist but none of them give a structured, unbiased overview of the available tools.

This talk will shed light on the jungle of packaging and environment management tools, comparing them on a basis of predefined features.

TalkSoftware Engineering & Architecture

Description

Python packaging has come a long way in the last years. The landscape is evolving quickly and new tools pop up on a regular basis. Lots of talks and posts on packaging exist but none of them give a structured, unbiased overview of the available tools.

This talk will shed light on the jungle of packaging and environment management tools, comparing them on a basis of predefined features.

We will categorize tools using the following categories:

  • Python version management
  • Environment management
  • Package management
  • Package building
  • Package publishing

A lot of tools exist, including: pyenv, pip, poetry, hatch, flit, and many more. We will categorize all of them and discuss some in more detail.

Most importantly, we will evaluate the tools on the basis of features that are important for developers like:

  • Does the tool manage dependencies?
  • Can it manage Python installations?
  • Does it have a clean build/publish flow?
  • Does it allow for plugins?
  • Does it support important PEPs, e.g. PEP 660, PEP 621, PEP 582?

This talk is intended for developers who

  • Have used packaging and want to get to know new tools
  • Want to have an overview of existing tools and their capabilities

The speaker

Anna-Lena Popkes

Anna-Lena Popkes

I'm Anna-Lena, a machine learning engineer living in Bonn, Germany. I'm very passionate about learning and love to share my knowledge with other people. Besides machine learning I love teaching Python and have been a regular guest on PyCon events and podcasts.


← Back to schedule