The perfect setup? Not setup.py! Building packages the right way - Caleb Brown (Pycon AU 2024) @PyConAU
The perfect setup? Not setup.py! Building packages the right way - Caleb Brown (Pycon AU 2024)  @PyConAU
Uploaded December 2024 | Updated September 2026, 2 hours ago
(Caleb Brown) Everyone loves package management! Python's packaging systems have continued to evolve over the years. Specifications such as environment markers, custom backends, and static build configurations have been introduced. Additionally new package managers like Poetry and Hatch have emerged.

Yet despite the updates, many projects are still living in the 2010s - using a setup.py file to specify the build configuration for their package. setup.py is notoriously difficult to learn and a common vector for launching attacks during install.

This talk will discuss why it's time to move away from using setup.py and how to do it.

We will see how setup.py is used and abused - from downloading huge datasets (*cough* AI *cough*), modifying the system, and most critically how malicious payloads can be included to execute when setup.py is evaluated. Arbitrary code in setup.py makes security analysis harder and creates more work for PyPI administrators.

The talk will detail the new (as of 7 years ago) methods for describing build configurations in pyproject.toml, giving examples of how to use them. The examples will include how to achieve what once required dynamic code to include data like readme contents, version numbers and requirements. The limits of pyproject.toml will also be covered.

Finally, the talk will outline how moving away from setup.py improves the Python packaging universe, how it makes life easier for ensuring Python security, and what can be done to drive adoption of pyproject.toml.

pretalx.com/pycon-au-2024/talk/LALLKX

python, pycon, australia, programming, conference, technical, developers, panel, sessions, libraries, frameworks, community, sysadmins, students, education, data, science

Videos licensed as CC-BY-NC-SA 4.0

PyCon AU is the national conference for the Python programming community, bringing together professional, student and enthusiast developers, sysadmins and operations folk, students, educators, scientists, statisticians, and many others besides, all with a love for working with Python.

Licensed as CC BY-NC-SA - creativecommons.org/licenses/by-nc-sa/4.0

Produced by Next Day Video Australia: https://nextdayvideo.com.au

Sun Nov 24 11:55:00 2024 at Door 12 / Goldfields Theatre
The perfect setup? Not setup.py! Building packages the right way - Caleb Brown (Pycon AU 2024)Goodbye GIL: Exploring the Free-threaded mode in Python - Adarsh Divakaran (PyCon AU 2026)Data Morph: A Cautionary Tale of Summary Statistics - Stefanie Molin (Pycon AU 2024)Lets make a working implementation of async functions in Python 2.1, also, why you might want to usKeynote: Ethics in AI: Building Fair and Just Intelligence SystemsWhat Happened in Production?! Instrumenting with OpenTelemetry - David Bell (PyCon AU 2026)TOGA: Checklists and Safety Measures for Yoloing in Prod - Chelsea Finnie (PyCon AU 2026)Why Your ML Pipeline Needs an Agent (and How to Build One)The Continued Developer Evolution - Derek Bingham (PyCon AU 2025)Track Closing - Devoops - Yaakov, Aurynn Shaw, Justin Warren (Pycon AU 2024)Building Production-Ready MCP Servers: From Protocol to Patterns - Nitish (PyCon AU 2025)Found Font Family - Zain Afzal (PyCon AU 2025)
PyCon AU |

"The perfect setup? Not setup.py! Building packages the right way" - Caleb Brown (Pycon AU 2024)

SHARE TO X SHARE TO REDDIT SHARE TO FACEBOOK WALLPAPER