#!/usr/bin/env bash set -euo pipefail repo_root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" cd "$repo_root" excluded_dirs=( .git target node_modules vendor .direnv .cache dist out ) find_expression=() for directory in "${excluded_dirs[@]}"; do if ((${#find_expression[@]})); then find_expression+=( -o ) fi find_expression+=( -name "$directory" ) done mapfile -d '' rename_paths < <( find . \ \( -type d \( "${find_expression[@]}" \) -prune \) -o \ \( -name '*disasmer*' -o -name '*Disasmer*' -o -name '*DISASMER*' \) -print0 ) for ((index=${#rename_paths[@]} - 1; index >= 0; index--)); do path="${rename_paths[$index]}" parent="$(dirname "$path")" name="$(basename "$path")" renamed="${name//DISASMER/CLUSTERFLUX}" renamed="${renamed//Disasmer/Clusterflux}" renamed="${renamed//disasmer/clusterflux}" destination="$parent/$renamed" if [[ "$path" != "$destination" ]]; then if [[ -e "$destination" ]]; then printf 'rename destination already exists: %s\n' "$destination" >&2 exit 1 fi mv -- "$path" "$destination" fi done rg_args=( --files-with-matches --null --hidden --glob '!**/.git/**' --glob '!**/target/**' --glob '!**/node_modules/**' --glob '!**/vendor/**' --glob '!**/.direnv/**' --glob '!**/.cache/**' --glob '!**/dist/**' --glob '!**/out/**' --glob '!scripts/rename-to-clusterflux.sh' --glob '!scripts/migrate-clusterflux-state.sh' --glob '!internal/finish_mvp.md' ) while IFS= read -r -d '' file; do perl -0pi -e 's/DISASMER/CLUSTERFLUX/g; s/Disasmer/Clusterflux/g; s/disasmer/clusterflux/g' "$file" done < <(rg "${rg_args[@]}" 'DISASMER|Disasmer|disasmer' . || true) rm -f Cargo.lock private/hosted-policy/Cargo.lock experiments/debugger-gate/Cargo.lock cargo generate-lockfile cargo generate-lockfile --manifest-path private/hosted-policy/Cargo.toml cargo generate-lockfile --manifest-path experiments/debugger-gate/Cargo.toml for package in vscode-extension experiments/debugger-gate/vscode-extension; do if [[ -f "$package/package-lock.json" ]]; then npm install --package-lock-only --ignore-scripts --prefix "$package" fi done printf 'Clusterflux rename applied. Rerunning this script is a no-op apart from lockfile regeneration.\n'