+5
-561
Cargo.lock
+5
-561
Cargo.lock
···
607
607
]
608
608
609
609
[[package]]
610
-
name = "async-compression"
611
-
version = "0.4.32"
612
-
source = "registry+https://github.com/rust-lang/crates.io-index"
613
-
checksum = "5a89bce6054c720275ac2432fbba080a66a2106a44a1b804553930ca6909f4e0"
614
-
dependencies = [
615
-
"compression-codecs",
616
-
"compression-core",
617
-
"futures-core",
618
-
"pin-project-lite",
619
-
"tokio",
620
-
]
621
-
622
-
[[package]]
623
-
name = "async-lock"
624
-
version = "3.4.1"
625
-
source = "registry+https://github.com/rust-lang/crates.io-index"
626
-
checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc"
627
-
dependencies = [
628
-
"event-listener",
629
-
"event-listener-strategy",
630
-
"pin-project-lite",
631
-
]
632
-
633
-
[[package]]
634
610
name = "async-nats"
635
611
version = "0.39.0"
636
612
source = "registry+https://github.com/rust-lang/crates.io-index"
···
734
710
checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
735
711
736
712
[[package]]
737
-
name = "atrium-api"
738
-
version = "0.25.5"
739
-
source = "registry+https://github.com/rust-lang/crates.io-index"
740
-
checksum = "8bceed6a87be6213040945254aa94191490fea22b7f49dec584e349f336cc17a"
741
-
dependencies = [
742
-
"atrium-common",
743
-
"atrium-xrpc",
744
-
"chrono",
745
-
"http 1.3.1",
746
-
"ipld-core",
747
-
"langtag",
748
-
"regex",
749
-
"serde",
750
-
"serde_bytes",
751
-
"serde_json",
752
-
"thiserror 1.0.69",
753
-
"tokio",
754
-
"trait-variant",
755
-
]
756
-
757
-
[[package]]
758
-
name = "atrium-common"
759
-
version = "0.1.2"
760
-
source = "registry+https://github.com/rust-lang/crates.io-index"
761
-
checksum = "9ed5610654043faa396a5a15afac0ac646d76aebe45aebd7cef4f8b96b0ab7f4"
762
-
dependencies = [
763
-
"dashmap",
764
-
"lru",
765
-
"moka",
766
-
"thiserror 1.0.69",
767
-
"tokio",
768
-
"trait-variant",
769
-
"web-time",
770
-
]
771
-
772
-
[[package]]
773
-
name = "atrium-xrpc"
774
-
version = "0.12.3"
775
-
source = "registry+https://github.com/rust-lang/crates.io-index"
776
-
checksum = "0216ad50ce34e9ff982e171c3659e65dedaa2ed5ac2994524debdc9a9647ffa8"
777
-
dependencies = [
778
-
"http 1.3.1",
779
-
"serde",
780
-
"serde_html_form",
781
-
"serde_json",
782
-
"thiserror 1.0.69",
783
-
"trait-variant",
784
-
]
785
-
786
-
[[package]]
787
-
name = "atrium-xrpc-client"
788
-
version = "0.5.14"
789
-
source = "registry+https://github.com/rust-lang/crates.io-index"
790
-
checksum = "e099e5171f79faef52364ef0657a4cab086a71b384a779a29597a91b780de0d5"
791
-
dependencies = [
792
-
"atrium-xrpc",
793
-
"reqwest",
794
-
]
795
-
796
-
[[package]]
797
713
name = "attohttpc"
798
714
version = "0.28.5"
799
715
source = "registry+https://github.com/rust-lang/crates.io-index"
···
853
769
"object",
854
770
"rustc-demangle",
855
771
"windows-link",
856
-
]
857
-
858
-
[[package]]
859
-
name = "base-x"
860
-
version = "0.2.11"
861
-
source = "registry+https://github.com/rust-lang/crates.io-index"
862
-
checksum = "4cbbc9d0964165b47557570cce6c952866c2678457aca742aafc9fb771d30270"
863
-
864
-
[[package]]
865
-
name = "base256emoji"
866
-
version = "1.0.2"
867
-
source = "registry+https://github.com/rust-lang/crates.io-index"
868
-
checksum = "b5e9430d9a245a77c92176e649af6e275f20839a48389859d1661e9a128d077c"
869
-
dependencies = [
870
-
"const-str",
871
-
"match-lookup",
872
772
]
873
773
874
774
[[package]]
···
1213
1113
]
1214
1114
1215
1115
[[package]]
1216
-
name = "cid"
1217
-
version = "0.11.1"
1218
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1219
-
checksum = "3147d8272e8fa0ccd29ce51194dd98f79ddfb8191ba9e3409884e751798acf3a"
1220
-
dependencies = [
1221
-
"core2",
1222
-
"multibase",
1223
-
"multihash",
1224
-
"serde",
1225
-
"serde_bytes",
1226
-
"unsigned-varint",
1227
-
]
1228
-
1229
-
[[package]]
1230
1116
name = "cipher"
1231
1117
version = "0.4.4"
1232
1118
source = "registry+https://github.com/rust-lang/crates.io-index"
···
1354
1240
]
1355
1241
1356
1242
[[package]]
1357
-
name = "compression-codecs"
1358
-
version = "0.4.31"
1359
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1360
-
checksum = "ef8a506ec4b81c460798f572caead636d57d3d7e940f998160f52bd254bf2d23"
1361
-
dependencies = [
1362
-
"compression-core",
1363
-
"flate2",
1364
-
"memchr",
1365
-
]
1366
-
1367
-
[[package]]
1368
-
name = "compression-core"
1369
-
version = "0.4.29"
1370
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1371
-
checksum = "e47641d3deaf41fb1538ac1f54735925e275eaf3bf4d55c81b137fba797e5cbb"
1372
-
1373
-
[[package]]
1374
1243
name = "concurrent-queue"
1375
1244
version = "2.5.0"
1376
1245
source = "registry+https://github.com/rust-lang/crates.io-index"
···
1404
1273
"once_cell",
1405
1274
"tiny-keccak",
1406
1275
]
1407
-
1408
-
[[package]]
1409
-
name = "const-str"
1410
-
version = "0.4.3"
1411
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1412
-
checksum = "2f421161cb492475f1661ddc9815a745a1c894592070661180fdec3d4872e9c3"
1413
1276
1414
1277
[[package]]
1415
1278
name = "convert_case"
···
1471
1334
checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
1472
1335
1473
1336
[[package]]
1474
-
name = "core2"
1475
-
version = "0.4.0"
1476
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1477
-
checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505"
1478
-
dependencies = [
1479
-
"memchr",
1480
-
]
1481
-
1482
-
[[package]]
1483
1337
name = "cpufeatures"
1484
1338
version = "0.2.17"
1485
1339
source = "registry+https://github.com/rust-lang/crates.io-index"
···
1642
1496
]
1643
1497
1644
1498
[[package]]
1645
-
name = "dashmap"
1646
-
version = "6.1.0"
1647
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1648
-
checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf"
1649
-
dependencies = [
1650
-
"cfg-if",
1651
-
"crossbeam-utils",
1652
-
"hashbrown 0.14.5",
1653
-
"lock_api",
1654
-
"once_cell",
1655
-
"parking_lot_core",
1656
-
]
1657
-
1658
-
[[package]]
1659
1499
name = "data-encoding"
1660
1500
version = "2.9.0"
1661
1501
source = "registry+https://github.com/rust-lang/crates.io-index"
1662
1502
checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"
1663
1503
1664
1504
[[package]]
1665
-
name = "data-encoding-macro"
1666
-
version = "0.1.18"
1667
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1668
-
checksum = "47ce6c96ea0102f01122a185683611bd5ac8d99e62bc59dd12e6bda344ee673d"
1669
-
dependencies = [
1670
-
"data-encoding",
1671
-
"data-encoding-macro-internal",
1672
-
]
1673
-
1674
-
[[package]]
1675
-
name = "data-encoding-macro-internal"
1676
-
version = "0.1.16"
1677
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1678
-
checksum = "8d162beedaa69905488a8da94f5ac3edb4dd4788b732fadb7bd120b2625c1976"
1679
-
dependencies = [
1680
-
"data-encoding",
1681
-
"syn 2.0.106",
1682
-
]
1683
-
1684
-
[[package]]
1685
1505
name = "debug_unsafe"
1686
1506
version = "0.1.3"
1687
1507
source = "registry+https://github.com/rust-lang/crates.io-index"
···
1980
1800
]
1981
1801
1982
1802
[[package]]
1983
-
name = "event-listener-strategy"
1984
-
version = "0.5.4"
1985
-
source = "registry+https://github.com/rust-lang/crates.io-index"
1986
-
checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93"
1987
-
dependencies = [
1988
-
"event-listener",
1989
-
"pin-project-lite",
1990
-
]
1991
-
1992
-
[[package]]
1993
1803
name = "extended"
1994
1804
version = "0.1.0"
1995
1805
source = "registry+https://github.com/rust-lang/crates.io-index"
···
2099
1909
checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2"
2100
1910
2101
1911
[[package]]
2102
-
name = "foreign-types"
2103
-
version = "0.3.2"
2104
-
source = "registry+https://github.com/rust-lang/crates.io-index"
2105
-
checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1"
2106
-
dependencies = [
2107
-
"foreign-types-shared",
2108
-
]
2109
-
2110
-
[[package]]
2111
-
name = "foreign-types-shared"
2112
-
version = "0.1.1"
2113
-
source = "registry+https://github.com/rust-lang/crates.io-index"
2114
-
checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b"
2115
-
2116
-
[[package]]
2117
1912
name = "form_urlencoded"
2118
1913
version = "1.2.2"
2119
1914
source = "registry+https://github.com/rust-lang/crates.io-index"
···
2466
2261
]
2467
2262
2468
2263
[[package]]
2469
-
name = "headers"
2470
-
version = "0.3.9"
2471
-
source = "registry+https://github.com/rust-lang/crates.io-index"
2472
-
checksum = "06683b93020a07e3dbcf5f8c0f6d40080d725bea7936fc01ad345c01b97dc270"
2473
-
dependencies = [
2474
-
"base64 0.21.7",
2475
-
"bytes",
2476
-
"headers-core",
2477
-
"http 0.2.12",
2478
-
"httpdate",
2479
-
"mime",
2480
-
"sha1",
2481
-
]
2482
-
2483
-
[[package]]
2484
-
name = "headers-core"
2485
-
version = "0.2.0"
2486
-
source = "registry+https://github.com/rust-lang/crates.io-index"
2487
-
checksum = "e7f66481bfee273957b1f20485a4ff3362987f85b2c236580d81b4eb7a326429"
2488
-
dependencies = [
2489
-
"http 0.2.12",
2490
-
]
2491
-
2492
-
[[package]]
2493
2264
name = "heapless"
2494
2265
version = "0.8.0"
2495
2266
source = "registry+https://github.com/rust-lang/crates.io-index"
···
2639
2410
"futures-channel",
2640
2411
"futures-core",
2641
2412
"futures-util",
2642
-
"h2 0.3.27",
2643
2413
"http 0.2.12",
2644
2414
"http-body 0.4.6",
2645
2415
"httparse",
···
2708
2478
]
2709
2479
2710
2480
[[package]]
2711
-
name = "hyper-tls"
2712
-
version = "0.6.0"
2713
-
source = "registry+https://github.com/rust-lang/crates.io-index"
2714
-
checksum = "70206fc6890eaca9fde8a0bf71caa2ddfc9fe045ac9e5c70df101a7dbde866e0"
2715
-
dependencies = [
2716
-
"bytes",
2717
-
"http-body-util",
2718
-
"hyper 1.7.0",
2719
-
"hyper-util",
2720
-
"native-tls",
2721
-
"tokio",
2722
-
"tokio-native-tls",
2723
-
"tower-service",
2724
-
]
2725
-
2726
-
[[package]]
2727
2481
name = "hyper-util"
2728
2482
version = "0.1.17"
2729
2483
source = "registry+https://github.com/rust-lang/crates.io-index"
···
2923
2677
]
2924
2678
2925
2679
[[package]]
2926
-
name = "ipld-core"
2927
-
version = "0.4.2"
2928
-
source = "registry+https://github.com/rust-lang/crates.io-index"
2929
-
checksum = "104718b1cc124d92a6d01ca9c9258a7df311405debb3408c445a36452f9bf8db"
2930
-
dependencies = [
2931
-
"cid",
2932
-
"serde",
2933
-
"serde_bytes",
2934
-
]
2935
-
2936
-
[[package]]
2937
2680
name = "ipnet"
2938
2681
version = "2.11.0"
2939
2682
source = "registry+https://github.com/rust-lang/crates.io-index"
···
3169
2912
"serde",
3170
2913
"serde_json",
3171
2914
"simple_asn1",
3172
-
]
3173
-
3174
-
[[package]]
3175
-
name = "langtag"
3176
-
version = "0.3.4"
3177
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3178
-
checksum = "ed60c85f254d6ae8450cec15eedd921efbc4d1bdf6fcf6202b9a58b403f6f805"
3179
-
dependencies = [
3180
-
"serde",
3181
2915
]
3182
2916
3183
2917
[[package]]
···
3388
3122
checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432"
3389
3123
3390
3124
[[package]]
3391
-
name = "lru"
3392
-
version = "0.12.5"
3393
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3394
-
checksum = "234cf4f4a04dc1f57e24b96cc0cd600cf2af460d4161ac5ecdd0af8e1f3b2a38"
3395
-
dependencies = [
3396
-
"hashbrown 0.15.5",
3397
-
]
3398
-
3399
-
[[package]]
3400
3125
name = "lru-slab"
3401
3126
version = "0.1.2"
3402
3127
source = "registry+https://github.com/rust-lang/crates.io-index"
···
3422
3147
]
3423
3148
3424
3149
[[package]]
3425
-
name = "match-lookup"
3426
-
version = "0.1.1"
3427
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3428
-
checksum = "1265724d8cb29dbbc2b0f06fffb8bf1a8c0cf73a78eede9ba73a4a66c52a981e"
3429
-
dependencies = [
3430
-
"proc-macro2",
3431
-
"quote",
3432
-
"syn 1.0.109",
3433
-
]
3434
-
3435
-
[[package]]
3436
3150
name = "match_cfg"
3437
3151
version = "0.1.0"
3438
3152
source = "registry+https://github.com/rust-lang/crates.io-index"
···
3524
3238
]
3525
3239
3526
3240
[[package]]
3527
-
name = "moka"
3528
-
version = "0.12.11"
3529
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3530
-
checksum = "8261cd88c312e0004c1d51baad2980c66528dfdb2bee62003e643a4d8f86b077"
3531
-
dependencies = [
3532
-
"async-lock",
3533
-
"crossbeam-channel",
3534
-
"crossbeam-epoch",
3535
-
"crossbeam-utils",
3536
-
"equivalent",
3537
-
"event-listener",
3538
-
"futures-util",
3539
-
"parking_lot",
3540
-
"portable-atomic",
3541
-
"rustc_version",
3542
-
"smallvec",
3543
-
"tagptr",
3544
-
"uuid",
3545
-
]
3546
-
3547
-
[[package]]
3548
-
name = "multer"
3549
-
version = "2.1.0"
3550
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3551
-
checksum = "01acbdc23469fd8fe07ab135923371d5f5a422fbf9c522158677c8eb15bc51c2"
3552
-
dependencies = [
3553
-
"bytes",
3554
-
"encoding_rs",
3555
-
"futures-util",
3556
-
"http 0.2.12",
3557
-
"httparse",
3558
-
"log",
3559
-
"memchr",
3560
-
"mime",
3561
-
"spin",
3562
-
"version_check",
3563
-
]
3564
-
3565
-
[[package]]
3566
-
name = "multibase"
3567
-
version = "0.9.2"
3568
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3569
-
checksum = "8694bb4835f452b0e3bb06dbebb1d6fc5385b6ca1caf2e55fd165c042390ec77"
3570
-
dependencies = [
3571
-
"base-x",
3572
-
"base256emoji",
3573
-
"data-encoding",
3574
-
"data-encoding-macro",
3575
-
]
3576
-
3577
-
[[package]]
3578
-
name = "multihash"
3579
-
version = "0.19.3"
3580
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3581
-
checksum = "6b430e7953c29dd6a09afc29ff0bb69c6e306329ee6794700aee27b76a1aea8d"
3582
-
dependencies = [
3583
-
"core2",
3584
-
"serde",
3585
-
"unsigned-varint",
3586
-
]
3587
-
3588
-
[[package]]
3589
3241
name = "nanoid"
3590
3242
version = "0.4.0"
3591
3243
source = "registry+https://github.com/rust-lang/crates.io-index"
3592
3244
checksum = "3ffa00dec017b5b1a8b7cf5e2c008bfda1aa7e0697ac1508b491fdf2622fb4d8"
3593
3245
dependencies = [
3594
3246
"rand 0.8.5",
3595
-
]
3596
-
3597
-
[[package]]
3598
-
name = "native-tls"
3599
-
version = "0.2.14"
3600
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3601
-
checksum = "87de3442987e9dbec73158d5c715e7ad9072fda936bb03d19d7fa10e00520f0e"
3602
-
dependencies = [
3603
-
"libc",
3604
-
"log",
3605
-
"openssl",
3606
-
"openssl-probe",
3607
-
"openssl-sys",
3608
-
"schannel",
3609
-
"security-framework 2.11.1",
3610
-
"security-framework-sys",
3611
-
"tempfile",
3612
3247
]
3613
3248
3614
3249
[[package]]
···
3815
3450
checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381"
3816
3451
3817
3452
[[package]]
3818
-
name = "openssl"
3819
-
version = "0.10.73"
3820
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3821
-
checksum = "8505734d46c8ab1e19a1dce3aef597ad87dcb4c37e7188231769bd6bd51cebf8"
3822
-
dependencies = [
3823
-
"bitflags 2.9.4",
3824
-
"cfg-if",
3825
-
"foreign-types",
3826
-
"libc",
3827
-
"once_cell",
3828
-
"openssl-macros",
3829
-
"openssl-sys",
3830
-
]
3831
-
3832
-
[[package]]
3833
-
name = "openssl-macros"
3834
-
version = "0.1.1"
3835
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3836
-
checksum = "a948666b637a0f465e8564c73e89d4dde00d72d4d473cc972f390fc3dcee7d9c"
3837
-
dependencies = [
3838
-
"proc-macro2",
3839
-
"quote",
3840
-
"syn 2.0.106",
3841
-
]
3842
-
3843
-
[[package]]
3844
3453
name = "openssl-probe"
3845
3454
version = "0.1.6"
3846
3455
source = "registry+https://github.com/rust-lang/crates.io-index"
3847
3456
checksum = "d05e27ee213611ffe7d6348b942e8f942b37114c00cc03cec254295a4a17852e"
3848
-
3849
-
[[package]]
3850
-
name = "openssl-sys"
3851
-
version = "0.9.109"
3852
-
source = "registry+https://github.com/rust-lang/crates.io-index"
3853
-
checksum = "90096e2e47630d78b7d1c20952dc621f957103f8bc2c8359ec81290d75238571"
3854
-
dependencies = [
3855
-
"cc",
3856
-
"libc",
3857
-
"pkg-config",
3858
-
"vcpkg",
3859
-
]
3860
3457
3861
3458
[[package]]
3862
3459
name = "option-ext"
···
5200
4797
source = "registry+https://github.com/rust-lang/crates.io-index"
5201
4798
checksum = "d429f34c8092b2d42c7c93cec323bb4adeb7c67698f70839adec842ec10c7ceb"
5202
4799
dependencies = [
5203
-
"async-compression",
5204
4800
"base64 0.22.1",
5205
4801
"bytes",
5206
4802
"futures-core",
···
5210
4806
"http-body-util",
5211
4807
"hyper 1.7.0",
5212
4808
"hyper-rustls 0.27.7",
5213
-
"hyper-tls",
5214
4809
"hyper-util",
5215
4810
"js-sys",
5216
4811
"log",
5217
4812
"mime_guess",
5218
-
"native-tls",
5219
4813
"percent-encoding",
5220
4814
"pin-project-lite",
5221
4815
"quinn",
···
5226
4820
"serde_urlencoded",
5227
4821
"sync_wrapper",
5228
4822
"tokio",
5229
-
"tokio-native-tls",
5230
4823
"tokio-rustls 0.26.4",
5231
4824
"tokio-util",
5232
4825
"tower",
···
5322
4915
"serde_json",
5323
4916
"tokio",
5324
4917
"tokio-stream",
5325
-
"tokio-tungstenite 0.26.2",
5326
-
"tungstenite 0.26.2",
4918
+
"tokio-tungstenite",
4919
+
"tungstenite",
5327
4920
]
5328
4921
5329
4922
[[package]]
···
5358
4951
]
5359
4952
5360
4953
[[package]]
5361
-
name = "rocksky-feed"
5362
-
version = "0.1.0"
5363
-
dependencies = [
5364
-
"anyhow",
5365
-
"async-trait",
5366
-
"atrium-api",
5367
-
"atrium-xrpc-client",
5368
-
"chrono",
5369
-
"dotenv",
5370
-
"duckdb",
5371
-
"owo-colors",
5372
-
"reqwest",
5373
-
"serde",
5374
-
"serde_json",
5375
-
"sha256",
5376
-
"sqlx",
5377
-
"tokio",
5378
-
"tokio-stream",
5379
-
"tokio-tungstenite 0.26.2",
5380
-
"tracing",
5381
-
"tungstenite 0.26.2",
5382
-
"warp",
5383
-
"xid",
5384
-
]
5385
-
5386
-
[[package]]
5387
4954
name = "rocksky-googledrive"
5388
4955
version = "0.1.0"
5389
4956
dependencies = [
···
5434
5001
"time",
5435
5002
"tokio",
5436
5003
"tokio-stream",
5437
-
"tokio-tungstenite 0.26.2",
5004
+
"tokio-tungstenite",
5438
5005
"tracing",
5439
-
"tungstenite 0.26.2",
5006
+
"tungstenite",
5440
5007
"url",
5441
5008
]
5442
5009
···
5611
5178
"owo-colors",
5612
5179
"rocksky-analytics",
5613
5180
"rocksky-dropbox",
5614
-
"rocksky-feed",
5615
5181
"rocksky-googledrive",
5616
5182
"rocksky-jetstream",
5617
5183
"rocksky-pgpull",
···
5945
5511
]
5946
5512
5947
5513
[[package]]
5948
-
name = "scoped-tls"
5949
-
version = "1.0.1"
5950
-
source = "registry+https://github.com/rust-lang/crates.io-index"
5951
-
checksum = "e1cf6437eb19a8f4a6cc0f7dca544973b0b78843adbfeb3683d1a94a0024a294"
5952
-
5953
-
[[package]]
5954
5514
name = "scopeguard"
5955
5515
version = "1.2.0"
5956
5516
source = "registry+https://github.com/rust-lang/crates.io-index"
···
6041
5601
]
6042
5602
6043
5603
[[package]]
6044
-
name = "serde_bytes"
6045
-
version = "0.11.19"
6046
-
source = "registry+https://github.com/rust-lang/crates.io-index"
6047
-
checksum = "a5d440709e79d88e51ac01c4b72fc6cb7314017bb7da9eeff678aa94c10e3ea8"
6048
-
dependencies = [
6049
-
"serde",
6050
-
"serde_core",
6051
-
]
6052
-
6053
-
[[package]]
6054
5604
name = "serde_cbor"
6055
5605
version = "0.11.2"
6056
5606
source = "registry+https://github.com/rust-lang/crates.io-index"
···
6081
5631
]
6082
5632
6083
5633
[[package]]
6084
-
name = "serde_html_form"
6085
-
version = "0.2.8"
6086
-
source = "registry+https://github.com/rust-lang/crates.io-index"
6087
-
checksum = "b2f2d7ff8a2140333718bb329f5c40fc5f0865b84c426183ce14c97d2ab8154f"
6088
-
dependencies = [
6089
-
"form_urlencoded",
6090
-
"indexmap",
6091
-
"itoa",
6092
-
"ryu",
6093
-
"serde_core",
6094
-
]
6095
-
6096
-
[[package]]
6097
5634
name = "serde_json"
6098
5635
version = "1.0.145"
6099
5636
source = "registry+https://github.com/rust-lang/crates.io-index"
···
6979
6516
]
6980
6517
6981
6518
[[package]]
6982
-
name = "tagptr"
6983
-
version = "0.2.0"
6984
-
source = "registry+https://github.com/rust-lang/crates.io-index"
6985
-
checksum = "7b2093cf4c8eb1e67749a6762251bc9cd836b6fc171623bd0a9d324d37af2417"
6986
-
6987
-
[[package]]
6988
6519
name = "tap"
6989
6520
version = "1.0.1"
6990
6521
source = "registry+https://github.com/rust-lang/crates.io-index"
···
7160
6691
]
7161
6692
7162
6693
[[package]]
7163
-
name = "tokio-native-tls"
7164
-
version = "0.3.1"
7165
-
source = "registry+https://github.com/rust-lang/crates.io-index"
7166
-
checksum = "bbae76ab933c85776efabc971569dd6119c580d8f5d448769dec1764bf796ef2"
7167
-
dependencies = [
7168
-
"native-tls",
7169
-
"tokio",
7170
-
]
7171
-
7172
-
[[package]]
7173
6694
name = "tokio-postgres"
7174
6695
version = "0.7.14"
7175
6696
source = "registry+https://github.com/rust-lang/crates.io-index"
···
7229
6750
7230
6751
[[package]]
7231
6752
name = "tokio-tungstenite"
7232
-
version = "0.21.0"
7233
-
source = "registry+https://github.com/rust-lang/crates.io-index"
7234
-
checksum = "c83b561d025642014097b66e6c1bb422783339e0909e4429cde4749d1990bc38"
7235
-
dependencies = [
7236
-
"futures-util",
7237
-
"log",
7238
-
"tokio",
7239
-
"tungstenite 0.21.0",
7240
-
]
7241
-
7242
-
[[package]]
7243
-
name = "tokio-tungstenite"
7244
6753
version = "0.26.2"
7245
6754
source = "registry+https://github.com/rust-lang/crates.io-index"
7246
6755
checksum = "7a9daff607c6d2bf6c16fd681ccb7eecc83e4e2cdc1ca067ffaadfca5de7f084"
···
7251
6760
"rustls-pki-types",
7252
6761
"tokio",
7253
6762
"tokio-rustls 0.26.4",
7254
-
"tungstenite 0.26.2",
6763
+
"tungstenite",
7255
6764
"webpki-roots 0.26.11",
7256
6765
]
7257
6766
···
7486
6995
]
7487
6996
7488
6997
[[package]]
7489
-
name = "trait-variant"
7490
-
version = "0.1.2"
7491
-
source = "registry+https://github.com/rust-lang/crates.io-index"
7492
-
checksum = "70977707304198400eb4835a78f6a9f928bf41bba420deb8fdb175cd965d77a7"
7493
-
dependencies = [
7494
-
"proc-macro2",
7495
-
"quote",
7496
-
"syn 2.0.106",
7497
-
]
7498
-
7499
-
[[package]]
7500
6998
name = "try-lock"
7501
6999
version = "0.2.5"
7502
7000
source = "registry+https://github.com/rust-lang/crates.io-index"
···
7510
7008
dependencies = [
7511
7009
"pin-project-lite",
7512
7010
"tokio",
7513
-
]
7514
-
7515
-
[[package]]
7516
-
name = "tungstenite"
7517
-
version = "0.21.0"
7518
-
source = "registry+https://github.com/rust-lang/crates.io-index"
7519
-
checksum = "9ef1a641ea34f399a848dea702823bbecfb4c486f911735368f1f137cb8257e1"
7520
-
dependencies = [
7521
-
"byteorder",
7522
-
"bytes",
7523
-
"data-encoding",
7524
-
"http 1.3.1",
7525
-
"httparse",
7526
-
"log",
7527
-
"rand 0.8.5",
7528
-
"sha1",
7529
-
"thiserror 1.0.69",
7530
-
"url",
7531
-
"utf-8",
7532
7011
]
7533
7012
7534
7013
[[package]]
···
7639
7118
]
7640
7119
7641
7120
[[package]]
7642
-
name = "unsigned-varint"
7643
-
version = "0.8.0"
7644
-
source = "registry+https://github.com/rust-lang/crates.io-index"
7645
-
checksum = "eb066959b24b5196ae73cb057f45598450d2c5f71460e98c49b738086eff9c06"
7646
-
7647
-
[[package]]
7648
7121
name = "untrusted"
7649
7122
version = "0.9.0"
7650
7123
source = "registry+https://github.com/rust-lang/crates.io-index"
···
7735
7208
checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e"
7736
7209
dependencies = [
7737
7210
"try-lock",
7738
-
]
7739
-
7740
-
[[package]]
7741
-
name = "warp"
7742
-
version = "0.3.7"
7743
-
source = "registry+https://github.com/rust-lang/crates.io-index"
7744
-
checksum = "4378d202ff965b011c64817db11d5829506d3404edeadb61f190d111da3f231c"
7745
-
dependencies = [
7746
-
"bytes",
7747
-
"futures-channel",
7748
-
"futures-util",
7749
-
"headers",
7750
-
"http 0.2.12",
7751
-
"hyper 0.14.32",
7752
-
"log",
7753
-
"mime",
7754
-
"mime_guess",
7755
-
"multer",
7756
-
"percent-encoding",
7757
-
"pin-project",
7758
-
"scoped-tls",
7759
-
"serde",
7760
-
"serde_json",
7761
-
"serde_urlencoded",
7762
-
"tokio",
7763
-
"tokio-tungstenite 0.21.0",
7764
-
"tokio-util",
7765
-
"tower-service",
7766
-
"tracing",
7767
7211
]
7768
7212
7769
7213
[[package]]
-1
crates/rockskyd/Cargo.toml
-1
crates/rockskyd/Cargo.toml
-11
crates/rockskyd/src/cmd/feed.rs
-11
crates/rockskyd/src/cmd/feed.rs
···
1
-
use anyhow::Error;
2
-
use rocksky_feed::repo::{duckdb::DuckdbRepo, RepoImpl};
3
-
4
-
pub async fn serve(enable_sync: bool) -> Result<(), Error> {
5
-
rocksky_feed::run(enable_sync).await?;
6
-
Ok(())
7
-
}
8
-
9
-
pub async fn sync() -> Result<(), Error> {
10
-
rocksky_feed::sync::sync_scrobbles(RepoImpl::Duckdb(DuckdbRepo::new().await?)).await
11
-
}
-18
crates/rockskyd/src/main.rs
-18
crates/rockskyd/src/main.rs
···
36
36
Command::new("pull")
37
37
.about("Pull data from a remote PostgreSQL database to your local PostgresSQL instance")
38
38
.long_about("Pull data from a remote PostgreSQL database to your local PostgresSQL instance. Ensure that the SOURCE_POSTGRES_URL environment variable is set to your remote PostgreSQL connection string."))
39
-
.subcommand(
40
-
Command::new("feed")
41
-
.about("Feed related commands")
42
-
.subcommand(
43
-
Command::new("serve")
44
-
.arg(arg!(--sync "Enable sync mode").required(false))
45
-
.about("Serve the Rocksky Feed API"),
46
-
)
47
-
.subcommand(Command::new("sync").about("Sync scrobbles feed data to DuckDB")),
48
-
)
49
39
}
50
40
51
41
#[tokio::main]
···
102
92
Some(("pull", _)) => {
103
93
cmd::pull::pull_data().await?;
104
94
}
105
-
Some(("feed", sub_m)) => match sub_m.subcommand() {
106
-
Some(("serve", args)) => {
107
-
let enable_sync = args.get_flag("sync");
108
-
cmd::feed::serve(enable_sync).await?
109
-
}
110
-
Some(("sync", _)) => cmd::feed::sync().await?,
111
-
_ => println!("Unknown feed command"),
112
-
},
113
95
_ => {
114
96
println!("No valid subcommand was used. Use --help to see available commands.");
115
97
}