#595 · Herramienta para desarrolladores

Python Requirements Sorter

Ordena archivos requirements.txt conservando comentarios, líneas vacías y opciones de pip en bloques separados. Las dependencias normales se ordenan sin distinguir mayúsculas y se mantienen sus extras, marcadores de entorno y restricciones de versión. Sirve para reducir ruido en diffs y normalizar listas antes de revisarlas en equipo.

Datos de entrada

requirements.txt
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Pega el contenido en el área de entrada o carga un archivo local.
  2. Revisa que el formato corresponda al tipo esperado por la herramienta.
  3. Ejecuta el procesamiento con el botón principal o con Ctrl/Cmd + Enter.
  4. Comprueba el resumen, las métricas y las notas antes de copiar o descargar el resultado.

Qué hace esta herramienta para desarrolladores

Ordena archivos requirements.txt conservando comentarios, líneas vacías y opciones de pip en bloques separados. Las dependencias normales se ordenan sin distinguir mayúsculas y se mantienen sus extras, marcadores de entorno y restricciones de versión. Sirve para reducir ruido en diffs y normalizar listas antes de revisarlas en equipo.

Divide el archivo por líneas vacías. Dentro de cada bloque conserva comentarios y opciones de pip en su posición relativa, mientras ordena las líneas de dependencias consecutivas por nombre canónico en minúsculas.

No combina requisitos duplicados ni decide qué versión es correcta. Las URLs directas y opciones complejas se conservan como texto.

Ejemplo

Entrada: requests>=2.31 Flask==3.0.3 Salida: Flask==3.0.3 requests>=2.31

Casos de uso

  • Reducir cambios de orden en revisiones Git.
  • Normalizar requirements antes de generar imágenes.
  • Preparar listas legibles sin perder comentarios importantes.

Consejos para obtener resultados fiables

  • Trabaja con una copia del archivo antes de sustituir manifests o lockfiles.
  • Revisa manualmente las líneas señaladas como ambiguas o no compatibles.
  • Compara el resultado con el control de versiones para detectar cambios inesperados.
  • No interpretes una extracción local como validación de disponibilidad en un registro remoto.
  • Conserva el lockfile original cuando necesites reproducibilidad exacta.

Detalles del procesamiento

Divide el archivo por líneas vacías. Dentro de cada bloque conserva comentarios y opciones de pip en su posición relativa, mientras ordena las líneas de dependencias consecutivas por nombre canónico en minúsculas.

No combina requisitos duplicados ni decide qué versión es correcta. Las URLs directas y opciones complejas se conservan como texto.

Preguntas frecuentes

¿Conserva los comentarios de requirements.txt?

Sí. Los comentarios y líneas vacías se mantienen y delimitan bloques de ordenación.

¿Ordena también opciones como -r, -c o --index-url?

Las conserva como líneas especiales y evita tratarlas como nombres de paquetes.

¿Modifica marcadores como ; python_version < "3.12"?

No. Ordena la línea completa pero no reescribe el marcador ni la restricción.

¿Combina dependencias duplicadas?

No. El objetivo es ordenar, no resolver conflictos entre restricciones duplicadas.

¿Es compatible con requisitos mediante URL o VCS?

Los conserva, aunque el criterio de orden para esas líneas es textual y no intenta resolver el repositorio.

Resumen del módulo

ElementoDetalle
Entradarequirements.txt
ProcesamientoLocal en el navegador
SalidaTXT
Red externaNo requerida