git-remote-ops 0.1.0 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (274) hide show
  1. package/AGENTS.md +33 -32
  2. package/README.md +80 -206
  3. package/dist/cli.js +215 -0
  4. package/dist/cli.js.map +1 -0
  5. package/{types → dist}/client.d.ts +11 -15
  6. package/dist/client.d.ts.map +1 -0
  7. package/{esm → dist}/client.js +107 -83
  8. package/dist/client.js.map +1 -0
  9. package/{types → dist}/errors.d.ts +30 -16
  10. package/dist/errors.d.ts.map +1 -0
  11. package/{esm → dist}/errors.js +17 -8
  12. package/dist/errors.js.map +1 -0
  13. package/{types → dist}/index.d.ts +1 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/{esm → dist}/index.js +2 -0
  16. package/dist/index.js.map +1 -0
  17. package/{types → dist}/logger.d.ts +11 -0
  18. package/dist/logger.d.ts.map +1 -0
  19. package/{esm → dist}/logger.js +3 -19
  20. package/dist/logger.js.map +1 -0
  21. package/{esm → dist}/objects/commit.js +1 -0
  22. package/dist/objects/commit.js.map +1 -0
  23. package/{esm → dist}/objects/index.js +1 -0
  24. package/dist/objects/index.js.map +1 -0
  25. package/{types → dist}/objects/tree.d.ts.map +1 -1
  26. package/{esm → dist}/objects/tree.js +2 -2
  27. package/dist/objects/tree.js.map +1 -0
  28. package/{esm → dist}/pack/delta.js +1 -0
  29. package/dist/pack/delta.js.map +1 -0
  30. package/{esm → dist}/pack/index.js +1 -0
  31. package/dist/pack/index.js.map +1 -0
  32. package/{types → dist}/pack/objects.d.ts.map +1 -1
  33. package/{esm → dist}/pack/objects.js +3 -3
  34. package/dist/pack/objects.js.map +1 -0
  35. package/{types → dist}/pack/parser.d.ts +19 -3
  36. package/dist/pack/parser.d.ts.map +1 -0
  37. package/{esm → dist}/pack/parser.js +46 -15
  38. package/dist/pack/parser.js.map +1 -0
  39. package/{esm → dist}/protocol/index.js +1 -0
  40. package/dist/protocol/index.js.map +1 -0
  41. package/{types → dist}/protocol/pkt_line.d.ts +3 -3
  42. package/{types → dist}/protocol/pkt_line.d.ts.map +1 -1
  43. package/{esm → dist}/protocol/pkt_line.js +1 -0
  44. package/dist/protocol/pkt_line.js.map +1 -0
  45. package/{esm → dist}/protocol/refs.js +1 -0
  46. package/dist/protocol/refs.js.map +1 -0
  47. package/{types → dist}/protocol/upload_pack.d.ts +1 -0
  48. package/{types → dist}/protocol/upload_pack.d.ts.map +1 -1
  49. package/{esm → dist}/protocol/upload_pack.js +10 -1
  50. package/dist/protocol/upload_pack.js.map +1 -0
  51. package/dist/store.d.ts +28 -0
  52. package/dist/store.d.ts.map +1 -0
  53. package/dist/store.js +179 -0
  54. package/dist/store.js.map +1 -0
  55. package/{types → dist}/transport.d.ts +15 -2
  56. package/dist/transport.d.ts.map +1 -0
  57. package/{esm → dist}/transport.js +44 -15
  58. package/dist/transport.js.map +1 -0
  59. package/{types → dist}/types.d.ts +12 -7
  60. package/dist/types.d.ts.map +1 -0
  61. package/{esm → dist}/types.js +1 -0
  62. package/dist/types.js.map +1 -0
  63. package/package.json +42 -29
  64. package/esm/_dnt.shims.js +0 -72
  65. package/esm/cli.js +0 -217
  66. package/esm/deps/jsr.io/@cliffy/command/1.1.0/_argument_types.js +0 -1
  67. package/esm/deps/jsr.io/@cliffy/command/1.1.0/_errors.js +0 -133
  68. package/esm/deps/jsr.io/@cliffy/command/1.1.0/_spread.js +0 -1
  69. package/esm/deps/jsr.io/@cliffy/command/1.1.0/_type_utils.js +0 -1
  70. package/esm/deps/jsr.io/@cliffy/command/1.1.0/_utils.js +0 -141
  71. package/esm/deps/jsr.io/@cliffy/command/1.1.0/command.js +0 -1861
  72. package/esm/deps/jsr.io/@cliffy/command/1.1.0/help/_help_generator.js +0 -357
  73. package/esm/deps/jsr.io/@cliffy/command/1.1.0/mod.js +0 -13
  74. package/esm/deps/jsr.io/@cliffy/command/1.1.0/type.js +0 -27
  75. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/action_list.js +0 -16
  76. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/boolean.js +0 -13
  77. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/child_command.js +0 -14
  78. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/command.js +0 -9
  79. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/enum.js +0 -24
  80. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/file.js +0 -12
  81. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/integer.js +0 -9
  82. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/number.js +0 -9
  83. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/secret.js +0 -7
  84. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types/string.js +0 -9
  85. package/esm/deps/jsr.io/@cliffy/command/1.1.0/types.js +0 -2
  86. package/esm/deps/jsr.io/@cliffy/command/1.1.0/upgrade/_check_version.js +0 -26
  87. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/_errors.js +0 -129
  88. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/_utils.js +0 -100
  89. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/_validate_flags.js +0 -166
  90. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/flags.js +0 -750
  91. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/mod.js +0 -55
  92. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/types/boolean.js +0 -11
  93. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/types/integer.js +0 -9
  94. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/types/number.js +0 -11
  95. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/types/string.js +0 -4
  96. package/esm/deps/jsr.io/@cliffy/flags/1.1.0/types.js +0 -1
  97. package/esm/deps/jsr.io/@cliffy/internal/1.1.0/runtime/exit.js +0 -16
  98. package/esm/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_args.js +0 -11
  99. package/esm/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_columns.js +0 -25
  100. package/esm/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_env.js +0 -18
  101. package/esm/deps/jsr.io/@cliffy/internal/1.1.0/runtime/inspect.js +0 -11
  102. package/esm/deps/jsr.io/@cliffy/table/1.1.0/_layout.js +0 -616
  103. package/esm/deps/jsr.io/@cliffy/table/1.1.0/_utils.js +0 -79
  104. package/esm/deps/jsr.io/@cliffy/table/1.1.0/border.js +0 -18
  105. package/esm/deps/jsr.io/@cliffy/table/1.1.0/cell.js +0 -190
  106. package/esm/deps/jsr.io/@cliffy/table/1.1.0/column.js +0 -117
  107. package/esm/deps/jsr.io/@cliffy/table/1.1.0/consume_words.js +0 -64
  108. package/esm/deps/jsr.io/@cliffy/table/1.1.0/mod.js +0 -42
  109. package/esm/deps/jsr.io/@cliffy/table/1.1.0/row.js +0 -82
  110. package/esm/deps/jsr.io/@cliffy/table/1.1.0/table.js +0 -341
  111. package/esm/deps/jsr.io/@cliffy/table/1.1.0/unicode_width.js +0 -101
  112. package/esm/deps/jsr.io/@std/crypto/1.1.0/_types.js +0 -2
  113. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.js +0 -237
  114. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.js +0 -2277
  115. package/esm/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.js +0 -46
  116. package/esm/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.js +0 -132
  117. package/esm/deps/jsr.io/@std/crypto/1.1.0/crypto.js +0 -270
  118. package/esm/deps/jsr.io/@std/crypto/1.1.0/mod.js +0 -23
  119. package/esm/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.js +0 -61
  120. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common16.js +0 -51
  121. package/esm/deps/jsr.io/@std/encoding/1.0.10/_common_detach.js +0 -13
  122. package/esm/deps/jsr.io/@std/encoding/1.0.10/_types.js +0 -2
  123. package/esm/deps/jsr.io/@std/encoding/1.0.10/hex.js +0 -87
  124. package/esm/deps/jsr.io/@std/fmt/1.0.10/colors.js +0 -903
  125. package/esm/deps/jsr.io/@std/text/1.0.18/closest_string.js +0 -46
  126. package/esm/deps/jsr.io/@std/text/1.0.18/levenshtein_distance.js +0 -127
  127. package/esm/package.json +0 -3
  128. package/types/_dnt.shims.d.ts +0 -16
  129. package/types/_dnt.shims.d.ts.map +0 -1
  130. package/types/client.d.ts.map +0 -1
  131. package/types/deps/jsr.io/@cliffy/command/1.1.0/_argument_types.d.ts +0 -163
  132. package/types/deps/jsr.io/@cliffy/command/1.1.0/_argument_types.d.ts.map +0 -1
  133. package/types/deps/jsr.io/@cliffy/command/1.1.0/_errors.d.ts +0 -71
  134. package/types/deps/jsr.io/@cliffy/command/1.1.0/_errors.d.ts.map +0 -1
  135. package/types/deps/jsr.io/@cliffy/command/1.1.0/_spread.d.ts +0 -16
  136. package/types/deps/jsr.io/@cliffy/command/1.1.0/_spread.d.ts.map +0 -1
  137. package/types/deps/jsr.io/@cliffy/command/1.1.0/_type_utils.d.ts +0 -15
  138. package/types/deps/jsr.io/@cliffy/command/1.1.0/_type_utils.d.ts.map +0 -1
  139. package/types/deps/jsr.io/@cliffy/command/1.1.0/_utils.d.ts +0 -38
  140. package/types/deps/jsr.io/@cliffy/command/1.1.0/_utils.d.ts.map +0 -1
  141. package/types/deps/jsr.io/@cliffy/command/1.1.0/command.d.ts +0 -1086
  142. package/types/deps/jsr.io/@cliffy/command/1.1.0/command.d.ts.map +0 -1
  143. package/types/deps/jsr.io/@cliffy/command/1.1.0/help/_help_generator.d.ts +0 -33
  144. package/types/deps/jsr.io/@cliffy/command/1.1.0/help/_help_generator.d.ts.map +0 -1
  145. package/types/deps/jsr.io/@cliffy/command/1.1.0/mod.d.ts +0 -78
  146. package/types/deps/jsr.io/@cliffy/command/1.1.0/mod.d.ts.map +0 -1
  147. package/types/deps/jsr.io/@cliffy/command/1.1.0/type.d.ts +0 -51
  148. package/types/deps/jsr.io/@cliffy/command/1.1.0/type.d.ts.map +0 -1
  149. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/action_list.d.ts +0 -10
  150. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/action_list.d.ts.map +0 -1
  151. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/boolean.d.ts +0 -10
  152. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/boolean.d.ts.map +0 -1
  153. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/child_command.d.ts +0 -10
  154. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/child_command.d.ts.map +0 -1
  155. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/command.d.ts +0 -8
  156. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/command.d.ts.map +0 -1
  157. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/enum.d.ts +0 -11
  158. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/enum.d.ts.map +0 -1
  159. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/file.d.ts +0 -6
  160. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/file.d.ts.map +0 -1
  161. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/integer.d.ts +0 -8
  162. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/integer.d.ts.map +0 -1
  163. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/number.d.ts +0 -8
  164. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/number.d.ts.map +0 -1
  165. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/secret.d.ts +0 -6
  166. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/secret.d.ts.map +0 -1
  167. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/string.d.ts +0 -8
  168. package/types/deps/jsr.io/@cliffy/command/1.1.0/types/string.d.ts.map +0 -1
  169. package/types/deps/jsr.io/@cliffy/command/1.1.0/types.d.ts +0 -161
  170. package/types/deps/jsr.io/@cliffy/command/1.1.0/types.d.ts.map +0 -1
  171. package/types/deps/jsr.io/@cliffy/command/1.1.0/upgrade/_check_version.d.ts +0 -4
  172. package/types/deps/jsr.io/@cliffy/command/1.1.0/upgrade/_check_version.d.ts.map +0 -1
  173. package/types/deps/jsr.io/@cliffy/flags/1.1.0/_errors.d.ts +0 -67
  174. package/types/deps/jsr.io/@cliffy/flags/1.1.0/_errors.d.ts.map +0 -1
  175. package/types/deps/jsr.io/@cliffy/flags/1.1.0/_utils.d.ts +0 -17
  176. package/types/deps/jsr.io/@cliffy/flags/1.1.0/_utils.d.ts.map +0 -1
  177. package/types/deps/jsr.io/@cliffy/flags/1.1.0/_validate_flags.d.ts +0 -11
  178. package/types/deps/jsr.io/@cliffy/flags/1.1.0/_validate_flags.d.ts.map +0 -1
  179. package/types/deps/jsr.io/@cliffy/flags/1.1.0/flags.d.ts +0 -154
  180. package/types/deps/jsr.io/@cliffy/flags/1.1.0/flags.d.ts.map +0 -1
  181. package/types/deps/jsr.io/@cliffy/flags/1.1.0/mod.d.ts +0 -57
  182. package/types/deps/jsr.io/@cliffy/flags/1.1.0/mod.d.ts.map +0 -1
  183. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/boolean.d.ts +0 -4
  184. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/boolean.d.ts.map +0 -1
  185. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/integer.d.ts +0 -4
  186. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/integer.d.ts.map +0 -1
  187. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/number.d.ts +0 -4
  188. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/number.d.ts.map +0 -1
  189. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/string.d.ts +0 -4
  190. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types/string.d.ts.map +0 -1
  191. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types.d.ts +0 -170
  192. package/types/deps/jsr.io/@cliffy/flags/1.1.0/types.d.ts.map +0 -1
  193. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/exit.d.ts +0 -8
  194. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/exit.d.ts.map +0 -1
  195. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_args.d.ts +0 -7
  196. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_args.d.ts.map +0 -1
  197. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_columns.d.ts +0 -7
  198. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_columns.d.ts.map +0 -1
  199. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_env.d.ts +0 -8
  200. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/get_env.d.ts.map +0 -1
  201. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/inspect.d.ts +0 -7
  202. package/types/deps/jsr.io/@cliffy/internal/1.1.0/runtime/inspect.d.ts.map +0 -1
  203. package/types/deps/jsr.io/@cliffy/table/1.1.0/_layout.d.ts +0 -108
  204. package/types/deps/jsr.io/@cliffy/table/1.1.0/_layout.d.ts.map +0 -1
  205. package/types/deps/jsr.io/@cliffy/table/1.1.0/_utils.d.ts +0 -26
  206. package/types/deps/jsr.io/@cliffy/table/1.1.0/_utils.d.ts.map +0 -1
  207. package/types/deps/jsr.io/@cliffy/table/1.1.0/border.d.ts +0 -21
  208. package/types/deps/jsr.io/@cliffy/table/1.1.0/border.d.ts.map +0 -1
  209. package/types/deps/jsr.io/@cliffy/table/1.1.0/cell.d.ts +0 -155
  210. package/types/deps/jsr.io/@cliffy/table/1.1.0/cell.d.ts.map +0 -1
  211. package/types/deps/jsr.io/@cliffy/table/1.1.0/column.d.ts +0 -97
  212. package/types/deps/jsr.io/@cliffy/table/1.1.0/column.d.ts.map +0 -1
  213. package/types/deps/jsr.io/@cliffy/table/1.1.0/consume_words.d.ts +0 -30
  214. package/types/deps/jsr.io/@cliffy/table/1.1.0/consume_words.d.ts.map +0 -1
  215. package/types/deps/jsr.io/@cliffy/table/1.1.0/mod.d.ts +0 -43
  216. package/types/deps/jsr.io/@cliffy/table/1.1.0/mod.d.ts.map +0 -1
  217. package/types/deps/jsr.io/@cliffy/table/1.1.0/row.d.ts +0 -67
  218. package/types/deps/jsr.io/@cliffy/table/1.1.0/row.d.ts.map +0 -1
  219. package/types/deps/jsr.io/@cliffy/table/1.1.0/table.d.ts +0 -235
  220. package/types/deps/jsr.io/@cliffy/table/1.1.0/table.d.ts.map +0 -1
  221. package/types/deps/jsr.io/@cliffy/table/1.1.0/unicode_width.d.ts +0 -40
  222. package/types/deps/jsr.io/@cliffy/table/1.1.0/unicode_width.d.ts.map +0 -1
  223. package/types/deps/jsr.io/@std/crypto/1.1.0/_types.d.ts +0 -9
  224. package/types/deps/jsr.io/@std/crypto/1.1.0/_types.d.ts.map +0 -1
  225. package/types/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.d.ts +0 -2
  226. package/types/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.d.ts.map +0 -1
  227. package/types/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.d.ts +0 -69
  228. package/types/deps/jsr.io/@std/crypto/1.1.0/_wasm/lib/deno_std_wasm_crypto.internal.d.ts.map +0 -1
  229. package/types/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.d.ts +0 -13
  230. package/types/deps/jsr.io/@std/crypto/1.1.0/_wasm/mod.d.ts.map +0 -1
  231. package/types/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.d.ts +0 -76
  232. package/types/deps/jsr.io/@std/crypto/1.1.0/aes_gcm.d.ts.map +0 -1
  233. package/types/deps/jsr.io/@std/crypto/1.1.0/crypto.d.ts +0 -149
  234. package/types/deps/jsr.io/@std/crypto/1.1.0/crypto.d.ts.map +0 -1
  235. package/types/deps/jsr.io/@std/crypto/1.1.0/mod.d.ts +0 -22
  236. package/types/deps/jsr.io/@std/crypto/1.1.0/mod.d.ts.map +0 -1
  237. package/types/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.d.ts +0 -40
  238. package/types/deps/jsr.io/@std/crypto/1.1.0/timing_safe_equal.d.ts.map +0 -1
  239. package/types/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts +0 -23
  240. package/types/deps/jsr.io/@std/encoding/1.0.10/_common16.d.ts.map +0 -1
  241. package/types/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts +0 -4
  242. package/types/deps/jsr.io/@std/encoding/1.0.10/_common_detach.d.ts.map +0 -1
  243. package/types/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts +0 -9
  244. package/types/deps/jsr.io/@std/encoding/1.0.10/_types.d.ts.map +0 -1
  245. package/types/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts +0 -39
  246. package/types/deps/jsr.io/@std/encoding/1.0.10/hex.d.ts.map +0 -1
  247. package/types/deps/jsr.io/@std/fmt/1.0.10/colors.d.ts +0 -700
  248. package/types/deps/jsr.io/@std/fmt/1.0.10/colors.d.ts.map +0 -1
  249. package/types/deps/jsr.io/@std/text/1.0.18/closest_string.d.ts +0 -42
  250. package/types/deps/jsr.io/@std/text/1.0.18/closest_string.d.ts.map +0 -1
  251. package/types/deps/jsr.io/@std/text/1.0.18/levenshtein_distance.d.ts +0 -23
  252. package/types/deps/jsr.io/@std/text/1.0.18/levenshtein_distance.d.ts.map +0 -1
  253. package/types/errors.d.ts.map +0 -1
  254. package/types/index.d.ts.map +0 -1
  255. package/types/logger.d.ts.map +0 -1
  256. package/types/pack/parser.d.ts.map +0 -1
  257. package/types/transport.d.ts.map +0 -1
  258. package/types/types.d.ts.map +0 -1
  259. /package/{types → dist}/cli.d.ts +0 -0
  260. /package/{types → dist}/cli.d.ts.map +0 -0
  261. /package/{types → dist}/objects/commit.d.ts +0 -0
  262. /package/{types → dist}/objects/commit.d.ts.map +0 -0
  263. /package/{types → dist}/objects/index.d.ts +0 -0
  264. /package/{types → dist}/objects/index.d.ts.map +0 -0
  265. /package/{types → dist}/objects/tree.d.ts +0 -0
  266. /package/{types → dist}/pack/delta.d.ts +0 -0
  267. /package/{types → dist}/pack/delta.d.ts.map +0 -0
  268. /package/{types → dist}/pack/index.d.ts +0 -0
  269. /package/{types → dist}/pack/index.d.ts.map +0 -0
  270. /package/{types → dist}/pack/objects.d.ts +0 -0
  271. /package/{types → dist}/protocol/index.d.ts +0 -0
  272. /package/{types → dist}/protocol/index.d.ts.map +0 -0
  273. /package/{types → dist}/protocol/refs.d.ts +0 -0
  274. /package/{types → dist}/protocol/refs.d.ts.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/pack/parser.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
1
  export * from "./pkt_line.js";
2
2
  export * from "./refs.js";
3
3
  export * from "./upload_pack.js";
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/protocol/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,WAAW,CAAC;AAC1B,cAAc,kBAAkB,CAAC"}
@@ -11,11 +11,11 @@ import { Result } from "better-result";
11
11
  import { PktLineError } from "../errors.js";
12
12
  import type { PktLine } from "../types.js";
13
13
  /** Encoded `"0000"` flush packet — closes a section in v0 and v2. */
14
- export declare const FLUSH_PKT: Uint8Array<ArrayBufferLike>;
14
+ export declare const FLUSH_PKT: Uint8Array<ArrayBuffer>;
15
15
  /** Encoded `"0001"` delim packet — only valid in protocol v2. */
16
- export declare const DELIM_PKT: Uint8Array<ArrayBufferLike>;
16
+ export declare const DELIM_PKT: Uint8Array<ArrayBuffer>;
17
17
  /** Encoded `"0002"` response-end packet — only valid in protocol v2. */
18
- export declare const RESPONSE_END_PKT: Uint8Array<ArrayBufferLike>;
18
+ export declare const RESPONSE_END_PKT: Uint8Array<ArrayBuffer>;
19
19
  /**
20
20
  * Wrap `payload` in a pkt-line frame.
21
21
  *
@@ -1 +1 @@
1
- {"version":3,"file":"pkt_line.d.ts","sourceRoot":"","sources":["../../src/protocol/pkt_line.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAmB3C,qEAAqE;AACrE,eAAO,MAAM,SAAS,6BAAyB,CAAC;AAChD,iEAAiE;AACjE,eAAO,MAAM,SAAS,6BAAyB,CAAC;AAChD,wEAAwE;AACxE,eAAO,MAAM,gBAAgB,6BAAyB,CAAC;AAEvD;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAoB7E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,UAAU,EACf,MAAM,SAAI,GACT,MAAM,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAqCjC"}
1
+ {"version":3,"file":"pkt_line.d.ts","sourceRoot":"","sources":["../../src/protocol/pkt_line.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAmB3C,qEAAqE;AACrE,eAAO,MAAM,SAAS,yBAAyB,CAAC;AAChD,iEAAiE;AACjE,eAAO,MAAM,SAAS,yBAAyB,CAAC;AAChD,wEAAwE;AACxE,eAAO,MAAM,gBAAgB,yBAAyB,CAAC;AAEvD;;;;;;;;;GASG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAoB7E;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,UAAU,EACf,MAAM,SAAI,GACT,MAAM,CAAC,OAAO,EAAE,EAAE,YAAY,CAAC,CAqCjC"}
@@ -101,3 +101,4 @@ export function parsePktLines(buf, offset = 0) {
101
101
  }
102
102
  return Result.ok(lines);
103
103
  }
104
+ //# sourceMappingURL=pkt_line.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pkt_line.js","sourceRoot":"","sources":["../../src/protocol/pkt_line.ts"],"names":[],"mappings":"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"}
@@ -98,3 +98,4 @@ export function parseV2CapabilityAdvertisement(body) {
98
98
  }
99
99
  return Result.ok(capabilities);
100
100
  }
101
+ //# sourceMappingURL=refs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refs.js","sourceRoot":"","sources":["../../src/protocol/refs.ts"],"names":[],"mappings":"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"}
@@ -42,4 +42,5 @@ export declare function demuxSideband(body: Uint8Array): Result<SidebandData, Pk
42
42
  * @param diagnostic Optional sink for non-fatal server stderr (channel 3).
43
43
  */
44
44
  export declare function extractPack(response: Uint8Array, diagnostic?: DiagnosticFn): Result<Uint8Array, PktLineError | UploadPackError>;
45
+ export declare function extractPackToFile(srcPath: string, destPath: string, diagnostic?: DiagnosticFn): Promise<Result<number, PktLineError | UploadPackError>>;
45
46
  //# sourceMappingURL=upload_pack.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"upload_pack.d.ts","sourceRoot":"","sources":["../../src/protocol/upload_pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA0CnF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,mBAAmB,GAC3B,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAIlC;AA6ED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,CA4BlF;AA4BD;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,UAAU,EACpB,UAAU,CAAC,EAAE,YAAY,GACxB,MAAM,CAAC,UAAU,EAAE,YAAY,GAAG,eAAe,CAAC,CAgCpD"}
1
+ {"version":3,"file":"upload_pack.d.ts","sourceRoot":"","sources":["../../src/protocol/upload_pack.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE7D,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AA2CnF;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,mBAAmB,GAC3B,MAAM,CAAC,UAAU,EAAE,YAAY,CAAC,CAIlC;AA6ED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,UAAU,GAAG,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,CA4BlF;AA4BD;;;;;;;;;;;;GAYG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,UAAU,EACpB,UAAU,CAAC,EAAE,YAAY,GACxB,MAAM,CAAC,UAAU,EAAE,YAAY,GAAG,eAAe,CAAC,CAgCpD;AAED,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,UAAU,CAAC,EAAE,YAAY,GACxB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,YAAY,GAAG,eAAe,CAAC,CAAC,CAKzD"}
@@ -9,6 +9,7 @@
9
9
  * text. The packfile itself is the concatenation of all channel-1 payloads.
10
10
  */
11
11
  import { Result } from "better-result";
12
+ import { readFile, writeFile } from "node:fs/promises";
12
13
  import { UploadPackError } from "../errors.js";
13
14
  import { PACK_SIGNATURE } from "../pack/objects.js";
14
15
  import { DELIM_PKT, FLUSH_PKT, parsePktLines, pktLine } from "./pkt_line.js";
@@ -101,7 +102,7 @@ function buildV0FetchRequest(options) {
101
102
  */
102
103
  function buildV2FetchRequest(options) {
103
104
  const lines = [];
104
- for (const text of ["command=fetch\n", "agent=git-remote-ops-deno/0.1\n"]) {
105
+ for (const text of ["command=fetch\n", "agent=git-remote-ops/0.1\n"]) {
105
106
  const line = pktLine(encoder.encode(text));
106
107
  if (line.isErr())
107
108
  return Result.err(line.error);
@@ -238,6 +239,13 @@ export function extractPack(response, diagnostic) {
238
239
  message: `unrecognized data pkt-line (starts with ${Array.from(payload.subarray(0, 8)).join(",")})`,
239
240
  }));
240
241
  }
242
+ export async function extractPackToFile(srcPath, destPath, diagnostic) {
243
+ const pack = extractPack(new Uint8Array(await readFile(srcPath)), diagnostic);
244
+ if (pack.isErr())
245
+ return Result.err(pack.error);
246
+ await writeFile(destPath, pack.value);
247
+ return Result.ok(pack.value.length);
248
+ }
241
249
  function startsWith(bytes, prefix) {
242
250
  if (bytes.length < prefix.length)
243
251
  return false;
@@ -257,3 +265,4 @@ function indexOfBytes(haystack, needle) {
257
265
  }
258
266
  return -1;
259
267
  }
268
+ //# sourceMappingURL=upload_pack.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upload_pack.js","sourceRoot":"","sources":["../../src/protocol/upload_pack.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @module store
3
+ *
4
+ * Disk-backed Git loose-object store.
5
+ */
6
+ import { Result } from "better-result";
7
+ import { ObjectDecodeError, ObjectNotFoundError, PackParseError } from "./errors.js";
8
+ import type { GitObject, GitObjectType } from "./types.js";
9
+ export declare class LooseObjectStore {
10
+ readonly rootDir: string;
11
+ readonly objectsDir: string;
12
+ readonly incomingDir: string;
13
+ readonly snapshotsDir: string;
14
+ constructor(rootDir: string);
15
+ objectPath(sha: string): string;
16
+ snapshotPath(sha: string): string;
17
+ incomingPath(suffix: string): string;
18
+ has(sha: string): Promise<boolean>;
19
+ hasSync(sha: string): boolean;
20
+ hasSnapshot(sha: string): Promise<boolean>;
21
+ markSnapshot(sha: string): Promise<void>;
22
+ read(sha: string): Promise<Result<GitObject, ObjectNotFoundError | ObjectDecodeError>>;
23
+ write(type: GitObjectType, content: Uint8Array): Promise<Result<string, PackParseError | ObjectDecodeError>>;
24
+ writeSync(type: GitObjectType, content: Uint8Array): Result<string, PackParseError | ObjectDecodeError>;
25
+ private decodeLooseObject;
26
+ }
27
+ export declare function frameObject(type: GitObjectType, content: Uint8Array): Uint8Array;
28
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAIvC,OAAO,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAErF,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAe3D,qBAAa,gBAAgB;IAC3B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;gBAElB,OAAO,EAAE,MAAM;IAU3B,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAI/B,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAIjC,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAK9B,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAWxC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO;IAUvB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAU1C,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,mBAAmB,GAAG,iBAAiB,CAAC,CAAC;IAkB5F,KAAK,CACH,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC,CAAC;IAI9D,SAAS,CACP,IAAI,EAAE,aAAa,EACnB,OAAO,EAAE,UAAU,GAClB,MAAM,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC;IAmCrD,OAAO,CAAC,iBAAiB;CA8B1B;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,aAAa,EAAE,OAAO,EAAE,UAAU,GAAG,UAAU,CAMhF"}
package/dist/store.js ADDED
@@ -0,0 +1,179 @@
1
+ /**
2
+ * @module store
3
+ *
4
+ * Disk-backed Git loose-object store.
5
+ */
6
+ import { Result } from "better-result";
7
+ import { mkdirSync, renameSync, rmSync, statSync, writeFileSync } from "node:fs";
8
+ import { readFile, stat, writeFile } from "node:fs/promises";
9
+ import { deflateSync, inflateSync } from "node:zlib";
10
+ import { ObjectDecodeError, ObjectNotFoundError } from "./errors.js";
11
+ import { sha1OfObject } from "./pack/objects.js";
12
+ const encoder = new TextEncoder();
13
+ const decoder = new TextDecoder();
14
+ const VALID_SHA = /^[0-9a-f]{40}$/;
15
+ const VALID_TYPES = new Set(["commit", "tree", "blob", "tag"]);
16
+ function isNotFound(cause) {
17
+ return cause instanceof Error && "code" in cause && cause.code === "ENOENT";
18
+ }
19
+ function isAlreadyExists(cause) {
20
+ return cause instanceof Error && "code" in cause && cause.code === "EEXIST";
21
+ }
22
+ export class LooseObjectStore {
23
+ rootDir;
24
+ objectsDir;
25
+ incomingDir;
26
+ snapshotsDir;
27
+ constructor(rootDir) {
28
+ this.rootDir = rootDir.replace(/\/+$/, "");
29
+ this.objectsDir = `${this.rootDir}/objects`;
30
+ this.incomingDir = `${this.rootDir}/incoming`;
31
+ this.snapshotsDir = `${this.rootDir}/snapshots`;
32
+ mkdirSync(this.objectsDir, { recursive: true });
33
+ mkdirSync(this.incomingDir, { recursive: true });
34
+ mkdirSync(this.snapshotsDir, { recursive: true });
35
+ }
36
+ objectPath(sha) {
37
+ return `${this.objectsDir}/${sha.slice(0, 2)}/${sha.slice(2)}`;
38
+ }
39
+ snapshotPath(sha) {
40
+ return `${this.snapshotsDir}/${sha}`;
41
+ }
42
+ incomingPath(suffix) {
43
+ const safeSuffix = suffix.startsWith(".") ? suffix : `.${suffix}`;
44
+ return `${this.incomingDir}/${Date.now()}-${crypto.randomUUID()}${safeSuffix}`;
45
+ }
46
+ async has(sha) {
47
+ if (!VALID_SHA.test(sha))
48
+ return false;
49
+ try {
50
+ const info = await stat(this.objectPath(sha));
51
+ return info.isFile();
52
+ }
53
+ catch (cause) {
54
+ if (isNotFound(cause))
55
+ return false;
56
+ throw cause;
57
+ }
58
+ }
59
+ hasSync(sha) {
60
+ if (!VALID_SHA.test(sha))
61
+ return false;
62
+ try {
63
+ return statSync(this.objectPath(sha)).isFile();
64
+ }
65
+ catch (cause) {
66
+ if (isNotFound(cause))
67
+ return false;
68
+ throw cause;
69
+ }
70
+ }
71
+ async hasSnapshot(sha) {
72
+ try {
73
+ const info = await stat(this.snapshotPath(sha));
74
+ return info.isFile();
75
+ }
76
+ catch (cause) {
77
+ if (isNotFound(cause))
78
+ return false;
79
+ throw cause;
80
+ }
81
+ }
82
+ async markSnapshot(sha) {
83
+ await writeFile(this.snapshotPath(sha), "", { flag: "w" });
84
+ }
85
+ async read(sha) {
86
+ if (!VALID_SHA.test(sha) || !(await this.has(sha))) {
87
+ return Result.err(new ObjectNotFoundError({ sha, message: `object not found: ${sha}` }));
88
+ }
89
+ const bytes = await Result.tryPromise({
90
+ try: async () => new Uint8Array(await readFile(this.objectPath(sha))),
91
+ catch: (cause) => new ObjectDecodeError({
92
+ reason: "malformed-object",
93
+ message: `failed to read object: ${sha}`,
94
+ sha,
95
+ cause,
96
+ }),
97
+ });
98
+ if (bytes.isErr())
99
+ return Result.err(bytes.error);
100
+ return this.decodeLooseObject(sha, bytes.value);
101
+ }
102
+ write(type, content) {
103
+ return Promise.resolve(this.writeSync(type, content));
104
+ }
105
+ writeSync(type, content) {
106
+ const sha = sha1OfObject(type, content);
107
+ if (sha.isErr())
108
+ return Result.err(sha.error);
109
+ if (this.hasSync(sha.value))
110
+ return Result.ok(sha.value);
111
+ const dir = `${this.objectsDir}/${sha.value.slice(0, 2)}`;
112
+ const path = `${dir}/${sha.value.slice(2)}`;
113
+ mkdirSync(dir, { recursive: true });
114
+ const tmp = `${dir}/.${sha.value.slice(2)}.${crypto.randomUUID()}.tmp`;
115
+ try {
116
+ writeFileSync(tmp, deflateSync(frameObject(type, content)));
117
+ try {
118
+ renameSync(tmp, path);
119
+ }
120
+ catch (cause) {
121
+ if (isAlreadyExists(cause))
122
+ return Result.ok(sha.value);
123
+ throw cause;
124
+ }
125
+ return Result.ok(sha.value);
126
+ }
127
+ catch (cause) {
128
+ try {
129
+ rmSync(tmp, { force: true });
130
+ }
131
+ catch {
132
+ // ignore best-effort temp cleanup
133
+ }
134
+ return Result.err(new ObjectDecodeError({
135
+ reason: "malformed-object",
136
+ message: `failed to write object: ${sha.value}`,
137
+ sha: sha.value,
138
+ cause,
139
+ }));
140
+ }
141
+ }
142
+ decodeLooseObject(sha, compressed) {
143
+ try {
144
+ const inflated = new Uint8Array(inflateSync(compressed));
145
+ const nul = inflated.indexOf(0);
146
+ if (nul < 0)
147
+ throw new Error("missing loose-object header terminator");
148
+ const header = decoder.decode(inflated.subarray(0, nul));
149
+ const match = /^(commit|tree|blob|tag) (\d+)$/.exec(header);
150
+ if (!match)
151
+ throw new Error(`invalid loose-object header: ${header}`);
152
+ const type = match[1];
153
+ if (!VALID_TYPES.has(type))
154
+ throw new Error(`invalid loose-object type: ${type}`);
155
+ const content = inflated.subarray(nul + 1);
156
+ const expectedLength = Number(match[2]);
157
+ if (content.length !== expectedLength) {
158
+ throw new Error(`object size mismatch: ${content.length} != ${expectedLength}`);
159
+ }
160
+ return Result.ok({ type, content });
161
+ }
162
+ catch (cause) {
163
+ return Result.err(new ObjectDecodeError({
164
+ reason: "malformed-object",
165
+ message: `failed to decode object: ${sha}`,
166
+ sha,
167
+ cause,
168
+ }));
169
+ }
170
+ }
171
+ }
172
+ export function frameObject(type, content) {
173
+ const header = encoder.encode(`${type} ${content.length}\0`);
174
+ const framed = new Uint8Array(header.length + content.length);
175
+ framed.set(header);
176
+ framed.set(content, header.length);
177
+ return framed;
178
+ }
179
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,20 @@
1
+ /**
2
+ * @module transport
3
+ *
4
+ * Thin `fetch` wrappers for the two HTTP endpoints the smart-HTTP Git
5
+ * protocol uses:
6
+ *
7
+ * - `GET <repo>/info/refs?service=git-upload-pack` — capability/ref ad.
8
+ * - `POST <repo>/git-upload-pack` — the actual fetch request, body framed
9
+ * by the protocol layer.
10
+ *
11
+ * Both helpers turn errors into {@link TransportError} (never throw) and
12
+ * record timing / byte counts onto the supplied {@link Logger}.
13
+ */
1
14
  import { Result } from "better-result";
2
15
  import { TransportError } from "./errors.js";
3
16
  import { Logger } from "./logger.js";
4
- import type { GitProtocolOptions, HttpTransportResponse } from "./types.js";
17
+ import type { GitProtocolOptions, HttpFileTransportResponse, HttpTransportResponse } from "./types.js";
5
18
  /** Per-request transport context: protocol version + optional logger. */
6
19
  export interface TransportContext extends GitProtocolOptions {
7
20
  logger?: Logger;
@@ -20,5 +33,5 @@ export declare function getSmartHttp(url: string, path: string, options?: Transp
20
33
  * `Connection: close` is set explicitly because some servers (notably
21
34
  * `dumb-http-bridge` setups) hang on keep-alive.
22
35
  */
23
- export declare function postUploadPack(url: string, body: Uint8Array, options?: TransportContext): Promise<Result<HttpTransportResponse, TransportError>>;
36
+ export declare function postUploadPack(url: string, body: Uint8Array, destPath: string, options?: TransportContext): Promise<Result<HttpFileTransportResponse, TransportError>>;
24
37
  //# sourceMappingURL=transport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AAEvC,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,MAAM,EAAe,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EACV,kBAAkB,EAClB,yBAAyB,EACzB,qBAAqB,EACtB,MAAM,YAAY,CAAC;AAKpB,yEAAyE;AACzE,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AA2CD;;;;GAIG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC,qBAAqB,EAAE,cAAc,CAAC,CAAC,CA8BxD;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,UAAU,EAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,CAAC,EAAE,gBAAgB,GACzB,OAAO,CAAC,MAAM,CAAC,yBAAyB,EAAE,cAAc,CAAC,CAAC,CA0E5D"}
@@ -11,12 +11,12 @@
11
11
  * Both helpers turn errors into {@link TransportError} (never throw) and
12
12
  * record timing / byte counts onto the supplied {@link Logger}.
13
13
  */
14
- import * as dntShim from "./_dnt.shims.js";
15
14
  import { Result } from "better-result";
15
+ import { writeFile } from "node:fs/promises";
16
16
  import { TransportError } from "./errors.js";
17
17
  import { NULL_LOGGER } from "./logger.js";
18
18
  /** Sent verbatim as `User-Agent`. Git servers sometimes log this. */
19
- const USER_AGENT = "git/2.0 (git-remote-ops-deno)";
19
+ const USER_AGENT = "git/2.0 (git-remote-ops)";
20
20
  function trimUrl(url) {
21
21
  return url.replace(/\/+$/, "");
22
22
  }
@@ -60,7 +60,7 @@ export async function getSmartHttp(url, path, options) {
60
60
  logger.debug(`GET ${path} (protocol=${options?.protocolVersion ?? 0})`);
61
61
  const start = performance.now();
62
62
  const response = await Result.tryPromise({
63
- try: () => dntShim.fetch(requestUrl, {
63
+ try: () => fetch(requestUrl, {
64
64
  headers: { "User-Agent": USER_AGENT, ...protocolHeaders(options) },
65
65
  }),
66
66
  catch: (cause) => new TransportError({
@@ -88,13 +88,13 @@ export async function getSmartHttp(url, path, options) {
88
88
  * `Connection: close` is set explicitly because some servers (notably
89
89
  * `dumb-http-bridge` setups) hang on keep-alive.
90
90
  */
91
- export async function postUploadPack(url, body, options) {
91
+ export async function postUploadPack(url, body, destPath, options) {
92
92
  const logger = options?.logger ?? NULL_LOGGER;
93
93
  const requestUrl = `${trimUrl(url)}/git-upload-pack`;
94
94
  logger.debug(`POST git-upload-pack (${body.length}B, protocol=${options?.protocolVersion ?? 0})`);
95
95
  const start = performance.now();
96
96
  const response = await Result.tryPromise({
97
- try: () => dntShim.fetch(requestUrl, {
97
+ try: () => fetch(requestUrl, {
98
98
  method: "POST",
99
99
  body: body,
100
100
  headers: {
@@ -114,15 +114,44 @@ export async function postUploadPack(url, body, options) {
114
114
  });
115
115
  if (response.isErr())
116
116
  return Result.err(response.error);
117
- const read = await readResponse(response.value, "POST git-upload-pack", requestUrl);
118
- const durationMs = performance.now() - start;
119
- if (read.isOk()) {
120
- logger.recordHttp({
121
- bytesIn: read.value.body.length,
122
- bytesOut: body.length,
123
- durationMs,
124
- });
125
- logger.debug(`POST git-upload-pack -> ${response.value.status}, ${read.value.body.length}B in ${durationMs.toFixed(1)}ms`);
117
+ if (!response.value.ok) {
118
+ return Result.err(new TransportError({
119
+ method: "POST",
120
+ url: requestUrl,
121
+ status: response.value.status,
122
+ statusText: response.value.statusText,
123
+ message: `POST failed: ${response.value.status} ${response.value.statusText}`,
124
+ }));
126
125
  }
127
- return read;
126
+ if (!response.value.body) {
127
+ return Result.err(new TransportError({
128
+ method: "POST",
129
+ url: requestUrl,
130
+ message: "POST git-upload-pack response had no body",
131
+ }));
132
+ }
133
+ const streamed = await Result.tryPromise({
134
+ try: async () => {
135
+ const bytes = new Uint8Array(await response.value.arrayBuffer());
136
+ await writeFile(destPath, bytes);
137
+ return bytes.length;
138
+ },
139
+ catch: (cause) => new TransportError({
140
+ method: "POST",
141
+ url: requestUrl,
142
+ message: "POST git-upload-pack failed writing response body",
143
+ cause,
144
+ }),
145
+ });
146
+ const durationMs = performance.now() - start;
147
+ if (streamed.isErr())
148
+ return Result.err(streamed.error);
149
+ logger.recordHttp({
150
+ bytesIn: streamed.value,
151
+ bytesOut: body.length,
152
+ durationMs,
153
+ });
154
+ logger.debug(`POST git-upload-pack -> ${response.value.status}, ${streamed.value}B in ${durationMs.toFixed(1)}ms`);
155
+ return Result.ok({ path: destPath, length: streamed.value, status: response.value.status });
128
156
  }
157
+ //# sourceMappingURL=transport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transport.js","sourceRoot":"","sources":["../src/transport.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAU,WAAW,EAAE,MAAM,aAAa,CAAC;AAOlD,qEAAqE;AACrE,MAAM,UAAU,GAAG,0BAA0B,CAAC;AAO9C,SAAS,OAAO,CAAC,GAAW;IAC1B,OAAO,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,SAAS,eAAe,CAAC,OAA4B;IACnD,OAAO,OAAO,EAAE,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;AAC/E,CAAC;AAED,KAAK,UAAU,YAAY,CACzB,QAAkB,EAClB,MAAc,EACd,GAAW;IAEX,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,OAAO,MAAM,CAAC,GAAG,CACf,IAAI,cAAc,CAAC;YACjB,MAAM;YACN,GAAG;YACH,MAAM,EAAE,QAAQ,CAAC,MAAM;YACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,OAAO,EAAE,GAAG,MAAM,YAAY,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,UAAU,EAAE;SACvE,CAAC,CACH,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC;QACnC,GAAG,EAAE,GAAG,EAAE,CAAC,QAAQ,CAAC,WAAW,EAAE;QACjC,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,cAAc,CAAC;YACjB,MAAM;YACN,GAAG;YACH,OAAO,EAAE,GAAG,MAAM,+BAA+B;YACjD,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IACH,IAAI,IAAI,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAChD,OAAO,MAAM,CAAC,EAAE,CAAC;QACf,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC;QAChC,MAAM,EAAE,QAAQ,CAAC,MAAM;KACxB,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,GAAW,EACX,IAAY,EACZ,OAA0B;IAE1B,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,WAAW,CAAC;IAC9C,MAAM,UAAU,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC;IAC5C,MAAM,CAAC,KAAK,CAAC,OAAO,IAAI,cAAc,OAAO,EAAE,eAAe,IAAI,CAAC,GAAG,CAAC,CAAC;IACxE,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC;QACvC,GAAG,EAAE,GAAG,EAAE,CACR,KAAK,CAAC,UAAU,EAAE;YAChB,OAAO,EAAE,EAAE,YAAY,EAAE,UAAU,EAAE,GAAG,eAAe,CAAC,OAAO,CAAC,EAAE;SACnE,CAAC;QACJ,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,cAAc,CAAC;YACjB,MAAM,EAAE,KAAK;YACb,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,OAAO,IAAI,SAAS;YAC7B,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,IAAI,GAAG,MAAM,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,OAAO,IAAI,EAAE,EAAE,UAAU,CAAC,CAAC;IAC3E,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;IAC7C,IAAI,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QAChB,MAAM,CAAC,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC;QAChF,MAAM,CAAC,KAAK,CACV,OAAO,IAAI,OAAO,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,QAChE,UAAU,CAAC,OAAO,CAAC,CAAC,CACtB,IAAI,CACL,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,GAAW,EACX,IAAgB,EAChB,QAAgB,EAChB,OAA0B;IAE1B,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,IAAI,WAAW,CAAC;IAC9C,MAAM,UAAU,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC;IACrD,MAAM,CAAC,KAAK,CAAC,yBAAyB,IAAI,CAAC,MAAM,eAAe,OAAO,EAAE,eAAe,IAAI,CAAC,GAAG,CAAC,CAAC;IAClG,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAChC,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC;QACvC,GAAG,EAAE,GAAG,EAAE,CACR,KAAK,CAAC,UAAU,EAAE;YAChB,MAAM,EAAE,MAAM;YACd,IAAI,EAAE,IAAgB;YACtB,OAAO,EAAE;gBACP,cAAc,EAAE,uCAAuC;gBACvD,QAAQ,EAAE,sCAAsC;gBAChD,YAAY,EAAE,UAAU;gBACxB,YAAY,EAAE,OAAO;gBACrB,GAAG,eAAe,CAAC,OAAO,CAAC;aAC5B;SACF,CAAC;QACJ,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,cAAc,CAAC;YACjB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,6BAA6B;YACtC,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IACH,IAAI,QAAQ,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC;QACvB,OAAO,MAAM,CAAC,GAAG,CACf,IAAI,cAAc,CAAC;YACjB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,UAAU;YACf,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM;YAC7B,UAAU,EAAE,QAAQ,CAAC,KAAK,CAAC,UAAU;YACrC,OAAO,EAAE,gBAAgB,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,QAAQ,CAAC,KAAK,CAAC,UAAU,EAAE;SAC9E,CAAC,CACH,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QACzB,OAAO,MAAM,CAAC,GAAG,CACf,IAAI,cAAc,CAAC;YACjB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,2CAA2C;SACrD,CAAC,CACH,CAAC;IACJ,CAAC;IACD,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,UAAU,CAAC;QACvC,GAAG,EAAE,KAAK,IAAI,EAAE;YACd,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YACjE,MAAM,SAAS,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACjC,OAAO,KAAK,CAAC,MAAM,CAAC;QACtB,CAAC;QACD,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE,CACf,IAAI,cAAc,CAAC;YACjB,MAAM,EAAE,MAAM;YACd,GAAG,EAAE,UAAU;YACf,OAAO,EAAE,mDAAmD;YAC5D,KAAK;SACN,CAAC;KACL,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC;IAC7C,IAAI,QAAQ,CAAC,KAAK,EAAE;QAAE,OAAO,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,CAAC,UAAU,CAAC;QAChB,OAAO,EAAE,QAAQ,CAAC,KAAK;QACvB,QAAQ,EAAE,IAAI,CAAC,MAAM;QACrB,UAAU;KACX,CAAC,CAAC;IACH,MAAM,CAAC,KAAK,CACV,2BAA2B,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,QAAQ,CAAC,KAAK,QACjE,UAAU,CAAC,OAAO,CAAC,CAAC,CACtB,IAAI,CACL,CAAC;IACF,OAAO,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC;AAC9F,CAAC"}
@@ -12,7 +12,7 @@ export interface GitObject {
12
12
  type: GitObjectType;
13
13
  content: Uint8Array;
14
14
  }
15
- /** Object store keyed by hex SHA-1. The client keeps a single one of these. */
15
+ /** In-memory object map used by parser and tree helper APIs. */
16
16
  export type GitObjectMap = Map<string, GitObject>;
17
17
  /** One entry in a tree object. `sha` is hex SHA-1. */
18
18
  export interface TreeEntry {
@@ -34,18 +34,15 @@ export interface CommitInfo {
34
34
  /** Raw `committer` line, unparsed. */
35
35
  committer?: string;
36
36
  }
37
+ export type PackParseScope = "target" | "trees" | "all";
37
38
  /** Knobs accepted by {@link RemoteGit.fetchCommit} and friends. */
38
39
  export interface FetchCommitOptions {
39
40
  /** Shallow-clone depth. Server must advertise `shallow`; otherwise ignored. */
40
41
  depth?: number;
41
42
  /** Object filter spec (`"blob:none"`, `"tree:0"`, …). Ignored if unsupported. */
42
43
  filter?: string;
43
- /**
44
- * When true, the parser keeps every object in the pack instead of bailing
45
- * out as soon as the requested commit is materialized. Required by
46
- * snapshot-style operations that walk into the commit's tree.
47
- */
48
- parseFull?: boolean;
44
+ /** Parser retention mode. `trees` keeps commits and trees while skipping blobs. */
45
+ parseScope?: PackParseScope;
49
46
  }
50
47
  /** Cached server capability profile, populated by `discover()` + `probe()`. */
51
48
  export interface ServerProfile {
@@ -65,6 +62,8 @@ export interface ServerProfile {
65
62
  }
66
63
  /** Constructor options for {@link RemoteGit}. */
67
64
  export interface RemoteGitOptions {
65
+ /** Directory where loose objects and transient pack files are stored. */
66
+ storeDir: string;
68
67
  /** Optional callback for low-level diagnostic strings (e.g. server stderr). */
69
68
  diagnostic?: DiagnosticFn;
70
69
  /** Inject a configured {@link Logger}; otherwise one is built from `diagnostic`. */
@@ -114,6 +113,12 @@ export interface HttpTransportResponse {
114
113
  body: Uint8Array;
115
114
  status: number;
116
115
  }
116
+ /** What streaming transport returns after writing a response to disk. */
117
+ export interface HttpFileTransportResponse {
118
+ path: string;
119
+ length: number;
120
+ status: number;
121
+ }
117
122
  /** Mixed into transport options; controls the `Git-Protocol` header. */
118
123
  export interface GitProtocolOptions {
119
124
  protocolVersion?: 0 | 2;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -6,3 +6,4 @@
6
6
  * implementation files just to name a shape.
7
7
  */
8
8
  export {};
9
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}