07-04, 17:00–17:20 (Africa/Cairo), Main hall
Dependency management, virtual environments, publishing packages - all of these activities are a part of daily life when working with Python, but are too often high friction and fragile. Recent advancements make the situation much better.
The pyproject.toml
file is the new standard for declaring Python projects, and it tells a story. Evidence for its significance is the tomllib
built-in module introduced in Python 3.11. Many Python tools and linters adopted it as their primary configuration source. You should also use it - whether you publish a library, build an application or even write scripts/notebooks.
This talk will take us through the story of modern Python build systems and package managers. We'll learn where they come into play in the development life-cycle, their benefits, and their limitations.
Specifically, we will mention: Hatch, Poetry, PDM, Flit, and Rye.
We will cover dependency resolution and locking with .lock
files and how to utilize them for reproducible environments and CI environment caches, facilitating development across large teams.
We will migrate together a Python project from the legacy setup.py
file with many additional files into a single pyproject.toml
with Poetry.
Hebrew
Target audience –Developers
Jonathan is an experienced software and algorithm engineer who embraced Python 7 years ago for scientific computing in the Physics degree. Ever since, he has continued to love it and make a living with it in different projects and companies. Jonathan has worked with Python on computer vision, deep learning, quantum computing, and backend engineering projects.