Un framework de testing para Python que facilita escribir pruebas pequeñas y escalar a pruebas funcionales complejas para aplicaciones y bibliotecas.
- Estrellas
- 8,662
- Forks
- 501
- Issues abiertos
- 48
- Último commit
- ayer
¿Qué es?
PDM es un gestor de paquetes y dependencias de Python que lee los metadatos del proyecto desde un archivo pyproject.toml estándar y genera un archivo de bloqueo para fijar las versiones exactas de las dependencias. Puede crear y administrar entornos virtuales en el directorio del proyecto o en una ubicación centralizada, de forma similar a Pipenv. También puede crear wheels y distribuciones de código fuente, y subirlas a PyPI, de forma similar a Poetry.
PDM incluye un backend de compilación PEP 517 y no está ligado a uno solo, por lo que los proyectos pueden usar el backend que prefieran. La funcionalidad se puede ampliar mediante un sistema de plugins, y se admiten scripts definidos por el usuario. También puede instalar intérpretes de Python con python-build-standalone y ofrece una caché de instalación centralizada opcional.
PDM cuenta con opciones experimentales para PEP 582 (instalar paquetes en una carpeta local __pypackages__ en lugar de un entorno virtual) y para usar uv como instalador.
Funciones clave
- 01Resolución de dependencias con compatibilidad con archivos de bloqueo mediante pdm.lock
- 02Administración de entornos virtuales en el proyecto o en ubicaciones centralizadas
- 03Compatibilidad con el backend de compilación PEP 517 y los metadatos de proyecto PEP 621
- 04Sistema de plugins y scripts de usuario personalizables
- 05Permite instalar intérpretes de Python mediante python-build-standalone
- 06Caché de instalación centralizada opcional
Casos de uso
- Administrar dependencias y entornos virtuales de una aplicación de Python
- Crear y publicar una biblioteca de Python en PyPI usando metadatos estándar de pyproject.toml
- Migrar de Pipenv o Poetry a un flujo de trabajo basado en PEP 621
Inicio rápido
- 1
Instalar PDM con el script de instalación (Linux/Mac)
Instálalo siguiendo las instrucciones oficiales del README - 2
Crear un nuevo proyecto de PDM
pdm new my-project - 3
Añadir dependencias al proyecto
pdm add requests flask
Antes de usarlo
- Requiere Python 3.10 o superior.
- Las integraciones con PEP 582 y uv están marcadas como experimentales.
- uv no funciona con PEP 582.
Temas
Preguntas frecuentes
- ¿Qué es pdm?
- Gestor moderno de paquetes y dependencias de Python que administra entornos virtuales, archivos de bloqueo y compilaciones según los metadatos de PEP 621 y PEP 517. PDM es un gestor de paquetes y dependencias de Python que lee los metadatos del proyecto desde un archivo pyproject.toml estándar y genera un archivo de bloqueo para fijar las versiones exactas de las dependencias. Puede crear y administrar entornos virtuales en el directorio del proyecto o en una ubicación centralizada, de forma similar a Pipenv. También puede crear wheels y distribuciones de código fuente, y subirlas a PyPI, de forma similar a Poetry.
- ¿pdm es gratuito? ¿Qué licencia tiene?
- pdm es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
- ¿pdm sigue mantenido?
- Mantenimiento activo. El último commit de pdm fue el 19 oct 2026.
- ¿Para qué puedo usar pdm?
- Administrar dependencias y entornos virtuales de una aplicación de Python Crear y publicar una biblioteca de Python en PyPI usando metadatos estándar de pyproject.toml Migrar de Pipenv o Poetry a un flujo de trabajo basado en PEP 621
- ¿Cómo se instala pdm?
- Instalar PDM con el script de instalación (Linux/Mac) Crear un nuevo proyecto de PDM: pdm new my-project Añadir dependencias al proyecto: pdm add requests flask
- ¿Dónde consigo pdm?
- El código fuente y las instrucciones de instalación están en GitHub: https://github.com/pdm-project/pdm
Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.
Proyectos relacionados
Sistema de gestión de inventario de código abierto con control de stock, seguimiento de piezas, una REST API y un sistema de plugins, desarrollado con Python y Django.
Registrador de entrenamientos, nutrición y peso corporal, de código abierto y autohospedado, basado en Django, con REST API y aplicaciones móviles complementarias.
Una biblioteca cliente de Python para Kubernetes con una API basada en kubectl e interfaces síncronas y asíncronas (asyncio/trio).
Convierte un tema o palabra clave en un video corto terminado: genera automáticamente el guion, la voz en off, las imágenes, los subtítulos y la música.
Apache Answer es una plataforma de preguntas y respuestas de código abierto para crear foros comunitarios, centros de ayuda y sitios de gestión del conocimiento.