So much depends upon... a python app's dependencies
summary
Presents concrete reasons to use a dependency manager: reproducible installs, automatic resolution of transitive conflicts, and easier upgrades; demos actual commands — pdm init, pdm add, pdm list, pdm update, plus pdm export requirements.txt and creating environments with python -m venv; shows pipx installation of pdm, explains pyproject.toml and pdm.lock, cites ~430,000 PyPI packages and the compatibility snag where FastAPI rejects Pydantic v2, and notes Pydantic v2 claims ~17x speedups.
AI-written summary · about
chapters (29)
- 0:00Introduction and welcome
- 1:10Poetry and simplicity in code
- 2:33What are dependencies?
- 6:03Requirements.txt and sub-dependencies
- 8:55Fear of updating dependencies
- 9:38Reproducibility with guacamole
- 10:41Pinning dependencies
- 12:07Why upgrade dependencies?
- 14:15Conflicts with upgrades
- 15:17Transitive dependencies explained
- 16:38Dependency management challenges
- 17:22Tools for dependency management
- 18:25Virtual environments
- 21:15Python version isolation
- 23:23Project setup from scratch
- 24:30Dependency managers and benefits
- 25:36PDM demo introduction
- 27:42PDM project initialization
- 28:48Installing dependencies with PDM
- 29:55Downgrading and conflicts
- 31:00Clean dependency removal
- 32:03Updating all dependencies
- 32:47Exporting requirements.txt
- 34:34PDM features wrap-up
- 34:55Installing PDM with pipx
- 36:23Lock files and project.toml
- 37:47Python packaging history
- 40:17Simplifying workflows
- 41:24Conclusion and Q&A
related talks
31mso much depends upon... your python app's dependencies
30mThe Evolutionary Saga of Python Packaging
24mPipenv: New Package Dependency Management System for Python
28mManaging Python Dependencies at scale
28mBeyond the Benchmark: Why the “Best” Python Dependency Manager Might Not Be Best for You
38mDependency Management: The Cause of—and Solution to—All Supply...
23mPackaging Python in 2021
30mBootstrapping Your Local Python Environment
