mirror of
https://github.com/cloud-shuttle/leptos-shadcn-ui.git
synced 2025-12-22 22:00:00 +00:00
## 🎯 **RELEASE PREPARATION:** ✅ **Version Bump**: Updated all packages from 0.8.1 to 0.9.0 ✅ **Release Notes**: Comprehensive v0.9.0 release documentation ✅ **Publishing Script**: Automated v0.9.0 publication to crates.io ✅ **Compilation Verified**: All packages compile successfully ✅ **Tests Passing**: Complete test suite validation ## 📦 **PACKAGES READY FOR RELEASE:** - **47 Component Packages**: All updated to v0.9.0 - **3 New Infrastructure Packages**: test-runner, performance-monitoring, visual-testing - **Main Library Package**: leptos-shadcn-ui v0.9.0 - **Total**: 51 packages ready for publication ## 🎊 **MAJOR RELEASE HIGHLIGHTS:** - **100% Real Test Coverage**: 3,014 real tests, 0 placeholder tests - **394 WASM Tests**: Browser-based component validation - **6 Integration Test Suites**: Complex workflow testing - **Performance Monitoring**: Real-time metrics and regression detection - **Visual Regression Testing**: Screenshot comparison and diff detection - **Rust-Based Testing Infrastructure**: Native test execution ## 🚀 **READY FOR PUBLICATION:** All packages are versioned, tested, and ready for crates.io publication. This represents the most significant quality improvement in project history. Next: Run ./publish_v0.9.0.sh to publish to crates.io
87 lines
2.7 KiB
Python
87 lines
2.7 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
Script to update all package versions from 0.8.1 to 0.9.0
|
|
"""
|
|
|
|
import os
|
|
import re
|
|
import glob
|
|
|
|
def update_version_in_file(filepath):
|
|
"""Update version from 0.8.1 to 0.9.0 in a Cargo.toml file"""
|
|
try:
|
|
with open(filepath, 'r') as f:
|
|
content = f.read()
|
|
|
|
# Update version = "0.8.1" to version = "0.9.0"
|
|
updated_content = re.sub(r'version = "0\.8\.1"', 'version = "0.9.0"', content)
|
|
|
|
# Also update dependency versions
|
|
updated_content = re.sub(r'version = "0\.8\.1"', 'version = "0.9.0"', updated_content)
|
|
|
|
if content != updated_content:
|
|
with open(filepath, 'w') as f:
|
|
f.write(updated_content)
|
|
print(f"✅ Updated: {filepath}")
|
|
return True
|
|
else:
|
|
print(f"⏭️ No changes needed: {filepath}")
|
|
return False
|
|
|
|
except Exception as e:
|
|
print(f"❌ Error updating {filepath}: {e}")
|
|
return False
|
|
|
|
def main():
|
|
print("🚀 Updating all package versions from 0.8.1 to 0.9.0...")
|
|
|
|
# Find all Cargo.toml files
|
|
cargo_files = []
|
|
|
|
# Add root Cargo.toml
|
|
cargo_files.append("Cargo.toml")
|
|
|
|
# Add all package Cargo.toml files
|
|
for root, dirs, files in os.walk("packages"):
|
|
if "Cargo.toml" in files:
|
|
cargo_files.append(os.path.join(root, "Cargo.toml"))
|
|
|
|
# Add performance-audit Cargo.toml
|
|
if os.path.exists("performance-audit/Cargo.toml"):
|
|
cargo_files.append("performance-audit/Cargo.toml")
|
|
|
|
updated_count = 0
|
|
total_count = len(cargo_files)
|
|
|
|
for cargo_file in cargo_files:
|
|
if os.path.exists(cargo_file):
|
|
if update_version_in_file(cargo_file):
|
|
updated_count += 1
|
|
|
|
print(f"\n🎉 Version update complete!")
|
|
print(f"📊 Updated {updated_count}/{total_count} files")
|
|
|
|
if updated_count > 0:
|
|
print("\n🔍 Verifying changes...")
|
|
# Check if any 0.8.1 versions remain
|
|
remaining_versions = []
|
|
for cargo_file in cargo_files:
|
|
if os.path.exists(cargo_file):
|
|
try:
|
|
with open(cargo_file, 'r') as f:
|
|
content = f.read()
|
|
if 'version = "0.8.1"' in content:
|
|
remaining_versions.append(cargo_file)
|
|
except:
|
|
pass
|
|
|
|
if remaining_versions:
|
|
print(f"⚠️ Warning: {len(remaining_versions)} files still contain version 0.8.1:")
|
|
for file in remaining_versions:
|
|
print(f" - {file}")
|
|
else:
|
|
print("✅ All versions successfully updated to 0.9.0!")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|