objective categorical abstract machine language personal data server
65
fork

Configure Feed

Select the types of activity you want to include in your feed.

Ensure repo is active in sync methods

futurGH e6a0d1a3 3a9b578d

+16 -6
+3 -1
pegasus/lib/api/sync/getBlob.ml
··· 4 4 Xrpc.handler (fun ctx -> 5 5 let {did; cid} = Xrpc.parse_query ctx.req query_of_yojson in 6 6 let cid = Cid.as_cid cid in 7 - let%lwt {db; _} = Repository.load did ~write:false ~ds:ctx.db in 7 + let%lwt {db; _} = 8 + Repository.load did ~ensure_active:true ~write:false ~ds:ctx.db 9 + in 8 10 let%lwt blob = 9 11 match%lwt User_store.get_blob db cid with 10 12 | Some blob ->
+3 -1
pegasus/lib/api/sync/getBlocks.ml
··· 3 3 let handler = 4 4 Xrpc.handler (fun ctx -> 5 5 let {did; cids} : query = Xrpc.parse_query ctx.req query_of_yojson in 6 - let%lwt {db; commit; _} = Repository.load did ~write:false ~ds:ctx.db in 6 + let%lwt {db; commit; _} = 7 + Repository.load did ~ensure_active:true ~write:false ~ds:ctx.db 8 + in 7 9 let commit_cid, commit_signed = Option.get commit in 8 10 let commit_block = 9 11 commit_signed |> User_store.Types.signed_commit_to_yojson
+3 -1
pegasus/lib/api/sync/getLatestCommit.ml
··· 5 5 let handler = 6 6 Xrpc.handler (fun ctx -> 7 7 let {did} : query = Xrpc.parse_query ctx.req query_of_yojson in 8 - match%lwt Repository.load did ~write:false ~ds:ctx.db with 8 + match%lwt 9 + Repository.load did ~ensure_active:true ~write:false ~ds:ctx.db 10 + with 9 11 | {commit= Some (cid, {rev; _}); _} -> 10 12 let cid = Cid.to_string cid in 11 13 Dream.json @@ Yojson.Safe.to_string @@ response_to_yojson {cid; rev}
+3 -1
pegasus/lib/api/sync/getRecord.ml
··· 8 8 Xrpc.parse_query ctx.req query_of_yojson 9 9 in 10 10 let path = collection ^ "/" ^ rkey in 11 - let%lwt {db; commit; _} = Repository.load did ~write:false ~ds:ctx.db in 11 + let%lwt {db; commit; _} = 12 + Repository.load did ~ensure_active:true ~write:false ~ds:ctx.db 13 + in 12 14 let commit_cid, commit_signed = Option.get commit in 13 15 let commit_block = 14 16 commit_signed |> User_store.Types.signed_commit_to_yojson
+1 -1
pegasus/lib/api/sync/getRepo.ml
··· 3 3 let handler = 4 4 Xrpc.handler (fun ctx -> 5 5 let {did} : query = Xrpc.parse_query ctx.req query_of_yojson in 6 - let%lwt repo = Repository.load did ~write:false in 6 + let%lwt repo = Repository.load did ~ensure_active:true ~write:false in 7 7 let%lwt car_stream = Repository.export_car repo in 8 8 Dream.stream 9 9 ~headers:[("Content-Type", "application/vnd.ipld.car")]
+3 -1
pegasus/lib/api/sync/listBlobs.ml
··· 17 17 | _ -> 18 18 1000 19 19 in 20 - let%lwt {db; _} = Repository.load did ~write:false ~ds:ctx.db in 20 + let%lwt {db; _} = 21 + Repository.load did ~ensure_active:true ~write:false ~ds:ctx.db 22 + in 21 23 let%lwt cids = User_store.list_blobs db ~limit ~cursor ?since in 22 24 let cids = List.map Cid.to_string cids in 23 25 let cursor =