···44edition = "2024"
5566[dependencies]
77+axum = "0.8.8"
88+clap = { version = "4.5.60", features = ["derive", "env"] }
99+fjall = "3.0.3"
1010+iroh-car = "0.5.1"
1111+jacquard-api = { version = "0.9.5", default-features = false, features = ["com_atproto"] }
1212+jacquard-axum = { version = "0.9.6", default-features = false, features = ["tracing"] }
1313+jacquard-common = { version = "0.9.5", features = ["websocket"] }
1414+jacquard-repo = "0.9.6"
1515+metrics = "0.24.3"
1616+metrics-exporter-prometheus = { version = "0.18.1", features = ["http-listener"] }
1717+thiserror = "2.0.18"
1818+tokio = { version = "1.49.0", features = ["full"] }
+1-1
hacking.md
···93939494### return order of `listReposByCollection`:
95959696-note: `collectiondir` indexes repos by discovery time, so you haven't missed any newly-added repos since you starting paging through. if we cursor over DIDs, then there *can* be some added mid-paging. is that a problem?
9696+`collectiondir` indexes repos by discovery time, so you haven't missed any newly-added repos since you starting paging through. if we cursor over DIDs, then there *can* be some added mid-paging. is that a problem?
97979898i think clients should be listening to the firehose before they start walking here, which should help them avoid missing any repos (newly-added ones while paging would be seen in the firehose).
9999
+2-2
readme.md
···11-# lightrail: lightweight `listReposByCollection` service
11+# lightrail: `listReposByCollection` service
2233**status: in development**
44···1616- handles sync1.1 `#sync` events
1717- avoids updating its index unless commits actually add or remove collections
1818- removes repos from the index when the last record from a repo's collection is removed
1919-- uses authenticated repo contents for backfill instead of `com.atprot.repo.describeRepo`
1919+- uses authenticated repo contents for backfill instead of `com.atproto.repo.describeRepo`
20202121lightrail's CAR slice techniques enable its lightweight implementation, but its primary focus is on accuracy and correctness.
2222