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

  Рет қаралды 307

PyCon AU

PyCon AU

Күн бұрын

(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/py...
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...
Produced by Next Day Video Australia: nextdayvideo.c...
Sun Nov 24 11:55:00 2024 at Door 12 / Goldfields Theatre

Пікірлер
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН
人是不能做到吗?#火影忍者 #家人  #佐助
00:20
火影忍者一家
Рет қаралды 20 МЛН
The Anatomy of Python Packages and pyproject.toml
19:32
theurbanpenguin
Рет қаралды 1,2 М.
Microservices are Technical Debt
31:59
NeetCodeIO
Рет қаралды 688 М.
All Rust features explained
21:30
Let's Get Rusty
Рет қаралды 328 М.