skillfed

pdm-build-locked

pdm-build-locked is a pdm plugin to add locked packages as additional optional dependency groups to the distribution metadata

pdm-build-locked v0.3.7 1.0M downloads/30d#4,449 on PyPI
Permissive license MIT License Copyright (c) 2023 sigma67 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in… (full text in the JSON record) AGING released

What it is and what it does

pdm-build-locked is a plugin for the pdm package manager that modifies the build process to embed locked dependency information into a package's distribution metadata. Instead of publishing only the abstract dependency specifications from pyproject.toml, it adds the exact pinned versions from pdm's lock file as optional dependency groups, allowing downstream users to opt into reproducible installations with the same versions the publisher tested.

The plugin integrates directly with pdm's build system and requires only tomli as a runtime dependency. It targets modern Python versions (3.9 through 3.13) and is distributed as a wheel. The aging maintenance status suggests the plugin is stable but may not track rapid changes in pdm's plugin API closely.

Use it for:

  • Publishing a library with a reproducible 'locked' extra that pins all transitive dependencies for users who want identical environments.
  • Distributing an application package where end-users can install exact versions tested by the maintainer via an optional dependency group.
  • Creating a pdm-managed project that needs to share its lock file's precision with downstream consumers without manual version management.
  • Building packages where development and production dependency sets are both locked and published as separate optional groups.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

A pdm plugin that includes locked dependency versions as optional dependency groups in package distribution metadata, enabling reproducible installations from published packages.

Yes, if you use pdm as your build system and want to publish locked dependency information alongside your package. The low install friction and permissive license make adoption straightforward. However, the aging maintenance status (257 days since last release) means you should verify compatibility with your pdm version and be prepared for potential drift if pdm's plugin API evolves significantly.

Install

pdm-build-locked on PyPI

pip

pip install pdm-build-locked

uv

uv add pdm-build-locked

poetry

poetry add pdm-build-locked

Installing pdm-build-locked

Before you install

Low friction install with a single runtime dependency (tomli). Maintenance status is aging—last release was 257 days ago—so expect slower response to issues or breaking changes in the pdm ecosystem.

License in practice

MIT License permits unrestricted use, modification, and distribution with minimal restrictions, making it safe for both open-source and commercial projects.

Quickstart

pip install pdm-build-locked

# In pyproject.toml, pdm-build-locked hooks into pdm's build process
# to add locked dependencies as optional groups during package build

Requires pdm as the project's build/package manager; this is a pdm plugin and will not function outside that ecosystem.

Verify before relying

  • How locked dependencies are actually surfaced to end-users (as extras, environment markers, or another mechanism) is not detailed in the fact sheet.
  • Whether the plugin works with all pdm versions or has specific version constraints beyond what the fact sheet indicates.

Package facts

License MIT License Copyright (c) 2023 sigma67 Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in… (full text in the JSON record) (permissive)
Python support supports the current Python release (>=3.9)
Install friction low — pure-Python wheel
Runtime dependencies 1 — tomli
Maintenance aging — 257 days since the last release
First released
Downloads 1,047,201/month — #4,449 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pdm_build_locked-0.3.7-py3-none-any.whl

Keywords: pdm, plugin

Operating System :: OS IndependentProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Topic :: Software Development :: Libraries :: Python Modules

Tags

pdm plugin locked dependenciespublish locked package versionsreproducible python package distributionpdm build with lock fileoptional dependency groups metadata
pdm-pluginreproducible-buildslock-file

More Python Modules packages