Packs este un standard extensibil pentru organizarea aplicațiilor mari Ruby și Rails în pachete modulare.
Gestionarea pachetelor
# Creează un nou pachet pack
bin/packs create packs/profiles
# Adaugă un fișier API public într-un pachet
bin/packs make_public packs/profiles/app/services/create_profile_service.rb
# Mută fișiere între pachete
bin/packs move packs/billing packs/profiles/app/services/billing_service.rb
# Adaugă o dependență între pachete
bin/packs add_dependency packs/orders packs/inventory
Validarea limitelor pachetelor
Packs se integrează cu Packwerk pentru a preveni dependențele circulare și breșele de intimitate:
# Validează că nu există dependențe circulare
bin/packs validate
# Verifică încălcările de intimitate și dependență
bin/packs check packs/profiles
# Actualizează package_todo.yml cu încălcările existente
bin/packs update
Linting și auditul încălcărilor
# Verifică formatul fișierelor package_todo.yml
bin/packs lint_package_todo_yml_files
# Verifică configurările package.yml
bin/packs lint_package_yml_files
# Afișează principalele tipuri de încălcări
bin/packs list_top_violations dependency packs/profiles