Packs es un estándar de empaquetado extensible para organizar aplicaciones Ruby y Rails grandes en paquetes modulares.
Gestión de Paquetes
# Crear un nuevo paquete pack
bin/packs create packs/profiles
# Añadir un archivo de API pública a un paquete
bin/packs make_public packs/profiles/app/services/create_profile_service.rb
# Mover archivos entre paquetes
bin/packs move packs/billing packs/profiles/app/services/billing_service.rb
# Declarar una dependencia entre packs
bin/packs add_dependency packs/orders packs/inventory
Validación de Límites de Paquetes
Packs se integra con Packwerk para prevenir dependencias cíclicas y fugas de privacidad:
# Validar que los packs no tengan dependencias circulares
bin/packs validate
# Comprobar violaciones de privacidad y dependencias
bin/packs check packs/profiles
# Actualizar package_todo.yml con violaciones existentes
bin/packs update
Linting y Auditorías de Violaciones
# Comprobar formato de archivos package_todo.yml
bin/packs lint_package_todo_yml_files
# Comprobar configuraciones de package.yml
bin/packs lint_package_yml_files
# Listar los tipos de violaciones principales de un pack
bin/packs list_top_violations dependency packs/profiles