-
Notifications
You must be signed in to change notification settings - Fork 27
Expand file tree
/
Copy pathpublish_midstream_crates.sh
More file actions
executable file
·89 lines (78 loc) · 2.99 KB
/
publish_midstream_crates.sh
File metadata and controls
executable file
·89 lines (78 loc) · 2.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/bin/bash
set -e
# Read token from .env
export CARGO_REGISTRY_TOKEN=$(grep "^CRATES_API_KEY=" .env | cut -d'=' -f2)
echo "🚀 Publishing Midstream Platform crates to crates.io"
echo "======================================================"
echo ""
echo "This will publish 6 core Midstream crates in dependency order."
echo "Total estimated time: ~35 minutes"
echo ""
# Phase 1: Foundation crates (no dependencies on unpublished crates)
echo "📦 PHASE 1: Foundation Crates (4 crates, ~20 minutes)"
echo "========================================================"
echo ""
# 1. temporal-compare (no deps)
echo "[1/6] Publishing temporal-compare..."
cd /workspaces/midstream/crates/temporal-compare
cargo publish --token "$CARGO_REGISTRY_TOKEN"
echo "✅ temporal-compare v0.1.0 published"
echo ""
echo "⏳ Waiting 180 seconds for crates.io indexing..."
sleep 180
# 2. nanosecond-scheduler (no deps)
echo "[2/6] Publishing nanosecond-scheduler..."
cd /workspaces/midstream/crates/nanosecond-scheduler
cargo publish --token "$CARGO_REGISTRY_TOKEN"
echo "✅ nanosecond-scheduler v0.1.0 published"
echo ""
echo "⏳ Waiting 180 seconds for crates.io indexing..."
sleep 180
# 3. temporal-neural-solver (depends on nanosecond-scheduler)
echo "[3/6] Publishing temporal-neural-solver..."
cd /workspaces/midstream/crates/temporal-neural-solver
cargo publish --token "$CARGO_REGISTRY_TOKEN"
echo "✅ temporal-neural-solver v0.1.0 published"
echo ""
echo "⏳ Waiting 180 seconds for crates.io indexing..."
sleep 180
# 4. temporal-attractor-studio (depends on temporal-compare)
echo "[4/6] Publishing temporal-attractor-studio..."
cd /workspaces/midstream/crates/temporal-attractor-studio
cargo publish --token "$CARGO_REGISTRY_TOKEN"
echo "✅ temporal-attractor-studio v0.1.0 published"
echo ""
echo "⏳ Waiting 180 seconds for crates.io indexing..."
sleep 180
# Phase 2: Advanced crates
echo ""
echo "📦 PHASE 2: Advanced Crates (2 crates, ~10 minutes)"
echo "====================================================="
echo ""
# 5. quic-multistream (no deps)
echo "[5/6] Publishing quic-multistream..."
cd /workspaces/midstream/crates/quic-multistream
cargo publish --token "$CARGO_REGISTRY_TOKEN"
echo "✅ quic-multistream v0.1.0 published"
echo ""
echo "⏳ Waiting 180 seconds for crates.io indexing..."
sleep 180
# 6. strange-loop (depends on all above)
echo "[6/6] Publishing strange-loop..."
cd /workspaces/midstream/crates/strange-loop
cargo publish --token "$CARGO_REGISTRY_TOKEN"
echo "✅ strange-loop v0.1.0 published"
echo ""
echo "🎉 All Midstream crates published successfully!"
echo ""
echo "Published crates:"
echo " 1. temporal-compare v0.1.0"
echo " 2. nanosecond-scheduler v0.1.0"
echo " 3. temporal-neural-solver v0.1.0"
echo " 4. temporal-attractor-studio v0.1.0"
echo " 5. quic-multistream v0.1.0"
echo " 6. strange-loop v0.1.0"
echo ""
echo "View at: https://crates.io/search?q=temporal OR https://crates.io/search?q=midstream"
echo ""
echo "✅ Ready to publish AIMDS crates (aimds-detection, aimds-analysis, aimds-response)"