Your music, beautifully tracked. All yours. (coming soon) teal.fm
teal-fm atproto

Restructure Rust workspace and build configuration

+10 -23
.github/workflows/ci.yml
··· 37 - name: Build Node packages 38 run: pnpm build 39 40 - - name: Build Rust services (x86_64) 41 - run: | 42 - cargo build --release --all-features 43 - 44 - - name: Build Rust apps (x86_64) 45 run: | 46 - cd apps/aqua 47 - cargo build --release --all-features 48 49 - name: Collect executables (x86_64) 50 run: | 51 mkdir -p artifacts/x86_64 52 - # Copy service executables 53 - if [ -d "services/target/release" ]; then 54 - find services/target/release -maxdepth 1 -type f -executable ! -name "*.d" ! -name "*-*" -exec cp {} artifacts/x86_64/ \; 55 - fi 56 - # Copy app executables 57 - if [ -d "apps/aqua/target/release" ]; then 58 - find apps/aqua/target/release -maxdepth 1 -type f -executable ! -name "*.d" ! -name "*-*" -exec cp {} artifacts/x86_64/ \; 59 fi 60 echo "x86_64 executables:" 61 ls -la artifacts/x86_64/ || echo "No executables found" ··· 107 echo "PKG_CONFIG_ALLOW_CROSS=1" >> $GITHUB_ENV 108 echo "CROSS_NO_WARNINGS=0" >> $GITHUB_ENV 109 110 - - name: Cross-compile services 111 run: | 112 - cross build --release --all-features --target ${{ matrix.target }} 113 114 - name: Collect cross-compiled executables 115 run: | 116 mkdir -p artifacts/${{ matrix.target }} 117 - # Copy service executables 118 - if [ -d "services/target/${{ matrix.target }}/release" ]; then 119 - find services/target/${{ matrix.target }}/release -maxdepth 1 -type f -executable ! -name "*.d" ! -name "*-*" -exec cp {} artifacts/${{ matrix.target }}/ \; 120 - fi 121 - # Copy app executables 122 - if [ -d "apps/aqua/target/${{ matrix.target }}/release" ]; then 123 - find apps/aqua/target/${{ matrix.target }}/release -maxdepth 1 -type f -executable ! -name "*.d" ! -name "*-*" -exec cp {} artifacts/${{ matrix.target }}/ \; 124 fi 125 echo "Cross-compiled executables for ${{ matrix.target }}:" 126 ls -la artifacts/${{ matrix.target }}/ || echo "No executables found"
··· 37 - name: Build Node packages 38 run: pnpm build 39 40 + - name: Build Rust workspace (x86_64) 41 run: | 42 + cargo build --release --all-features --workspace 43 44 - name: Collect executables (x86_64) 45 run: | 46 mkdir -p artifacts/x86_64 47 + # Copy all executables from unified workspace 48 + if [ -d "target/release" ]; then 49 + find target/release -maxdepth 1 -type f -executable ! -name "*.d" ! -name "*-*" -exec cp {} artifacts/x86_64/ \; 50 fi 51 echo "x86_64 executables:" 52 ls -la artifacts/x86_64/ || echo "No executables found" ··· 98 echo "PKG_CONFIG_ALLOW_CROSS=1" >> $GITHUB_ENV 99 echo "CROSS_NO_WARNINGS=0" >> $GITHUB_ENV 100 101 + - name: Cross-compile workspace 102 run: | 103 + cross build --release --all-features --workspace --target ${{ matrix.target }} 104 105 - name: Collect cross-compiled executables 106 run: | 107 mkdir -p artifacts/${{ matrix.target }} 108 + # Copy all executables from unified workspace 109 + if [ -d "target/${{ matrix.target }}/release" ]; then 110 + find target/${{ matrix.target }}/release -maxdepth 1 -type f -executable ! -name "*.d" ! -name "*-*" -exec cp {} artifacts/${{ matrix.target }}/ \; 111 fi 112 echo "Cross-compiled executables for ${{ matrix.target }}:" 113 ls -la artifacts/${{ matrix.target }}/ || echo "No executables found"
+3
.mise.toml
···
··· 1 + [tools] 2 + node = "24" 3 + pnpm = "10.18"
+59
Cargo.lock
··· 899 ] 900 901 [[package]] 902 name = "crossbeam-channel" 903 version = "0.5.15" 904 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2523 checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" 2524 2525 [[package]] 2526 name = "num-integer" 2527 version = "0.1.46" 2528 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 3321 checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" 3322 3323 [[package]] 3324 name = "schannel" 3325 version = "0.1.27" 3326 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 3662 dependencies = [ 3663 "base64 0.22.1", 3664 "bytes", 3665 "crc", 3666 "crossbeam-queue", 3667 "either", ··· 3741 "bitflags 2.9.1", 3742 "byteorder", 3743 "bytes", 3744 "crc", 3745 "digest", 3746 "dotenvy", ··· 3784 "base64 0.22.1", 3785 "bitflags 2.9.1", 3786 "byteorder", 3787 "crc", 3788 "dotenvy", 3789 "etcetera", ··· 3820 checksum = "c2d12fe70b2c1b4401038055f90f151b78208de1f9f89a7dbfd41587a10c3eea" 3821 dependencies = [ 3822 "atoi", 3823 "flume", 3824 "futures-channel", 3825 "futures-core", ··· 4121 "socket2 0.6.0", 4122 "tokio-macros", 4123 "windows-sys 0.59.0", 4124 ] 4125 4126 [[package]]
··· 899 ] 900 901 [[package]] 902 + name = "cron" 903 + version = "0.12.1" 904 + source = "registry+https://github.com/rust-lang/crates.io-index" 905 + checksum = "6f8c3e73077b4b4a6ab1ea5047c37c57aee77657bc8ecd6f29b0af082d0b0c07" 906 + dependencies = [ 907 + "chrono", 908 + "nom", 909 + "once_cell", 910 + ] 911 + 912 + [[package]] 913 name = "crossbeam-channel" 914 version = "0.5.15" 915 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2534 checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" 2535 2536 [[package]] 2537 + name = "num-derive" 2538 + version = "0.3.3" 2539 + source = "registry+https://github.com/rust-lang/crates.io-index" 2540 + checksum = "876a53fff98e03a936a674b29568b0e605f06b29372c2489ff4de23f1949743d" 2541 + dependencies = [ 2542 + "proc-macro2", 2543 + "quote", 2544 + "syn 1.0.109", 2545 + ] 2546 + 2547 + [[package]] 2548 name = "num-integer" 2549 version = "0.1.46" 2550 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 3343 checksum = "28d3b2b1366ec20994f1fd18c3c594f05c5dd4bc44d8bb0c1c632c8d6829481f" 3344 3345 [[package]] 3346 + name = "satellite" 3347 + version = "0.1.0" 3348 + dependencies = [ 3349 + "anyhow", 3350 + "axum", 3351 + "chrono", 3352 + "dotenvy", 3353 + "serde", 3354 + "serde_json", 3355 + "sqlx", 3356 + "tokio", 3357 + "tokio-cron-scheduler", 3358 + "tracing", 3359 + "tracing-subscriber", 3360 + "uuid", 3361 + ] 3362 + 3363 + [[package]] 3364 name = "schannel" 3365 version = "0.1.27" 3366 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 3702 dependencies = [ 3703 "base64 0.22.1", 3704 "bytes", 3705 + "chrono", 3706 "crc", 3707 "crossbeam-queue", 3708 "either", ··· 3782 "bitflags 2.9.1", 3783 "byteorder", 3784 "bytes", 3785 + "chrono", 3786 "crc", 3787 "digest", 3788 "dotenvy", ··· 3826 "base64 0.22.1", 3827 "bitflags 2.9.1", 3828 "byteorder", 3829 + "chrono", 3830 "crc", 3831 "dotenvy", 3832 "etcetera", ··· 3863 checksum = "c2d12fe70b2c1b4401038055f90f151b78208de1f9f89a7dbfd41587a10c3eea" 3864 dependencies = [ 3865 "atoi", 3866 + "chrono", 3867 "flume", 3868 "futures-channel", 3869 "futures-core", ··· 4165 "socket2 0.6.0", 4166 "tokio-macros", 4167 "windows-sys 0.59.0", 4168 + ] 4169 + 4170 + [[package]] 4171 + name = "tokio-cron-scheduler" 4172 + version = "0.10.2" 4173 + source = "registry+https://github.com/rust-lang/crates.io-index" 4174 + checksum = "a4c2e3a88f827f597799cf70a6f673074e62f3fc5ba5993b2873345c618a29af" 4175 + dependencies = [ 4176 + "chrono", 4177 + "cron", 4178 + "num-derive", 4179 + "num-traits", 4180 + "tokio", 4181 + "tracing", 4182 + "uuid", 4183 ] 4184 4185 [[package]]
+2 -1
Cargo.toml
··· 1 [workspace] 2 - members = ["apps/aqua", "services/cadet", "tools/teal-cli"] 3 default-members = ["services/types"] 4 resolver = "2" 5 ··· 18 "runtime-tokio", 19 "postgres", 20 "uuid", 21 "tls-rustls", 22 ] } 23 serde = { version = "1.0", features = ["derive"] }
··· 1 [workspace] 2 + members = ["apps/aqua", "services/cadet", "services/satellite", "services/types", "tools/teal-cli"] 3 default-members = ["services/types"] 4 resolver = "2" 5 ··· 18 "runtime-tokio", 19 "postgres", 20 "uuid", 21 + "chrono", 22 "tls-rustls", 23 ] } 24 serde = { version = "1.0", features = ["derive"] }
+1
apps/amethyst/.gitignore
··· 7 .expo/ 8 dist/ 9 web-build/ 10 expo-env.d.ts 11 12 # Native
··· 7 .expo/ 8 dist/ 9 web-build/ 10 + build/ 11 expo-env.d.ts 12 13 # Native
+8 -6
apps/aqua/package.json
··· 2 "name": "@repo/aqua", 3 "private": true, 4 "scripts": { 5 - "build": "cargo build --release", 6 - "build:rust": "cargo build --release", 7 - "dev": "cargo watch -x 'run'", 8 - "test": "cargo test", 9 - "test:rust": "cargo test" 10 - } 11 }
··· 2 "name": "@repo/aqua", 3 "private": true, 4 "scripts": { 5 + "install": ":", 6 + "build": "cargo build --release --manifest-path ../../Cargo.toml -p aqua", 7 + "build:rust": "cargo build --release --manifest-path ../../Cargo.toml -p aqua", 8 + "dev": "cargo watch -x 'run -p aqua'", 9 + "test": "cargo test -p aqua", 10 + "test:rust": "cargo test -p aqua" 11 + }, 12 + "packageManager": "pnpm@10.18.0" 13 }
-4
pnpm-lock.yaml
··· 254 255 services/cadet: {} 256 257 - services/rocketman: {} 258 - 259 services/satellite: {} 260 - 261 - services/types: {} 262 263 tools/lexicon-cli: 264 dependencies:
··· 254 255 services/cadet: {} 256 257 services/satellite: {} 258 259 tools/lexicon-cli: 260 dependencies:
+9 -50
scripts/setup-sqlx-offline.sh
··· 1 #!/bin/bash 2 3 - # Script to copy .sqlx files to all Rust projects that use SQLx 4 - # This is needed for offline SQLx builds (SQLX_OFFLINE=true) 5 6 set -e 7 ··· 12 # Source .sqlx directory 13 SQLX_SOURCE="$PROJECT_ROOT/.sqlx" 14 15 - # List of projects that use SQLx (relative to project root) 16 - SQLX_PROJECTS=( 17 - "apps/aqua" 18 - "services/cadet" 19 - "services/satellite" 20 - ) 21 - 22 - echo "🔧 Setting up SQLx offline files..." 23 24 # Check if source .sqlx directory exists 25 if [ ! -d "$SQLX_SOURCE" ]; then 26 - echo "❌ Source .sqlx directory not found at: $SQLX_SOURCE" 27 - echo " Make sure you've run 'cargo sqlx prepare' from the services directory first." 28 exit 1 29 fi 30 31 - # Copy .sqlx files to each project that needs them 32 - for project in "${SQLX_PROJECTS[@]}"; do 33 - project_path="$PROJECT_ROOT/$project" 34 - target_sqlx="$project_path/.sqlx" 35 - 36 - if [ ! -d "$project_path" ]; then 37 - echo "⚠️ Project directory not found: $project_path (skipping)" 38 - continue 39 - fi 40 - 41 - # Check if project actually uses SQLx 42 - if [ ! -f "$project_path/Cargo.toml" ]; then 43 - echo "⚠️ No Cargo.toml found in $project (skipping)" 44 - continue 45 - fi 46 - 47 - if ! grep -q "sqlx" "$project_path/Cargo.toml"; then 48 - echo "⚠️ Project $project doesn't appear to use SQLx (skipping)" 49 - continue 50 - fi 51 - 52 - echo "📦 Copying .sqlx files to $project..." 53 - 54 - # Remove existing .sqlx directory if it exists 55 - if [ -d "$target_sqlx" ]; then 56 - rm -rf "$target_sqlx" 57 - fi 58 - 59 - # Copy the .sqlx directory 60 - cp -r "$SQLX_SOURCE" "$target_sqlx" 61 - 62 - echo " ✅ Copied $(ls -1 "$target_sqlx" | wc -l) query files" 63 - done 64 - 65 - echo "✅ SQLx offline setup complete!" 66 echo "" 67 - echo "Note: If you add new SQL queries or modify existing ones, you'll need to:" 68 - echo "1. Run 'cargo sqlx prepare' from the services directory" 69 - echo "2. Run this script again to update all project copies"
··· 1 #!/bin/bash 2 3 + # Script to verify .sqlx files exist for offline SQLx builds (SQLX_OFFLINE=true) 4 + # With unified workspace, .sqlx only needs to exist at the project root 5 6 set -e 7 ··· 12 # Source .sqlx directory 13 SQLX_SOURCE="$PROJECT_ROOT/.sqlx" 14 15 + echo "🔧 Verifying SQLx offline files..." 16 17 # Check if source .sqlx directory exists 18 if [ ! -d "$SQLX_SOURCE" ]; then 19 + echo "❌ .sqlx directory not found at: $SQLX_SOURCE" 20 + echo " Make sure you've run 'cargo sqlx prepare' from the project root first." 21 exit 1 22 fi 23 24 + query_count=$(ls -1 "$SQLX_SOURCE" | wc -l | tr -d ' ') 25 + echo "✅ Found .sqlx directory with $query_count query files" 26 + echo "✅ SQLx offline mode ready!" 27 echo "" 28 + echo "Note: If you add new SQL queries or modify existing ones, run 'cargo sqlx prepare' from the project root"
+303 -209
services/Cargo.lock
··· 84 checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" 85 86 [[package]] 87 name = "async-lock" 88 version = "3.4.0" 89 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 152 "atrium-common", 153 "atrium-xrpc", 154 "chrono", 155 - "http", 156 "ipld-core", 157 "langtag", 158 "regex", ··· 185 source = "registry+https://github.com/rust-lang/crates.io-index" 186 checksum = "0216ad50ce34e9ff982e171c3659e65dedaa2ed5ac2994524debdc9a9647ffa8" 187 dependencies = [ 188 - "http", 189 "serde", 190 "serde_html_form", 191 "serde_json", ··· 232 "bytes", 233 "form_urlencoded", 234 "futures-util", 235 - "http", 236 "http-body", 237 "http-body-util", 238 "hyper", ··· 264 dependencies = [ 265 "bytes", 266 "futures-core", 267 - "http", 268 "http-body", 269 "http-body-util", 270 "mime", ··· 299 300 [[package]] 301 name = "base64" 302 version = "0.22.1" 303 source = "registry+https://github.com/rust-lang/crates.io-index" 304 checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" ··· 326 "proc-macro2", 327 "quote", 328 "regex", 329 - "rustc-hash", 330 "shlex", 331 "syn 2.0.104", 332 "which", ··· 445 "async-trait", 446 "atmst", 447 "atrium-api", 448 - "base64", 449 "chrono", 450 "cid 0.11.1", 451 "dotenvy", ··· 467 "sqlx", 468 "time", 469 "tokio", 470 - "tokio-tungstenite", 471 "tracing", 472 "tracing-subscriber", 473 "types", ··· 509 version = "1.0.1" 510 source = "registry+https://github.com/rust-lang/crates.io-index" 511 checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" 512 513 [[package]] 514 name = "chrono" ··· 587 ] 588 589 [[package]] 590 name = "concurrent-queue" 591 version = "2.5.0" 592 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 667 checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" 668 669 [[package]] 670 name = "cron" 671 version = "0.12.1" 672 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 926 ] 927 928 [[package]] 929 - name = "encoding_rs" 930 - version = "0.8.35" 931 - source = "registry+https://github.com/rust-lang/crates.io-index" 932 - checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3" 933 - dependencies = [ 934 - "cfg-if", 935 - ] 936 - 937 - [[package]] 938 name = "equivalent" 939 version = "1.0.2" 940 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 983 ] 984 985 [[package]] 986 - name = "fastrand" 987 - version = "2.3.0" 988 source = "registry+https://github.com/rust-lang/crates.io-index" 989 - checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" 990 991 [[package]] 992 name = "flume" ··· 1013 checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" 1014 1015 [[package]] 1016 - name = "foreign-types" 1017 - version = "0.3.2" 1018 - source = "registry+https://github.com/rust-lang/crates.io-index" 1019 - checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" 1020 - dependencies = [ 1021 - "foreign-types-shared", 1022 - ] 1023 - 1024 - [[package]] 1025 - name = "foreign-types-shared" 1026 - version = "0.1.1" 1027 - source = "registry+https://github.com/rust-lang/crates.io-index" 1028 - checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" 1029 - 1030 - [[package]] 1031 name = "form_urlencoded" 1032 version = "1.2.1" 1033 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1186 checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" 1187 dependencies = [ 1188 "cfg-if", 1189 "libc", 1190 "r-efi", 1191 "wasi 0.14.2+wasi-0.2.4", 1192 ] 1193 1194 [[package]] ··· 1214 "fnv", 1215 "futures-core", 1216 "futures-sink", 1217 - "http", 1218 "indexmap", 1219 "slab", 1220 "tokio", ··· 1289 1290 [[package]] 1291 name = "http" 1292 version = "1.3.1" 1293 source = "registry+https://github.com/rust-lang/crates.io-index" 1294 checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" ··· 1305 checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" 1306 dependencies = [ 1307 "bytes", 1308 - "http", 1309 ] 1310 1311 [[package]] ··· 1316 dependencies = [ 1317 "bytes", 1318 "futures-core", 1319 - "http", 1320 "http-body", 1321 "pin-project-lite", 1322 ] ··· 1343 "futures-channel", 1344 "futures-util", 1345 "h2", 1346 - "http", 1347 "http-body", 1348 "httparse", 1349 "httpdate", ··· 1360 source = "registry+https://github.com/rust-lang/crates.io-index" 1361 checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" 1362 dependencies = [ 1363 - "http", 1364 "hyper", 1365 "hyper-util", 1366 - "rustls", 1367 - "rustls-native-certs", 1368 "rustls-pki-types", 1369 "tokio", 1370 - "tokio-rustls", 1371 - "tower-service", 1372 - ] 1373 - 1374 - [[package]] 1375 - name = "hyper-tls" 1376 - version = "0.6.0" 1377 - source = "registry+https://github.com/rust-lang/crates.io-index" 1378 - checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0" 1379 - dependencies = [ 1380 - "bytes", 1381 - "http-body-util", 1382 - "hyper", 1383 - "hyper-util", 1384 - "native-tls", 1385 - "tokio", 1386 - "tokio-native-tls", 1387 "tower-service", 1388 ] 1389 1390 [[package]] ··· 1393 source = "registry+https://github.com/rust-lang/crates.io-index" 1394 checksum = "7f66d5bd4c6f02bf0542fad85d626775bab9258cf795a4256dcaf3161114d1df" 1395 dependencies = [ 1396 - "base64", 1397 "bytes", 1398 "futures-channel", 1399 "futures-core", 1400 "futures-util", 1401 - "http", 1402 "http-body", 1403 "hyper", 1404 "ipnet", ··· 1406 "percent-encoding", 1407 "pin-project-lite", 1408 "socket2 0.5.10", 1409 - "system-configuration", 1410 "tokio", 1411 "tower-service", 1412 "tracing", 1413 - "windows-registry", 1414 ] 1415 1416 [[package]] ··· 1825 checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" 1826 1827 [[package]] 1828 - name = "linux-raw-sys" 1829 - version = "0.9.4" 1830 - source = "registry+https://github.com/rust-lang/crates.io-index" 1831 - checksum = "cd945864f07fe9f5371a27ad7b52a172b4b499999f1d97574c9fa68373937e12" 1832 - 1833 - [[package]] 1834 name = "litemap" 1835 version = "0.8.0" 1836 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1875 ] 1876 1877 [[package]] 1878 name = "matchers" 1879 version = "0.1.0" 1880 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1931 source = "registry+https://github.com/rust-lang/crates.io-index" 1932 checksum = "dd7399781913e5393588a8d8c6a2867bf85fb38eaf2502fdce465aad2dc6f034" 1933 dependencies = [ 1934 - "base64", 1935 "http-body-util", 1936 "hyper", 1937 "hyper-rustls", ··· 2123 ] 2124 2125 [[package]] 2126 - name = "native-tls" 2127 - version = "0.2.14" 2128 - source = "registry+https://github.com/rust-lang/crates.io-index" 2129 - checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e" 2130 - dependencies = [ 2131 - "libc", 2132 - "log", 2133 - "openssl", 2134 - "openssl-probe", 2135 - "openssl-sys", 2136 - "schannel", 2137 - "security-framework 2.11.1", 2138 - "security-framework-sys", 2139 - "tempfile", 2140 - ] 2141 - 2142 - [[package]] 2143 name = "nom" 2144 version = "7.1.3" 2145 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2239 checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 2240 2241 [[package]] 2242 - name = "openssl" 2243 - version = "0.10.73" 2244 - source = "registry+https://github.com/rust-lang/crates.io-index" 2245 - checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8" 2246 - dependencies = [ 2247 - "bitflags 2.9.1", 2248 - "cfg-if", 2249 - "foreign-types", 2250 - "libc", 2251 - "once_cell", 2252 - "openssl-macros", 2253 - "openssl-sys", 2254 - ] 2255 - 2256 - [[package]] 2257 - name = "openssl-macros" 2258 - version = "0.1.1" 2259 - source = "registry+https://github.com/rust-lang/crates.io-index" 2260 - checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c" 2261 - dependencies = [ 2262 - "proc-macro2", 2263 - "quote", 2264 - "syn 2.0.104", 2265 - ] 2266 - 2267 - [[package]] 2268 name = "openssl-probe" 2269 version = "0.1.6" 2270 source = "registry+https://github.com/rust-lang/crates.io-index" 2271 checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" 2272 - 2273 - [[package]] 2274 - name = "openssl-sys" 2275 - version = "0.9.109" 2276 - source = "registry+https://github.com/rust-lang/crates.io-index" 2277 - checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571" 2278 - dependencies = [ 2279 - "cc", 2280 - "libc", 2281 - "pkg-config", 2282 - "vcpkg", 2283 - ] 2284 2285 [[package]] 2286 name = "overload" ··· 2508 ] 2509 2510 [[package]] 2511 name = "quote" 2512 version = "1.0.40" 2513 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2682 source = "registry+https://github.com/rust-lang/crates.io-index" 2683 checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531" 2684 dependencies = [ 2685 - "base64", 2686 "bytes", 2687 - "encoding_rs", 2688 "futures-core", 2689 - "h2", 2690 - "http", 2691 "http-body", 2692 "http-body-util", 2693 "hyper", 2694 "hyper-rustls", 2695 - "hyper-tls", 2696 "hyper-util", 2697 "js-sys", 2698 "log", 2699 - "mime", 2700 - "native-tls", 2701 "percent-encoding", 2702 "pin-project-lite", 2703 "rustls-pki-types", 2704 "serde", 2705 "serde_json", 2706 "serde_urlencoded", 2707 "sync_wrapper", 2708 "tokio", 2709 - "tokio-native-tls", 2710 "tower", 2711 "tower-http", 2712 "tower-service", 2713 "url", 2714 "wasm-bindgen", 2715 "wasm-bindgen-futures", 2716 "web-sys", 2717 ] 2718 2719 [[package]] ··· 2741 2742 [[package]] 2743 name = "rocketman" 2744 - version = "0.2.3" 2745 dependencies = [ 2746 "anyhow", 2747 "async-trait", ··· 2749 "derive_builder", 2750 "flume", 2751 "futures-util", 2752 - "metrics 0.23.1", 2753 "rand 0.8.5", 2754 "serde", 2755 "serde_json", 2756 "tokio", 2757 - "tokio-tungstenite", 2758 "tracing", 2759 "tracing-subscriber", 2760 "url", ··· 2794 checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" 2795 2796 [[package]] 2797 name = "rustc_version" 2798 version = "0.4.1" 2799 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2811 "bitflags 2.9.1", 2812 "errno", 2813 "libc", 2814 - "linux-raw-sys 0.4.15", 2815 "windows-sys 0.59.0", 2816 ] 2817 2818 [[package]] 2819 - name = "rustix" 2820 - version = "1.0.8" 2821 source = "registry+https://github.com/rust-lang/crates.io-index" 2822 - checksum = "11181fbabf243db407ef8df94a6ce0b2f9a733bd8be4ad02b4eda9602296cac8" 2823 dependencies = [ 2824 - "bitflags 2.9.1", 2825 - "errno", 2826 - "libc", 2827 - "linux-raw-sys 0.9.4", 2828 - "windows-sys 0.60.2", 2829 ] 2830 2831 [[package]] ··· 2838 "once_cell", 2839 "ring", 2840 "rustls-pki-types", 2841 - "rustls-webpki", 2842 "subtle", 2843 "zeroize", 2844 ] 2845 2846 [[package]] 2847 name = "rustls-native-certs" 2848 version = "0.8.1" 2849 source = "registry+https://github.com/rust-lang/crates.io-index" 2850 checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" ··· 2856 ] 2857 2858 [[package]] 2859 name = "rustls-pki-types" 2860 version = "1.12.0" 2861 source = "registry+https://github.com/rust-lang/crates.io-index" 2862 checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" 2863 dependencies = [ 2864 "zeroize", 2865 ] 2866 2867 [[package]] 2868 name = "rustls-webpki" 2869 version = "0.103.4" 2870 source = "registry+https://github.com/rust-lang/crates.io-index" 2871 checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc" ··· 2926 version = "1.2.0" 2927 source = "registry+https://github.com/rust-lang/crates.io-index" 2928 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2929 2930 [[package]] 2931 name = "security-framework" ··· 3219 source = "registry+https://github.com/rust-lang/crates.io-index" 3220 checksum = "ee6798b1838b6a0f69c007c133b8df5866302197e404e8b6ee8ed3e3a5e68dc6" 3221 dependencies = [ 3222 - "base64", 3223 "bytes", 3224 "chrono", 3225 "crc", ··· 3237 "memchr", 3238 "once_cell", 3239 "percent-encoding", 3240 - "rustls", 3241 "serde", 3242 "serde_json", 3243 "sha2", ··· 3297 checksum = "aa003f0038df784eb8fecbbac13affe3da23b45194bd57dba231c8f48199c526" 3298 dependencies = [ 3299 "atoi", 3300 - "base64", 3301 "bitflags 2.9.1", 3302 "byteorder", 3303 "bytes", ··· 3342 checksum = "db58fcd5a53cf07c184b154801ff91347e4c30d17a3562a635ff028ad5deda46" 3343 dependencies = [ 3344 "atoi", 3345 - "base64", 3346 "bitflags 2.9.1", 3347 "byteorder", 3348 "chrono", ··· 3499 ] 3500 3501 [[package]] 3502 - name = "system-configuration" 3503 - version = "0.6.1" 3504 - source = "registry+https://github.com/rust-lang/crates.io-index" 3505 - checksum = "3c879d448e9d986b661742763247d3693ed13609438cf3d006f51f5368a5ba6b" 3506 - dependencies = [ 3507 - "bitflags 2.9.1", 3508 - "core-foundation 0.9.4", 3509 - "system-configuration-sys", 3510 - ] 3511 - 3512 - [[package]] 3513 - name = "system-configuration-sys" 3514 - version = "0.6.0" 3515 - source = "registry+https://github.com/rust-lang/crates.io-index" 3516 - checksum = "8e1d1b10ced5ca923a1fcb8d03e96b8d3268065d724548c0211415ff6ac6bac4" 3517 - dependencies = [ 3518 - "core-foundation-sys", 3519 - "libc", 3520 - ] 3521 - 3522 - [[package]] 3523 name = "tagptr" 3524 version = "0.2.0" 3525 source = "registry+https://github.com/rust-lang/crates.io-index" 3526 checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417" 3527 - 3528 - [[package]] 3529 - name = "tempfile" 3530 - version = "3.20.0" 3531 - source = "registry+https://github.com/rust-lang/crates.io-index" 3532 - checksum = "e8a64e3985349f2441a1a9ef0b853f869006c3855f2cda6862a94d26ebb9d6a1" 3533 - dependencies = [ 3534 - "fastrand", 3535 - "getrandom 0.3.3", 3536 - "once_cell", 3537 - "rustix 1.0.8", 3538 - "windows-sys 0.59.0", 3539 - ] 3540 3541 [[package]] 3542 name = "thiserror" ··· 3690 ] 3691 3692 [[package]] 3693 - name = "tokio-native-tls" 3694 - version = "0.3.1" 3695 source = "registry+https://github.com/rust-lang/crates.io-index" 3696 - checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2" 3697 dependencies = [ 3698 - "native-tls", 3699 "tokio", 3700 ] 3701 3702 [[package]] 3703 - name = "tokio-retry" 3704 - version = "0.3.0" 3705 source = "registry+https://github.com/rust-lang/crates.io-index" 3706 - checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f" 3707 dependencies = [ 3708 - "pin-project", 3709 - "rand 0.8.5", 3710 "tokio", 3711 ] 3712 ··· 3716 source = "registry+https://github.com/rust-lang/crates.io-index" 3717 checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" 3718 dependencies = [ 3719 - "rustls", 3720 "tokio", 3721 ] 3722 ··· 3733 3734 [[package]] 3735 name = "tokio-tungstenite" 3736 version = "0.24.0" 3737 source = "registry+https://github.com/rust-lang/crates.io-index" 3738 checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" 3739 dependencies = [ 3740 "futures-util", 3741 "log", 3742 "tokio", 3743 - "tungstenite", 3744 ] 3745 3746 [[package]] ··· 3807 "bitflags 2.9.1", 3808 "bytes", 3809 "futures-util", 3810 - "http", 3811 "http-body", 3812 "iri-string", 3813 "pin-project-lite", ··· 3909 3910 [[package]] 3911 name = "tungstenite" 3912 version = "0.24.0" 3913 source = "registry+https://github.com/rust-lang/crates.io-index" 3914 checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" ··· 3916 "byteorder", 3917 "bytes", 3918 "data-encoding", 3919 - "http", 3920 "httparse", 3921 "log", 3922 "rand 0.8.5", 3923 "sha1", 3924 "thiserror 1.0.69", 3925 "utf-8", ··· 3938 "atrium-api", 3939 "atrium-xrpc", 3940 "chrono", 3941 - "http", 3942 "ipld-core", 3943 "langtag", 3944 "regex", ··· 4155 ] 4156 4157 [[package]] 4158 name = "web-sys" 4159 version = "0.3.77" 4160 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 4173 "js-sys", 4174 "wasm-bindgen", 4175 ] 4176 4177 [[package]] 4178 name = "webpki-roots" ··· 4201 "either", 4202 "home", 4203 "once_cell", 4204 - "rustix 0.38.44", 4205 ] 4206 4207 [[package]] ··· 4318 dependencies = [ 4319 "windows-core", 4320 "windows-link", 4321 - ] 4322 - 4323 - [[package]] 4324 - name = "windows-registry" 4325 - version = "0.5.3" 4326 - source = "registry+https://github.com/rust-lang/crates.io-index" 4327 - checksum = "5b8a9ed28765efc97bbc954883f4e6796c33a06546ebafacbabee9696967499e" 4328 - dependencies = [ 4329 - "windows-link", 4330 - "windows-result", 4331 - "windows-strings", 4332 ] 4333 4334 [[package]]
··· 84 checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" 85 86 [[package]] 87 + name = "async-compression" 88 + version = "0.4.32" 89 + source = "registry+https://github.com/rust-lang/crates.io-index" 90 + checksum = "5a89bce6054c720275ac2432fbba080a66a2106a44a1b804553930ca6909f4e0" 91 + dependencies = [ 92 + "compression-codecs", 93 + "compression-core", 94 + "futures-core", 95 + "pin-project-lite", 96 + "tokio", 97 + ] 98 + 99 + [[package]] 100 name = "async-lock" 101 version = "3.4.0" 102 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 165 "atrium-common", 166 "atrium-xrpc", 167 "chrono", 168 + "http 1.3.1", 169 "ipld-core", 170 "langtag", 171 "regex", ··· 198 source = "registry+https://github.com/rust-lang/crates.io-index" 199 checksum = "0216ad50ce34e9ff982e171c3659e65dedaa2ed5ac2994524debdc9a9647ffa8" 200 dependencies = [ 201 + "http 1.3.1", 202 "serde", 203 "serde_html_form", 204 "serde_json", ··· 245 "bytes", 246 "form_urlencoded", 247 "futures-util", 248 + "http 1.3.1", 249 "http-body", 250 "http-body-util", 251 "hyper", ··· 277 dependencies = [ 278 "bytes", 279 "futures-core", 280 + "http 1.3.1", 281 "http-body", 282 "http-body-util", 283 "mime", ··· 312 313 [[package]] 314 name = "base64" 315 + version = "0.21.7" 316 + source = "registry+https://github.com/rust-lang/crates.io-index" 317 + checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" 318 + 319 + [[package]] 320 + name = "base64" 321 version = "0.22.1" 322 source = "registry+https://github.com/rust-lang/crates.io-index" 323 checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" ··· 345 "proc-macro2", 346 "quote", 347 "regex", 348 + "rustc-hash 1.1.0", 349 "shlex", 350 "syn 2.0.104", 351 "which", ··· 464 "async-trait", 465 "atmst", 466 "atrium-api", 467 + "base64 0.22.1", 468 "chrono", 469 "cid 0.11.1", 470 "dotenvy", ··· 486 "sqlx", 487 "time", 488 "tokio", 489 + "tokio-tungstenite 0.24.0", 490 "tracing", 491 "tracing-subscriber", 492 "types", ··· 528 version = "1.0.1" 529 source = "registry+https://github.com/rust-lang/crates.io-index" 530 checksum = "9555578bc9e57714c812a1f84e4fc5b4d21fcb063490c624de019f7464c91268" 531 + 532 + [[package]] 533 + name = "cfg_aliases" 534 + version = "0.2.1" 535 + source = "registry+https://github.com/rust-lang/crates.io-index" 536 + checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" 537 538 [[package]] 539 name = "chrono" ··· 612 ] 613 614 [[package]] 615 + name = "compression-codecs" 616 + version = "0.4.31" 617 + source = "registry+https://github.com/rust-lang/crates.io-index" 618 + checksum = "ef8a506ec4b81c460798f572caead636d57d3d7e940f998160f52bd254bf2d23" 619 + dependencies = [ 620 + "compression-core", 621 + "flate2", 622 + "memchr", 623 + ] 624 + 625 + [[package]] 626 + name = "compression-core" 627 + version = "0.4.29" 628 + source = "registry+https://github.com/rust-lang/crates.io-index" 629 + checksum = "e47641d3deaf41fb1538ac1f54735925e275eaf3bf4d55c81b137fba797e5cbb" 630 + 631 + [[package]] 632 name = "concurrent-queue" 633 version = "2.5.0" 634 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 709 checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" 710 711 [[package]] 712 + name = "crc32fast" 713 + version = "1.5.0" 714 + source = "registry+https://github.com/rust-lang/crates.io-index" 715 + checksum = "9481c1c90cbf2ac953f07c8d4a58aa3945c425b7185c9154d67a65e4230da511" 716 + dependencies = [ 717 + "cfg-if", 718 + ] 719 + 720 + [[package]] 721 name = "cron" 722 version = "0.12.1" 723 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 977 ] 978 979 [[package]] 980 name = "equivalent" 981 version = "1.0.2" 982 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1025 ] 1026 1027 [[package]] 1028 + name = "flate2" 1029 + version = "1.1.2" 1030 source = "registry+https://github.com/rust-lang/crates.io-index" 1031 + checksum = "4a3d7db9596fecd151c5f638c0ee5d5bd487b6e0ea232e5dc96d5250f6f94b1d" 1032 + dependencies = [ 1033 + "crc32fast", 1034 + "miniz_oxide", 1035 + ] 1036 1037 [[package]] 1038 name = "flume" ··· 1059 checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" 1060 1061 [[package]] 1062 name = "form_urlencoded" 1063 version = "1.2.1" 1064 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1217 checksum = "26145e563e54f2cadc477553f1ec5ee650b00862f0a58bcd12cbdc5f0ea2d2f4" 1218 dependencies = [ 1219 "cfg-if", 1220 + "js-sys", 1221 "libc", 1222 "r-efi", 1223 "wasi 0.14.2+wasi-0.2.4", 1224 + "wasm-bindgen", 1225 ] 1226 1227 [[package]] ··· 1247 "fnv", 1248 "futures-core", 1249 "futures-sink", 1250 + "http 1.3.1", 1251 "indexmap", 1252 "slab", 1253 "tokio", ··· 1322 1323 [[package]] 1324 name = "http" 1325 + version = "0.2.12" 1326 + source = "registry+https://github.com/rust-lang/crates.io-index" 1327 + checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" 1328 + dependencies = [ 1329 + "bytes", 1330 + "fnv", 1331 + "itoa", 1332 + ] 1333 + 1334 + [[package]] 1335 + name = "http" 1336 version = "1.3.1" 1337 source = "registry+https://github.com/rust-lang/crates.io-index" 1338 checksum = "f4a85d31aea989eead29a3aaf9e1115a180df8282431156e533de47660892565" ··· 1349 checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" 1350 dependencies = [ 1351 "bytes", 1352 + "http 1.3.1", 1353 ] 1354 1355 [[package]] ··· 1360 dependencies = [ 1361 "bytes", 1362 "futures-core", 1363 + "http 1.3.1", 1364 "http-body", 1365 "pin-project-lite", 1366 ] ··· 1387 "futures-channel", 1388 "futures-util", 1389 "h2", 1390 + "http 1.3.1", 1391 "http-body", 1392 "httparse", 1393 "httpdate", ··· 1404 source = "registry+https://github.com/rust-lang/crates.io-index" 1405 checksum = "e3c93eb611681b207e1fe55d5a71ecf91572ec8a6705cdb6857f7d8d5242cf58" 1406 dependencies = [ 1407 + "http 1.3.1", 1408 "hyper", 1409 "hyper-util", 1410 + "rustls 0.23.29", 1411 + "rustls-native-certs 0.8.1", 1412 "rustls-pki-types", 1413 "tokio", 1414 + "tokio-rustls 0.26.2", 1415 "tower-service", 1416 + "webpki-roots 1.0.2", 1417 ] 1418 1419 [[package]] ··· 1422 source = "registry+https://github.com/rust-lang/crates.io-index" 1423 checksum = "7f66d5bd4c6f02bf0542fad85d626775bab9258cf795a4256dcaf3161114d1df" 1424 dependencies = [ 1425 + "base64 0.22.1", 1426 "bytes", 1427 "futures-channel", 1428 "futures-core", 1429 "futures-util", 1430 + "http 1.3.1", 1431 "http-body", 1432 "hyper", 1433 "ipnet", ··· 1435 "percent-encoding", 1436 "pin-project-lite", 1437 "socket2 0.5.10", 1438 "tokio", 1439 "tower-service", 1440 "tracing", 1441 ] 1442 1443 [[package]] ··· 1852 checksum = "d26c52dbd32dccf2d10cac7725f8eae5296885fb5703b261f7d0a0739ec807ab" 1853 1854 [[package]] 1855 name = "litemap" 1856 version = "0.8.0" 1857 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1896 ] 1897 1898 [[package]] 1899 + name = "lru-slab" 1900 + version = "0.1.2" 1901 + source = "registry+https://github.com/rust-lang/crates.io-index" 1902 + checksum = "112b39cec0b298b6c1999fee3e31427f74f676e4cb9879ed1a121b43661a4154" 1903 + 1904 + [[package]] 1905 name = "matchers" 1906 version = "0.1.0" 1907 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 1958 source = "registry+https://github.com/rust-lang/crates.io-index" 1959 checksum = "dd7399781913e5393588a8d8c6a2867bf85fb38eaf2502fdce465aad2dc6f034" 1960 dependencies = [ 1961 + "base64 0.22.1", 1962 "http-body-util", 1963 "hyper", 1964 "hyper-rustls", ··· 2150 ] 2151 2152 [[package]] 2153 name = "nom" 2154 version = "7.1.3" 2155 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2249 checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" 2250 2251 [[package]] 2252 name = "openssl-probe" 2253 version = "0.1.6" 2254 source = "registry+https://github.com/rust-lang/crates.io-index" 2255 checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e" 2256 2257 [[package]] 2258 name = "overload" ··· 2480 ] 2481 2482 [[package]] 2483 + name = "quinn" 2484 + version = "0.11.9" 2485 + source = "registry+https://github.com/rust-lang/crates.io-index" 2486 + checksum = "b9e20a958963c291dc322d98411f541009df2ced7b5a4f2bd52337638cfccf20" 2487 + dependencies = [ 2488 + "bytes", 2489 + "cfg_aliases", 2490 + "pin-project-lite", 2491 + "quinn-proto", 2492 + "quinn-udp", 2493 + "rustc-hash 2.1.1", 2494 + "rustls 0.23.29", 2495 + "socket2 0.5.10", 2496 + "thiserror 2.0.12", 2497 + "tokio", 2498 + "tracing", 2499 + "web-time", 2500 + ] 2501 + 2502 + [[package]] 2503 + name = "quinn-proto" 2504 + version = "0.11.13" 2505 + source = "registry+https://github.com/rust-lang/crates.io-index" 2506 + checksum = "f1906b49b0c3bc04b5fe5d86a77925ae6524a19b816ae38ce1e426255f1d8a31" 2507 + dependencies = [ 2508 + "bytes", 2509 + "getrandom 0.3.3", 2510 + "lru-slab", 2511 + "rand 0.9.1", 2512 + "ring", 2513 + "rustc-hash 2.1.1", 2514 + "rustls 0.23.29", 2515 + "rustls-pki-types", 2516 + "slab", 2517 + "thiserror 2.0.12", 2518 + "tinyvec", 2519 + "tracing", 2520 + "web-time", 2521 + ] 2522 + 2523 + [[package]] 2524 + name = "quinn-udp" 2525 + version = "0.5.14" 2526 + source = "registry+https://github.com/rust-lang/crates.io-index" 2527 + checksum = "addec6a0dcad8a8d96a771f815f0eaf55f9d1805756410b39f5fa81332574cbd" 2528 + dependencies = [ 2529 + "cfg_aliases", 2530 + "libc", 2531 + "once_cell", 2532 + "socket2 0.5.10", 2533 + "tracing", 2534 + "windows-sys 0.60.2", 2535 + ] 2536 + 2537 + [[package]] 2538 name = "quote" 2539 version = "1.0.40" 2540 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2709 source = "registry+https://github.com/rust-lang/crates.io-index" 2710 checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531" 2711 dependencies = [ 2712 + "async-compression", 2713 + "base64 0.22.1", 2714 "bytes", 2715 "futures-core", 2716 + "futures-util", 2717 + "http 1.3.1", 2718 "http-body", 2719 "http-body-util", 2720 "hyper", 2721 "hyper-rustls", 2722 "hyper-util", 2723 "js-sys", 2724 "log", 2725 "percent-encoding", 2726 "pin-project-lite", 2727 + "quinn", 2728 + "rustls 0.23.29", 2729 "rustls-pki-types", 2730 "serde", 2731 "serde_json", 2732 "serde_urlencoded", 2733 "sync_wrapper", 2734 "tokio", 2735 + "tokio-rustls 0.26.2", 2736 + "tokio-util", 2737 "tower", 2738 "tower-http", 2739 "tower-service", 2740 "url", 2741 "wasm-bindgen", 2742 "wasm-bindgen-futures", 2743 + "wasm-streams", 2744 "web-sys", 2745 + "webpki-roots 1.0.2", 2746 ] 2747 2748 [[package]] ··· 2770 2771 [[package]] 2772 name = "rocketman" 2773 + version = "0.2.5" 2774 + source = "registry+https://github.com/rust-lang/crates.io-index" 2775 + checksum = "90cfc4ee9daf6e9d0ee217b9709aa3bd6c921e6926aa15c6ff5ba9162c2c649a" 2776 dependencies = [ 2777 "anyhow", 2778 "async-trait", ··· 2780 "derive_builder", 2781 "flume", 2782 "futures-util", 2783 + "metrics 0.24.2", 2784 "rand 0.8.5", 2785 "serde", 2786 "serde_json", 2787 "tokio", 2788 + "tokio-tungstenite 0.20.1", 2789 "tracing", 2790 "tracing-subscriber", 2791 "url", ··· 2825 checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2" 2826 2827 [[package]] 2828 + name = "rustc-hash" 2829 + version = "2.1.1" 2830 + source = "registry+https://github.com/rust-lang/crates.io-index" 2831 + checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" 2832 + 2833 + [[package]] 2834 name = "rustc_version" 2835 version = "0.4.1" 2836 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 2848 "bitflags 2.9.1", 2849 "errno", 2850 "libc", 2851 + "linux-raw-sys", 2852 "windows-sys 0.59.0", 2853 ] 2854 2855 [[package]] 2856 + name = "rustls" 2857 + version = "0.21.12" 2858 source = "registry+https://github.com/rust-lang/crates.io-index" 2859 + checksum = "3f56a14d1f48b391359b22f731fd4bd7e43c97f3c50eee276f3aa09c94784d3e" 2860 dependencies = [ 2861 + "log", 2862 + "ring", 2863 + "rustls-webpki 0.101.7", 2864 + "sct", 2865 ] 2866 2867 [[package]] ··· 2874 "once_cell", 2875 "ring", 2876 "rustls-pki-types", 2877 + "rustls-webpki 0.103.4", 2878 "subtle", 2879 "zeroize", 2880 ] 2881 2882 [[package]] 2883 name = "rustls-native-certs" 2884 + version = "0.6.3" 2885 + source = "registry+https://github.com/rust-lang/crates.io-index" 2886 + checksum = "a9aace74cb666635c918e9c12bc0d348266037aa8eb599b5cba565709a8dff00" 2887 + dependencies = [ 2888 + "openssl-probe", 2889 + "rustls-pemfile", 2890 + "schannel", 2891 + "security-framework 2.11.1", 2892 + ] 2893 + 2894 + [[package]] 2895 + name = "rustls-native-certs" 2896 version = "0.8.1" 2897 source = "registry+https://github.com/rust-lang/crates.io-index" 2898 checksum = "7fcff2dd52b58a8d98a70243663a0d234c4e2b79235637849d15913394a247d3" ··· 2904 ] 2905 2906 [[package]] 2907 + name = "rustls-pemfile" 2908 + version = "1.0.4" 2909 + source = "registry+https://github.com/rust-lang/crates.io-index" 2910 + checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" 2911 + dependencies = [ 2912 + "base64 0.21.7", 2913 + ] 2914 + 2915 + [[package]] 2916 name = "rustls-pki-types" 2917 version = "1.12.0" 2918 source = "registry+https://github.com/rust-lang/crates.io-index" 2919 checksum = "229a4a4c221013e7e1f1a043678c5cc39fe5171437c88fb47151a21e6f5b5c79" 2920 dependencies = [ 2921 + "web-time", 2922 "zeroize", 2923 ] 2924 2925 [[package]] 2926 name = "rustls-webpki" 2927 + version = "0.101.7" 2928 + source = "registry+https://github.com/rust-lang/crates.io-index" 2929 + checksum = "8b6275d1ee7a1cd780b64aca7726599a1dbc893b1e64144529e55c3c2f745765" 2930 + dependencies = [ 2931 + "ring", 2932 + "untrusted", 2933 + ] 2934 + 2935 + [[package]] 2936 + name = "rustls-webpki" 2937 version = "0.103.4" 2938 source = "registry+https://github.com/rust-lang/crates.io-index" 2939 checksum = "0a17884ae0c1b773f1ccd2bd4a8c72f16da897310a98b0e84bf349ad5ead92fc" ··· 2994 version = "1.2.0" 2995 source = "registry+https://github.com/rust-lang/crates.io-index" 2996 checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" 2997 + 2998 + [[package]] 2999 + name = "sct" 3000 + version = "0.7.1" 3001 + source = "registry+https://github.com/rust-lang/crates.io-index" 3002 + checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" 3003 + dependencies = [ 3004 + "ring", 3005 + "untrusted", 3006 + ] 3007 3008 [[package]] 3009 name = "security-framework" ··· 3297 source = "registry+https://github.com/rust-lang/crates.io-index" 3298 checksum = "ee6798b1838b6a0f69c007c133b8df5866302197e404e8b6ee8ed3e3a5e68dc6" 3299 dependencies = [ 3300 + "base64 0.22.1", 3301 "bytes", 3302 "chrono", 3303 "crc", ··· 3315 "memchr", 3316 "once_cell", 3317 "percent-encoding", 3318 + "rustls 0.23.29", 3319 "serde", 3320 "serde_json", 3321 "sha2", ··· 3375 checksum = "aa003f0038df784eb8fecbbac13affe3da23b45194bd57dba231c8f48199c526" 3376 dependencies = [ 3377 "atoi", 3378 + "base64 0.22.1", 3379 "bitflags 2.9.1", 3380 "byteorder", 3381 "bytes", ··· 3420 checksum = "db58fcd5a53cf07c184b154801ff91347e4c30d17a3562a635ff028ad5deda46" 3421 dependencies = [ 3422 "atoi", 3423 + "base64 0.22.1", 3424 "bitflags 2.9.1", 3425 "byteorder", 3426 "chrono", ··· 3577 ] 3578 3579 [[package]] 3580 name = "tagptr" 3581 version = "0.2.0" 3582 source = "registry+https://github.com/rust-lang/crates.io-index" 3583 checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417" 3584 3585 [[package]] 3586 name = "thiserror" ··· 3734 ] 3735 3736 [[package]] 3737 + name = "tokio-retry" 3738 + version = "0.3.0" 3739 source = "registry+https://github.com/rust-lang/crates.io-index" 3740 + checksum = "7f57eb36ecbe0fc510036adff84824dd3c24bb781e21bfa67b69d556aa85214f" 3741 dependencies = [ 3742 + "pin-project", 3743 + "rand 0.8.5", 3744 "tokio", 3745 ] 3746 3747 [[package]] 3748 + name = "tokio-rustls" 3749 + version = "0.24.1" 3750 source = "registry+https://github.com/rust-lang/crates.io-index" 3751 + checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" 3752 dependencies = [ 3753 + "rustls 0.21.12", 3754 "tokio", 3755 ] 3756 ··· 3760 source = "registry+https://github.com/rust-lang/crates.io-index" 3761 checksum = "8e727b36a1a0e8b74c376ac2211e40c2c8af09fb4013c60d910495810f008e9b" 3762 dependencies = [ 3763 + "rustls 0.23.29", 3764 "tokio", 3765 ] 3766 ··· 3777 3778 [[package]] 3779 name = "tokio-tungstenite" 3780 + version = "0.20.1" 3781 + source = "registry+https://github.com/rust-lang/crates.io-index" 3782 + checksum = "212d5dcb2a1ce06d81107c3d0ffa3121fe974b73f068c8282cb1c32328113b6c" 3783 + dependencies = [ 3784 + "futures-util", 3785 + "log", 3786 + "rustls 0.21.12", 3787 + "rustls-native-certs 0.6.3", 3788 + "tokio", 3789 + "tokio-rustls 0.24.1", 3790 + "tungstenite 0.20.1", 3791 + "webpki-roots 0.25.4", 3792 + ] 3793 + 3794 + [[package]] 3795 + name = "tokio-tungstenite" 3796 version = "0.24.0" 3797 source = "registry+https://github.com/rust-lang/crates.io-index" 3798 checksum = "edc5f74e248dc973e0dbb7b74c7e0d6fcc301c694ff50049504004ef4d0cdcd9" 3799 dependencies = [ 3800 "futures-util", 3801 "log", 3802 + "rustls 0.23.29", 3803 + "rustls-pki-types", 3804 "tokio", 3805 + "tokio-rustls 0.26.2", 3806 + "tungstenite 0.24.0", 3807 + "webpki-roots 0.26.11", 3808 ] 3809 3810 [[package]] ··· 3871 "bitflags 2.9.1", 3872 "bytes", 3873 "futures-util", 3874 + "http 1.3.1", 3875 "http-body", 3876 "iri-string", 3877 "pin-project-lite", ··· 3973 3974 [[package]] 3975 name = "tungstenite" 3976 + version = "0.20.1" 3977 + source = "registry+https://github.com/rust-lang/crates.io-index" 3978 + checksum = "9e3dac10fd62eaf6617d3a904ae222845979aec67c615d1c842b4002c7666fb9" 3979 + dependencies = [ 3980 + "byteorder", 3981 + "bytes", 3982 + "data-encoding", 3983 + "http 0.2.12", 3984 + "httparse", 3985 + "log", 3986 + "rand 0.8.5", 3987 + "rustls 0.21.12", 3988 + "sha1", 3989 + "thiserror 1.0.69", 3990 + "url", 3991 + "utf-8", 3992 + ] 3993 + 3994 + [[package]] 3995 + name = "tungstenite" 3996 version = "0.24.0" 3997 source = "registry+https://github.com/rust-lang/crates.io-index" 3998 checksum = "18e5b8366ee7a95b16d32197d0b2604b43a0be89dc5fac9f8e96ccafbaedda8a" ··· 4000 "byteorder", 4001 "bytes", 4002 "data-encoding", 4003 + "http 1.3.1", 4004 "httparse", 4005 "log", 4006 "rand 0.8.5", 4007 + "rustls 0.23.29", 4008 + "rustls-pki-types", 4009 "sha1", 4010 "thiserror 1.0.69", 4011 "utf-8", ··· 4024 "atrium-api", 4025 "atrium-xrpc", 4026 "chrono", 4027 + "http 1.3.1", 4028 "ipld-core", 4029 "langtag", 4030 "regex", ··· 4241 ] 4242 4243 [[package]] 4244 + name = "wasm-streams" 4245 + version = "0.4.2" 4246 + source = "registry+https://github.com/rust-lang/crates.io-index" 4247 + checksum = "15053d8d85c7eccdbefef60f06769760a563c7f0a9d6902a13d35c7800b0ad65" 4248 + dependencies = [ 4249 + "futures-util", 4250 + "js-sys", 4251 + "wasm-bindgen", 4252 + "wasm-bindgen-futures", 4253 + "web-sys", 4254 + ] 4255 + 4256 + [[package]] 4257 name = "web-sys" 4258 version = "0.3.77" 4259 source = "registry+https://github.com/rust-lang/crates.io-index" ··· 4272 "js-sys", 4273 "wasm-bindgen", 4274 ] 4275 + 4276 + [[package]] 4277 + name = "webpki-roots" 4278 + version = "0.25.4" 4279 + source = "registry+https://github.com/rust-lang/crates.io-index" 4280 + checksum = "5f20c57d8d7db6d3b86154206ae5d8fba62dd39573114de97c2cb0578251f8e1" 4281 4282 [[package]] 4283 name = "webpki-roots" ··· 4306 "either", 4307 "home", 4308 "once_cell", 4309 + "rustix", 4310 ] 4311 4312 [[package]] ··· 4423 dependencies = [ 4424 "windows-core", 4425 "windows-link", 4426 ] 4427 4428 [[package]]
-47
services/Cargo.toml
··· 1 - [workspace] 2 - members = ["cadet", "satellite", "types"] 3 - resolver = "2" 4 - 5 - [workspace.dependencies] 6 - # Shared dependencies 7 - tokio = { version = "1.0", features = ["rt-multi-thread", "macros", "time"] } 8 - axum = { version = "0.8", features = ["macros"] } 9 - tower-http = { version = "0.6", features = ["cors"] } 10 - sqlx = { version = "0.8", features = [ 11 - "runtime-tokio", 12 - "postgres", 13 - "uuid", 14 - "chrono", 15 - "tls-rustls", 16 - ] } 17 - serde = { version = "1.0", features = ["derive"] } 18 - anyhow = "1.0" 19 - serde_json = "1.0" 20 - tracing = "0.1" 21 - tracing-subscriber = "0.3" 22 - metrics = "0.23" 23 - reqwest.workspace = true 24 - url = "2.5" 25 - rand = "0.8" 26 - flume = "0.11" 27 - async-trait = "0.1" 28 - time = "0.3" 29 - dotenvy = "0.15" 30 - tokio-tungstenite.workspace = true 31 - atrium-api = "0.25" 32 - chrono = { version = "0.4", features = ["serde"] } 33 - uuid = { version = "1.0", features = ["v4", "serde"] } 34 - types = { path = "types" } 35 - rocketman = "0.2.5" 36 - 37 - # CAR and IPLD dependencies 38 - iroh-car = "0.4" 39 - libipld = { version = "0.16", features = ["dag-cbor", "dag-json"] } 40 - cid = "0.11" 41 - base64 = "0.22" 42 - 43 - # Redis for job queues and caching 44 - redis = { version = "0.24", features = ["tokio-comp", "connection-manager"] } 45 - 46 - # Install sqlx-cli globally for migrations 47 - # Run: cargo install sqlx-cli --features postgres
···
-3
services/cadet/Dockerfile
··· 68 # Force SQLx to use offline mode with workspace cache 69 ENV SQLX_OFFLINE=true 70 71 - # copy sqlx in 72 - COPY ./.sqlx ./services/cadet/.sqlx 73 - 74 # Debug platform detection and run build 75 RUN echo "DEBUG Before target.sh: TARGETPLATFORM=$TARGETPLATFORM TARGETARCH=$TARGETARCH" && \ 76 . ./target.sh && \
··· 68 # Force SQLx to use offline mode with workspace cache 69 ENV SQLX_OFFLINE=true 70 71 # Debug platform detection and run build 72 RUN echo "DEBUG Before target.sh: TARGETPLATFORM=$TARGETPLATFORM TARGETARCH=$TARGETARCH" && \ 73 . ./target.sh && \
+9 -7
services/cadet/package.json
··· 2 "name": "@repo/cadet", 3 "private": true, 4 "scripts": { 5 - "build": "cargo build --release", 6 - "build:rust": "cargo build --release", 7 - "dev": "cargo watch -x 'run'", 8 - "test": "cargo test", 9 - "test:rust": "cargo test" 10 - } 11 - }
··· 2 "name": "@repo/cadet", 3 "private": true, 4 "scripts": { 5 + "install": ":", 6 + "build": "cargo build --release --manifest-path ../../Cargo.toml -p cadet", 7 + "build:rust": "cargo build --release --manifest-path ../../Cargo.toml -p cadet", 8 + "dev": "cargo watch -x 'run -p cadet'", 9 + "test": "cargo test -p cadet", 10 + "test:rust": "cargo test -p cadet" 11 + }, 12 + "packageManager": "pnpm@10.18.0" 13 + }
+9 -7
services/satellite/package.json
··· 2 "name": "@repo/satellite", 3 "private": true, 4 "scripts": { 5 - "build": "cargo build --release", 6 - "build:rust": "cargo build --release", 7 - "dev": "cargo watch -x 'run'", 8 - "test": "cargo test", 9 - "test:rust": "cargo test" 10 - } 11 - }
··· 2 "name": "@repo/satellite", 3 "private": true, 4 "scripts": { 5 + "install": ":", 6 + "build": "cargo build --release --manifest-path ../../Cargo.toml -p satellite", 7 + "build:rust": "cargo build --release --manifest-path ../../Cargo.toml -p satellite", 8 + "dev": "cargo watch -x 'run -p satellite'", 9 + "test": "cargo test -p satellite", 10 + "test:rust": "cargo test -p satellite" 11 + }, 12 + "packageManager": "pnpm@10.18.0" 13 + }
+1 -1
turbo.json
··· 10 }, 11 "build:rust": { 12 "dependsOn": ["^build"], 13 - "outputs": ["../target/**"] 14 }, 15 "check-types": { 16 "dependsOn": ["^check-types"]
··· 10 }, 11 "build:rust": { 12 "dependsOn": ["^build"], 13 + "outputs": ["../target/**", "./target/**"] 14 }, 15 "check-types": { 16 "dependsOn": ["^check-types"]