Pdm
PDM - Python Dependency Manager
I use pdm
to manage most of my Python projects. It's a fantastic tool for managing environments, dependencies, builds, and package publishing. PDM is similar in functionality to poetry
, which I have also used and liked. My main reasons for preferring pdm
over poetry
are:
- Scripts. It is so useful being able to define a
[tool.pdm.scripts]
section in mypyproject.toml
, and being able to script long/repeated things likealembic
commands or project execution scripts is so handy. - Dependency resolution
- I had almost no problems with Poetry. I've had no problems with PDM
- Does things in a more Pythonic way than
poetry
(reference)
Most of my notes and code snippets will assume pdm
is the dependency manager for a given project.