"The perfect setup? Not setup.py! Building packages the right way" - Caleb Brown (Pycon AU 2024)
(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. https://pretalx.com/pycon-au-2024/tal... 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 - http://creativecommons.org/licenses/b... Produced by Next Day Video Australia: https://nextdayvideo.com.au Sun Nov 24 11:55:00 2024 at Door 12 / Goldfields Theatre

Follow the Postgres brick road: a journey of testing against a real database server

Elana Hashman - The Black Magic of Python Wheels - PyCon 2019

Zig 2026: No-AI Policy, $670K Foundation, Left GitHub & Why Zig Isn’t 1.0 - Andrew Kelley Explains

Building the PERFECT Linux PC with Linus Torvalds

Neil Perry

Dependency management: the cause of—and solution to—all supply chain problems

Charlie Marsh: uv: An Extremely Fast Python Package Manager

Turing Award Winner: Disagreeing with Google, Postgres, Future Problems | Mike Stonebraker

Demystefying Setuptools Entry Points

No Boss, No Money: The Raw Reality of China’s Gen-Z Freelancers

Do ORMs make you happy OR Mad? / Petr Šmejkal

"Building an electricity market model from scratch" - Dr Jack Simpson (PyCon AU 2025)

MIT Just Revealed the AI Bubble's Fatal Flaw

Packaging Your Python Application: Wheels, Docker + More | Real Python Podcast #24

Unfortunately, You Need to Know What the Jevons Paradox is

Creator of C++: Bell Labs, Negative Overhead Abstraction, Mistakes | Bjarne Stroustrup

"Skill Issue" - Benno Rice (PyCon AU 2025)

Jfrog | Jfrog Artifactory | Jfrog Artifactory Tutorial | Artifactory Tutorial | Intellipaat

How to Package and Publish Python Code the Right Way

