#!/usr/bin/env bash set -euo pipefail output=${1:-/tmp/nigig-site-production-tree.txt} cargo tree --locked -p nigig-site --edges normal >"$output" forbidden=( nigig-core nigig-uikit doc-ui reqwest makepad-ai-hub makepad-system-speech robius-location robius-notification nigig-pdf-cos nigig-pdf-document nigig-pdf-graphics nigig-pdf-makepad nigig_doc_scanner doc-engine image zip quick-xml ) for package in "${forbidden[@]}"; do if grep -Eq "^[│├└─[:space:]]*${package} v" "$output"; then echo "ERROR: contained package is in nigig-site's normal dependency tree: $package" >&2 grep -E "^[│├└─[:space:]]*${package} v" "$output" >&2 exit 1 fi done printf 'production dependency containment passed (%d forbidden package names absent)\n' "${#forbidden[@]}"