#!/bin/bash # Script to check compilation status of all RustyTorch crates echo "=== RustyTorch Crate Compilation Status Check ===" echo "Date: $(date)" echo "=================================================" echo "" # Arrays to store results declare -a SUCCESS_CRATES=() declare -a FAILED_CRATES=() # Function to check a single crate check_crate() { local crate_path=$1 local crate_name=$(basename $(dirname $crate_path)) echo -n "Checking $crate_name... " # Navigate to crate directory and try to build cd $(dirname $crate_path) 2>/dev/null # Capture both stdout and stderr, but suppress output if cargo check --lib 2>&1 >/dev/null; then echo "✅ SUCCESS" SUCCESS_CRATES+=("$crate_name") else echo "❌ FAILED" FAILED_CRATES+=("$crate_name") fi } # Core crates echo "=== CORE CRATES ===" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-tensor/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-runtime/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-kernel/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-memory/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-autograd/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-graph/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-nn/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-losses/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-tokenization/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-bindings/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/core/rtx-validation/Cargo.toml" echo "" # Training crates echo "=== TRAINING CRATES ===" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-flash-attention/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-transformers/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-distributed/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-preprocessing/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-auto/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-automeasure/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-compress/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-evolution/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-federated/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-model-merging/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/training/rtx-rl/Cargo.toml" echo "" # Production crates echo "=== PRODUCTION CRATES ===" check_crate "/home/osobh/projects/rustytorch/crates/production/rtx-serving-api/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/production/rtx-inference/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/production/rtx-monitoring/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/production/rtx-streaming/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/production/rtx-hub/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/production/rtx-config/Cargo.toml" echo "" # Specialized crates echo "=== SPECIALIZED CRATES ===" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-platform/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-compiler/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-ml-classic/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-science/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-cfd/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-fea/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-geom/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-nmf/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-polygraph/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-sklearn-py/Cargo.toml" check_crate "/home/osobh/projects/rustytorch/crates/specialized/rtx-synthesis/Cargo.toml" echo "" # Print summary echo "=================================================" echo "=== SUMMARY ===" echo "Total crates checked: $((${#SUCCESS_CRATES[@]} + ${#FAILED_CRATES[@]}))" echo "✅ Successful: ${#SUCCESS_CRATES[@]}" echo "❌ Failed: ${#FAILED_CRATES[@]}" echo "" if [ ${#SUCCESS_CRATES[@]} -gt 0 ]; then echo "=== SUCCESSFUL CRATES ===" for crate in "${SUCCESS_CRATES[@]}"; do echo " ✅ $crate" done echo "" fi if [ ${#FAILED_CRATES[@]} -gt 0 ]; then echo "=== FAILED CRATES ===" for crate in "${FAILED_CRATES[@]}"; do echo " ❌ $crate" done fi echo "" echo "================================================="