Referência rápida

Guia de referência de modularização no Ruby com Packs

Guia rápido para Packs: especificação modular de pacotes em Ruby, encapsulamento de API pública, limites de dependência e linting.

· Publicado

O Packs é um padrão extensível para organizar grandes aplicações Ruby e Rails em pacotes modulares.

Gerenciando Pacotes

# Criar um novo pacote pack
bin/packs create packs/profiles

# Adicionar um arquivo de API pública a um pacote
bin/packs make_public packs/profiles/app/services/create_profile_service.rb

# Mover arquivos entre pacotes
bin/packs move packs/billing packs/profiles/app/services/billing_service.rb

# Declarar dependência entre packs
bin/packs add_dependency packs/orders packs/inventory

Validando Limites de Pacotes

O Packs integra-se ao Packwerk para evitar dependências circulares e vazamentos de escopo privado:

# Validar que não há dependências circulares
bin/packs validate

# Verificar violações de privacidade e dependências
bin/packs check packs/profiles

# Atualizar package_todo.yml com violações existentes
bin/packs update

Linting e Auditoria de Violações

# Verificar formato de arquivos package_todo.yml
bin/packs lint_package_todo_yml_files

# Verificar configurações de package.yml
bin/packs lint_package_yml_files

# Listar as principais violações em um pack
bin/packs list_top_violations dependency packs/profiles

Referências

Temas relacionados