#!/usr/bin/env nu # Fix circular dependencies in foundation crates def main [] { print "🔧 Fixing circular dependencies in foundation crates..." let foundation_crates = ["client", "server", "core-lib", "core-types", "components", "pages", "tools", "utils"] for $crate_name in $foundation_crates { fix_crate_deps $crate_name } print "✅ All circular dependencies fixed!" } def fix_crate_deps [crate_name: string] { let crate_path = $"foundation/crates/($crate_name)" let cargo_toml = $"($crate_path)/Cargo.toml" if not ($cargo_toml | path exists) { print $" ⚠️ ($cargo_toml) not found, skipping..." return } print $" 🔧 Fixing ($crate_name)..." # Read the Cargo.toml file let content = (open $cargo_toml) # Remove self-dependencies let fixed_content = ( $content | reject --ignore-errors dependencies.($crate_name) | reject --ignore-errors build-dependencies.($crate_name) | reject --ignore-errors dev-dependencies.($crate_name) ) # Save the fixed Cargo.toml $fixed_content | to toml | save --force $cargo_toml print $" ✓ Fixed ($crate_name)" }