~/talk

Inside the Cheeseshop: How Python Packaging Works

Talkat PyCon 2018 · on Saturday, 2018-05-12· [python]
slides:none on file

Traces concrete history and engineered fixes: why setup.py executes arbitrary code and blocks reliable dependency discovery, why wheels vs eggs matter and how wheel’s spec made binary installs practical, why pip replaced easy_install and why twine is required for secure uploads, how PyPI migrated to Warehouse to scale and add HTTPS, and how PEPs 517/518 introduce pyproject.toml to separate build systems and make reproducible builds possible.

AI-written summary · about

  1. 0:00Intro
  2. 1:19Python Packaging In Just Five Easy Steps!
  3. 2:26Python Packaging So Easy A Caveman Could Do It
  4. 5:18Problem: How do I find Python code?
  5. 7:36Problem: Building takes too long
  6. 7:56Solution: Built Distributions
  7. 10:12Problem: How can I specify dependencies?
  8. 11:06Problem: How can we make installing easier?
  9. 12:13Problem: The name pyinstall is too long
  10. 12:47Problem: Application dependencies?
  11. 14:32Solution: The Wheel Distribution
  12. 18:58Solution: General care and maintenance
  13. 20:22Problem: Reproducible Environments
  14. 21:06Problem: setup.py executes arbitrary code
  15. 21:37Problem: The distutils/setuptools dance
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.