@ebowwa/pkg-ops 0.1.9

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 (469) hide show
  1. package/README.md +108 -0
  2. package/dist/bridge.d.ts +149 -0
  3. package/dist/bridge.d.ts.map +1 -0
  4. package/dist/config.d.ts +92 -0
  5. package/dist/config.d.ts.map +1 -0
  6. package/dist/health-server.d.ts +100 -0
  7. package/dist/health-server.d.ts.map +1 -0
  8. package/dist/index.d.ts +25 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +64 -0
  11. package/dist/index.js.map +16 -0
  12. package/dist/service-manager.d.ts +115 -0
  13. package/dist/service-manager.d.ts.map +1 -0
  14. package/package.json +61 -0
  15. package/rust/Cargo.lock +577 -0
  16. package/rust/Cargo.toml +21 -0
  17. package/rust/src/lib.rs +799 -0
  18. package/rust/src/main.rs +344 -0
  19. package/rust/src/protocol.rs +155 -0
  20. package/rust/target/.rustc_info.json +1 -0
  21. package/rust/target/CACHEDIR.TAG +3 -0
  22. package/rust/target/release/.cargo-lock +0 -0
  23. package/rust/target/release/.fingerprint/autocfg-1b3bd8a7b74bd5b4/dep-lib-autocfg +0 -0
  24. package/rust/target/release/.fingerprint/autocfg-1b3bd8a7b74bd5b4/invoked.timestamp +1 -0
  25. package/rust/target/release/.fingerprint/autocfg-1b3bd8a7b74bd5b4/lib-autocfg +1 -0
  26. package/rust/target/release/.fingerprint/autocfg-1b3bd8a7b74bd5b4/lib-autocfg.json +1 -0
  27. package/rust/target/release/.fingerprint/block-buffer-cf3be8244cc78328/dep-lib-block_buffer +0 -0
  28. package/rust/target/release/.fingerprint/block-buffer-cf3be8244cc78328/invoked.timestamp +1 -0
  29. package/rust/target/release/.fingerprint/block-buffer-cf3be8244cc78328/lib-block_buffer +1 -0
  30. package/rust/target/release/.fingerprint/block-buffer-cf3be8244cc78328/lib-block_buffer.json +1 -0
  31. package/rust/target/release/.fingerprint/cfg-if-e24d4f7b470ac1f7/dep-lib-cfg_if +0 -0
  32. package/rust/target/release/.fingerprint/cfg-if-e24d4f7b470ac1f7/invoked.timestamp +1 -0
  33. package/rust/target/release/.fingerprint/cfg-if-e24d4f7b470ac1f7/lib-cfg_if +1 -0
  34. package/rust/target/release/.fingerprint/cfg-if-e24d4f7b470ac1f7/lib-cfg_if.json +1 -0
  35. package/rust/target/release/.fingerprint/chrono-c2c1d826849da6b8/dep-lib-chrono +0 -0
  36. package/rust/target/release/.fingerprint/chrono-c2c1d826849da6b8/invoked.timestamp +1 -0
  37. package/rust/target/release/.fingerprint/chrono-c2c1d826849da6b8/lib-chrono +1 -0
  38. package/rust/target/release/.fingerprint/chrono-c2c1d826849da6b8/lib-chrono.json +1 -0
  39. package/rust/target/release/.fingerprint/core-foundation-sys-bdb199b1a618a85a/dep-lib-core_foundation_sys +0 -0
  40. package/rust/target/release/.fingerprint/core-foundation-sys-bdb199b1a618a85a/invoked.timestamp +1 -0
  41. package/rust/target/release/.fingerprint/core-foundation-sys-bdb199b1a618a85a/lib-core_foundation_sys +1 -0
  42. package/rust/target/release/.fingerprint/core-foundation-sys-bdb199b1a618a85a/lib-core_foundation_sys.json +1 -0
  43. package/rust/target/release/.fingerprint/cpufeatures-044997a43e932cd2/dep-lib-cpufeatures +0 -0
  44. package/rust/target/release/.fingerprint/cpufeatures-044997a43e932cd2/invoked.timestamp +1 -0
  45. package/rust/target/release/.fingerprint/cpufeatures-044997a43e932cd2/lib-cpufeatures +1 -0
  46. package/rust/target/release/.fingerprint/cpufeatures-044997a43e932cd2/lib-cpufeatures.json +1 -0
  47. package/rust/target/release/.fingerprint/crypto-common-ff4fa5d0a5e0455d/dep-lib-crypto_common +0 -0
  48. package/rust/target/release/.fingerprint/crypto-common-ff4fa5d0a5e0455d/invoked.timestamp +1 -0
  49. package/rust/target/release/.fingerprint/crypto-common-ff4fa5d0a5e0455d/lib-crypto_common +1 -0
  50. package/rust/target/release/.fingerprint/crypto-common-ff4fa5d0a5e0455d/lib-crypto_common.json +1 -0
  51. package/rust/target/release/.fingerprint/digest-6037e23ec7b0997e/dep-lib-digest +0 -0
  52. package/rust/target/release/.fingerprint/digest-6037e23ec7b0997e/invoked.timestamp +1 -0
  53. package/rust/target/release/.fingerprint/digest-6037e23ec7b0997e/lib-digest +1 -0
  54. package/rust/target/release/.fingerprint/digest-6037e23ec7b0997e/lib-digest.json +1 -0
  55. package/rust/target/release/.fingerprint/generic-array-6939b76bf342e446/dep-lib-generic_array +0 -0
  56. package/rust/target/release/.fingerprint/generic-array-6939b76bf342e446/invoked.timestamp +1 -0
  57. package/rust/target/release/.fingerprint/generic-array-6939b76bf342e446/lib-generic_array +1 -0
  58. package/rust/target/release/.fingerprint/generic-array-6939b76bf342e446/lib-generic_array.json +1 -0
  59. package/rust/target/release/.fingerprint/generic-array-8ce40917f76412b1/build-script-build-script-build +1 -0
  60. package/rust/target/release/.fingerprint/generic-array-8ce40917f76412b1/build-script-build-script-build.json +1 -0
  61. package/rust/target/release/.fingerprint/generic-array-8ce40917f76412b1/dep-build-script-build-script-build +0 -0
  62. package/rust/target/release/.fingerprint/generic-array-8ce40917f76412b1/invoked.timestamp +1 -0
  63. package/rust/target/release/.fingerprint/generic-array-e69e3a44765f6d58/run-build-script-build-script-build +1 -0
  64. package/rust/target/release/.fingerprint/generic-array-e69e3a44765f6d58/run-build-script-build-script-build.json +1 -0
  65. package/rust/target/release/.fingerprint/iana-time-zone-7907cd9c1810cf88/dep-lib-iana_time_zone +0 -0
  66. package/rust/target/release/.fingerprint/iana-time-zone-7907cd9c1810cf88/invoked.timestamp +1 -0
  67. package/rust/target/release/.fingerprint/iana-time-zone-7907cd9c1810cf88/lib-iana_time_zone +1 -0
  68. package/rust/target/release/.fingerprint/iana-time-zone-7907cd9c1810cf88/lib-iana_time_zone.json +1 -0
  69. package/rust/target/release/.fingerprint/itoa-a9b94ec9a7564538/dep-lib-itoa +0 -0
  70. package/rust/target/release/.fingerprint/itoa-a9b94ec9a7564538/invoked.timestamp +1 -0
  71. package/rust/target/release/.fingerprint/itoa-a9b94ec9a7564538/lib-itoa +1 -0
  72. package/rust/target/release/.fingerprint/itoa-a9b94ec9a7564538/lib-itoa.json +1 -0
  73. package/rust/target/release/.fingerprint/lazy_static-79337840520ffaab/dep-lib-lazy_static +0 -0
  74. package/rust/target/release/.fingerprint/lazy_static-79337840520ffaab/invoked.timestamp +1 -0
  75. package/rust/target/release/.fingerprint/lazy_static-79337840520ffaab/lib-lazy_static +1 -0
  76. package/rust/target/release/.fingerprint/lazy_static-79337840520ffaab/lib-lazy_static.json +1 -0
  77. package/rust/target/release/.fingerprint/libc-1e68faf72d2d6d6a/build-script-build-script-build +1 -0
  78. package/rust/target/release/.fingerprint/libc-1e68faf72d2d6d6a/build-script-build-script-build.json +1 -0
  79. package/rust/target/release/.fingerprint/libc-1e68faf72d2d6d6a/dep-build-script-build-script-build +0 -0
  80. package/rust/target/release/.fingerprint/libc-1e68faf72d2d6d6a/invoked.timestamp +1 -0
  81. package/rust/target/release/.fingerprint/libc-7781f1d3692ef952/run-build-script-build-script-build +1 -0
  82. package/rust/target/release/.fingerprint/libc-7781f1d3692ef952/run-build-script-build-script-build.json +1 -0
  83. package/rust/target/release/.fingerprint/libc-ab405543531da832/dep-lib-libc +0 -0
  84. package/rust/target/release/.fingerprint/libc-ab405543531da832/invoked.timestamp +1 -0
  85. package/rust/target/release/.fingerprint/libc-ab405543531da832/lib-libc +1 -0
  86. package/rust/target/release/.fingerprint/libc-ab405543531da832/lib-libc.json +1 -0
  87. package/rust/target/release/.fingerprint/log-c93c9501d50fd117/dep-lib-log +0 -0
  88. package/rust/target/release/.fingerprint/log-c93c9501d50fd117/invoked.timestamp +1 -0
  89. package/rust/target/release/.fingerprint/log-c93c9501d50fd117/lib-log +1 -0
  90. package/rust/target/release/.fingerprint/log-c93c9501d50fd117/lib-log.json +1 -0
  91. package/rust/target/release/.fingerprint/matchers-aa7b66eaa02449a5/dep-lib-matchers +0 -0
  92. package/rust/target/release/.fingerprint/matchers-aa7b66eaa02449a5/invoked.timestamp +1 -0
  93. package/rust/target/release/.fingerprint/matchers-aa7b66eaa02449a5/lib-matchers +1 -0
  94. package/rust/target/release/.fingerprint/matchers-aa7b66eaa02449a5/lib-matchers.json +1 -0
  95. package/rust/target/release/.fingerprint/memchr-006163bba97af52f/dep-lib-memchr +0 -0
  96. package/rust/target/release/.fingerprint/memchr-006163bba97af52f/invoked.timestamp +1 -0
  97. package/rust/target/release/.fingerprint/memchr-006163bba97af52f/lib-memchr +1 -0
  98. package/rust/target/release/.fingerprint/memchr-006163bba97af52f/lib-memchr.json +1 -0
  99. package/rust/target/release/.fingerprint/nu-ansi-term-56ab27c2fee1c03f/dep-lib-nu_ansi_term +0 -0
  100. package/rust/target/release/.fingerprint/nu-ansi-term-56ab27c2fee1c03f/invoked.timestamp +1 -0
  101. package/rust/target/release/.fingerprint/nu-ansi-term-56ab27c2fee1c03f/lib-nu_ansi_term +1 -0
  102. package/rust/target/release/.fingerprint/nu-ansi-term-56ab27c2fee1c03f/lib-nu_ansi_term.json +1 -0
  103. package/rust/target/release/.fingerprint/num-traits-960d689d96a427e4/run-build-script-build-script-build +1 -0
  104. package/rust/target/release/.fingerprint/num-traits-960d689d96a427e4/run-build-script-build-script-build.json +1 -0
  105. package/rust/target/release/.fingerprint/num-traits-a45e3ec48ef9afe7/dep-lib-num_traits +0 -0
  106. package/rust/target/release/.fingerprint/num-traits-a45e3ec48ef9afe7/invoked.timestamp +1 -0
  107. package/rust/target/release/.fingerprint/num-traits-a45e3ec48ef9afe7/lib-num_traits +1 -0
  108. package/rust/target/release/.fingerprint/num-traits-a45e3ec48ef9afe7/lib-num_traits.json +1 -0
  109. package/rust/target/release/.fingerprint/num-traits-e0dbc71c6a4b5721/build-script-build-script-build +1 -0
  110. package/rust/target/release/.fingerprint/num-traits-e0dbc71c6a4b5721/build-script-build-script-build.json +1 -0
  111. package/rust/target/release/.fingerprint/num-traits-e0dbc71c6a4b5721/dep-build-script-build-script-build +0 -0
  112. package/rust/target/release/.fingerprint/num-traits-e0dbc71c6a4b5721/invoked.timestamp +1 -0
  113. package/rust/target/release/.fingerprint/once_cell-1ba5d4df66429103/dep-lib-once_cell +0 -0
  114. package/rust/target/release/.fingerprint/once_cell-1ba5d4df66429103/invoked.timestamp +1 -0
  115. package/rust/target/release/.fingerprint/once_cell-1ba5d4df66429103/lib-once_cell +1 -0
  116. package/rust/target/release/.fingerprint/once_cell-1ba5d4df66429103/lib-once_cell.json +1 -0
  117. package/rust/target/release/.fingerprint/pin-project-lite-b67f60134987a063/dep-lib-pin_project_lite +0 -0
  118. package/rust/target/release/.fingerprint/pin-project-lite-b67f60134987a063/invoked.timestamp +1 -0
  119. package/rust/target/release/.fingerprint/pin-project-lite-b67f60134987a063/lib-pin_project_lite +1 -0
  120. package/rust/target/release/.fingerprint/pin-project-lite-b67f60134987a063/lib-pin_project_lite.json +1 -0
  121. package/rust/target/release/.fingerprint/proc-macro2-676678c45d7cb9a8/run-build-script-build-script-build +1 -0
  122. package/rust/target/release/.fingerprint/proc-macro2-676678c45d7cb9a8/run-build-script-build-script-build.json +1 -0
  123. package/rust/target/release/.fingerprint/proc-macro2-c5165b0726856761/dep-lib-proc_macro2 +0 -0
  124. package/rust/target/release/.fingerprint/proc-macro2-c5165b0726856761/invoked.timestamp +1 -0
  125. package/rust/target/release/.fingerprint/proc-macro2-c5165b0726856761/lib-proc_macro2 +1 -0
  126. package/rust/target/release/.fingerprint/proc-macro2-c5165b0726856761/lib-proc_macro2.json +1 -0
  127. package/rust/target/release/.fingerprint/proc-macro2-c72a330c78f30f59/build-script-build-script-build +1 -0
  128. package/rust/target/release/.fingerprint/proc-macro2-c72a330c78f30f59/build-script-build-script-build.json +1 -0
  129. package/rust/target/release/.fingerprint/proc-macro2-c72a330c78f30f59/dep-build-script-build-script-build +0 -0
  130. package/rust/target/release/.fingerprint/proc-macro2-c72a330c78f30f59/invoked.timestamp +1 -0
  131. package/rust/target/release/.fingerprint/quote-0c85187123c64982/build-script-build-script-build +1 -0
  132. package/rust/target/release/.fingerprint/quote-0c85187123c64982/build-script-build-script-build.json +1 -0
  133. package/rust/target/release/.fingerprint/quote-0c85187123c64982/dep-build-script-build-script-build +0 -0
  134. package/rust/target/release/.fingerprint/quote-0c85187123c64982/invoked.timestamp +1 -0
  135. package/rust/target/release/.fingerprint/quote-8e84519b0b657fd1/run-build-script-build-script-build +1 -0
  136. package/rust/target/release/.fingerprint/quote-8e84519b0b657fd1/run-build-script-build-script-build.json +1 -0
  137. package/rust/target/release/.fingerprint/quote-93e086ea3561ec28/dep-lib-quote +0 -0
  138. package/rust/target/release/.fingerprint/quote-93e086ea3561ec28/invoked.timestamp +1 -0
  139. package/rust/target/release/.fingerprint/quote-93e086ea3561ec28/lib-quote +1 -0
  140. package/rust/target/release/.fingerprint/quote-93e086ea3561ec28/lib-quote.json +1 -0
  141. package/rust/target/release/.fingerprint/regex-automata-f8d8efe517e98888/dep-lib-regex_automata +0 -0
  142. package/rust/target/release/.fingerprint/regex-automata-f8d8efe517e98888/invoked.timestamp +1 -0
  143. package/rust/target/release/.fingerprint/regex-automata-f8d8efe517e98888/lib-regex_automata +1 -0
  144. package/rust/target/release/.fingerprint/regex-automata-f8d8efe517e98888/lib-regex_automata.json +1 -0
  145. package/rust/target/release/.fingerprint/regex-syntax-eeca859592595703/dep-lib-regex_syntax +0 -0
  146. package/rust/target/release/.fingerprint/regex-syntax-eeca859592595703/invoked.timestamp +1 -0
  147. package/rust/target/release/.fingerprint/regex-syntax-eeca859592595703/lib-regex_syntax +1 -0
  148. package/rust/target/release/.fingerprint/regex-syntax-eeca859592595703/lib-regex_syntax.json +1 -0
  149. package/rust/target/release/.fingerprint/serde-a5bb7470cea0daed/build-script-build-script-build +1 -0
  150. package/rust/target/release/.fingerprint/serde-a5bb7470cea0daed/build-script-build-script-build.json +1 -0
  151. package/rust/target/release/.fingerprint/serde-a5bb7470cea0daed/dep-build-script-build-script-build +0 -0
  152. package/rust/target/release/.fingerprint/serde-a5bb7470cea0daed/invoked.timestamp +1 -0
  153. package/rust/target/release/.fingerprint/serde-ab5bca82c15e72e0/run-build-script-build-script-build +1 -0
  154. package/rust/target/release/.fingerprint/serde-ab5bca82c15e72e0/run-build-script-build-script-build.json +1 -0
  155. package/rust/target/release/.fingerprint/serde-e58bd660ffca77fb/dep-lib-serde +0 -0
  156. package/rust/target/release/.fingerprint/serde-e58bd660ffca77fb/invoked.timestamp +1 -0
  157. package/rust/target/release/.fingerprint/serde-e58bd660ffca77fb/lib-serde +1 -0
  158. package/rust/target/release/.fingerprint/serde-e58bd660ffca77fb/lib-serde.json +1 -0
  159. package/rust/target/release/.fingerprint/serde_core-9ebabaac0dd9657b/run-build-script-build-script-build +1 -0
  160. package/rust/target/release/.fingerprint/serde_core-9ebabaac0dd9657b/run-build-script-build-script-build.json +1 -0
  161. package/rust/target/release/.fingerprint/serde_core-bcf1f7226267a515/dep-lib-serde_core +0 -0
  162. package/rust/target/release/.fingerprint/serde_core-bcf1f7226267a515/invoked.timestamp +1 -0
  163. package/rust/target/release/.fingerprint/serde_core-bcf1f7226267a515/lib-serde_core +1 -0
  164. package/rust/target/release/.fingerprint/serde_core-bcf1f7226267a515/lib-serde_core.json +1 -0
  165. package/rust/target/release/.fingerprint/serde_core-f6e34062ef5ef617/build-script-build-script-build +1 -0
  166. package/rust/target/release/.fingerprint/serde_core-f6e34062ef5ef617/build-script-build-script-build.json +1 -0
  167. package/rust/target/release/.fingerprint/serde_core-f6e34062ef5ef617/dep-build-script-build-script-build +0 -0
  168. package/rust/target/release/.fingerprint/serde_core-f6e34062ef5ef617/invoked.timestamp +1 -0
  169. package/rust/target/release/.fingerprint/serde_derive-739fe6b99d6b7650/dep-lib-serde_derive +0 -0
  170. package/rust/target/release/.fingerprint/serde_derive-739fe6b99d6b7650/invoked.timestamp +1 -0
  171. package/rust/target/release/.fingerprint/serde_derive-739fe6b99d6b7650/lib-serde_derive +1 -0
  172. package/rust/target/release/.fingerprint/serde_derive-739fe6b99d6b7650/lib-serde_derive.json +1 -0
  173. package/rust/target/release/.fingerprint/serde_json-b567bd1bd6d9b444/build-script-build-script-build +1 -0
  174. package/rust/target/release/.fingerprint/serde_json-b567bd1bd6d9b444/build-script-build-script-build.json +1 -0
  175. package/rust/target/release/.fingerprint/serde_json-b567bd1bd6d9b444/dep-build-script-build-script-build +0 -0
  176. package/rust/target/release/.fingerprint/serde_json-b567bd1bd6d9b444/invoked.timestamp +1 -0
  177. package/rust/target/release/.fingerprint/serde_json-c2477e5e18fc5e07/dep-lib-serde_json +0 -0
  178. package/rust/target/release/.fingerprint/serde_json-c2477e5e18fc5e07/invoked.timestamp +1 -0
  179. package/rust/target/release/.fingerprint/serde_json-c2477e5e18fc5e07/lib-serde_json +1 -0
  180. package/rust/target/release/.fingerprint/serde_json-c2477e5e18fc5e07/lib-serde_json.json +1 -0
  181. package/rust/target/release/.fingerprint/serde_json-c2d2dc29d8c706f7/run-build-script-build-script-build +1 -0
  182. package/rust/target/release/.fingerprint/serde_json-c2d2dc29d8c706f7/run-build-script-build-script-build.json +1 -0
  183. package/rust/target/release/.fingerprint/sha2-c490257262e4006f/dep-lib-sha2 +0 -0
  184. package/rust/target/release/.fingerprint/sha2-c490257262e4006f/invoked.timestamp +1 -0
  185. package/rust/target/release/.fingerprint/sha2-c490257262e4006f/lib-sha2 +1 -0
  186. package/rust/target/release/.fingerprint/sha2-c490257262e4006f/lib-sha2.json +1 -0
  187. package/rust/target/release/.fingerprint/sharded-slab-a9b081fca5df5776/dep-lib-sharded_slab +0 -0
  188. package/rust/target/release/.fingerprint/sharded-slab-a9b081fca5df5776/invoked.timestamp +1 -0
  189. package/rust/target/release/.fingerprint/sharded-slab-a9b081fca5df5776/lib-sharded_slab +1 -0
  190. package/rust/target/release/.fingerprint/sharded-slab-a9b081fca5df5776/lib-sharded_slab.json +1 -0
  191. package/rust/target/release/.fingerprint/smallvec-c80f5e02fc44f75f/dep-lib-smallvec +0 -0
  192. package/rust/target/release/.fingerprint/smallvec-c80f5e02fc44f75f/invoked.timestamp +1 -0
  193. package/rust/target/release/.fingerprint/smallvec-c80f5e02fc44f75f/lib-smallvec +1 -0
  194. package/rust/target/release/.fingerprint/smallvec-c80f5e02fc44f75f/lib-smallvec.json +1 -0
  195. package/rust/target/release/.fingerprint/syn-e3c4fb9c9765d69d/dep-lib-syn +0 -0
  196. package/rust/target/release/.fingerprint/syn-e3c4fb9c9765d69d/invoked.timestamp +1 -0
  197. package/rust/target/release/.fingerprint/syn-e3c4fb9c9765d69d/lib-syn +1 -0
  198. package/rust/target/release/.fingerprint/syn-e3c4fb9c9765d69d/lib-syn.json +1 -0
  199. package/rust/target/release/.fingerprint/thread_local-36b9b6c1f23ac9ba/dep-lib-thread_local +0 -0
  200. package/rust/target/release/.fingerprint/thread_local-36b9b6c1f23ac9ba/invoked.timestamp +1 -0
  201. package/rust/target/release/.fingerprint/thread_local-36b9b6c1f23ac9ba/lib-thread_local +1 -0
  202. package/rust/target/release/.fingerprint/thread_local-36b9b6c1f23ac9ba/lib-thread_local.json +1 -0
  203. package/rust/target/release/.fingerprint/tracing-245af3c71ea35ecd/dep-lib-tracing +0 -0
  204. package/rust/target/release/.fingerprint/tracing-245af3c71ea35ecd/invoked.timestamp +1 -0
  205. package/rust/target/release/.fingerprint/tracing-245af3c71ea35ecd/lib-tracing +1 -0
  206. package/rust/target/release/.fingerprint/tracing-245af3c71ea35ecd/lib-tracing.json +1 -0
  207. package/rust/target/release/.fingerprint/tracing-attributes-4b033b2e5598485c/dep-lib-tracing_attributes +0 -0
  208. package/rust/target/release/.fingerprint/tracing-attributes-4b033b2e5598485c/invoked.timestamp +1 -0
  209. package/rust/target/release/.fingerprint/tracing-attributes-4b033b2e5598485c/lib-tracing_attributes +1 -0
  210. package/rust/target/release/.fingerprint/tracing-attributes-4b033b2e5598485c/lib-tracing_attributes.json +1 -0
  211. package/rust/target/release/.fingerprint/tracing-core-251b2d04fd4b7c92/dep-lib-tracing_core +0 -0
  212. package/rust/target/release/.fingerprint/tracing-core-251b2d04fd4b7c92/invoked.timestamp +1 -0
  213. package/rust/target/release/.fingerprint/tracing-core-251b2d04fd4b7c92/lib-tracing_core +1 -0
  214. package/rust/target/release/.fingerprint/tracing-core-251b2d04fd4b7c92/lib-tracing_core.json +1 -0
  215. package/rust/target/release/.fingerprint/tracing-log-33fc70c9a47f5b59/dep-lib-tracing_log +0 -0
  216. package/rust/target/release/.fingerprint/tracing-log-33fc70c9a47f5b59/invoked.timestamp +1 -0
  217. package/rust/target/release/.fingerprint/tracing-log-33fc70c9a47f5b59/lib-tracing_log +1 -0
  218. package/rust/target/release/.fingerprint/tracing-log-33fc70c9a47f5b59/lib-tracing_log.json +1 -0
  219. package/rust/target/release/.fingerprint/tracing-subscriber-bde0d5b2c127b5ce/dep-lib-tracing_subscriber +0 -0
  220. package/rust/target/release/.fingerprint/tracing-subscriber-bde0d5b2c127b5ce/invoked.timestamp +1 -0
  221. package/rust/target/release/.fingerprint/tracing-subscriber-bde0d5b2c127b5ce/lib-tracing_subscriber +1 -0
  222. package/rust/target/release/.fingerprint/tracing-subscriber-bde0d5b2c127b5ce/lib-tracing_subscriber.json +1 -0
  223. package/rust/target/release/.fingerprint/typenum-3cdc48836e5238cf/dep-lib-typenum +0 -0
  224. package/rust/target/release/.fingerprint/typenum-3cdc48836e5238cf/invoked.timestamp +1 -0
  225. package/rust/target/release/.fingerprint/typenum-3cdc48836e5238cf/lib-typenum +1 -0
  226. package/rust/target/release/.fingerprint/typenum-3cdc48836e5238cf/lib-typenum.json +1 -0
  227. package/rust/target/release/.fingerprint/typenum-a51a68ea7cdca0a3/run-build-script-build-script-build +1 -0
  228. package/rust/target/release/.fingerprint/typenum-a51a68ea7cdca0a3/run-build-script-build-script-build.json +1 -0
  229. package/rust/target/release/.fingerprint/typenum-be711a78e8981f2a/build-script-build-script-build +1 -0
  230. package/rust/target/release/.fingerprint/typenum-be711a78e8981f2a/build-script-build-script-build.json +1 -0
  231. package/rust/target/release/.fingerprint/typenum-be711a78e8981f2a/dep-build-script-build-script-build +0 -0
  232. package/rust/target/release/.fingerprint/typenum-be711a78e8981f2a/invoked.timestamp +1 -0
  233. package/rust/target/release/.fingerprint/unicode-ident-b6ef9a2188f165a7/dep-lib-unicode_ident +0 -0
  234. package/rust/target/release/.fingerprint/unicode-ident-b6ef9a2188f165a7/invoked.timestamp +1 -0
  235. package/rust/target/release/.fingerprint/unicode-ident-b6ef9a2188f165a7/lib-unicode_ident +1 -0
  236. package/rust/target/release/.fingerprint/unicode-ident-b6ef9a2188f165a7/lib-unicode_ident.json +1 -0
  237. package/rust/target/release/.fingerprint/version_check-8de6a4a01730f3fc/dep-lib-version_check +0 -0
  238. package/rust/target/release/.fingerprint/version_check-8de6a4a01730f3fc/invoked.timestamp +1 -0
  239. package/rust/target/release/.fingerprint/version_check-8de6a4a01730f3fc/lib-version_check +1 -0
  240. package/rust/target/release/.fingerprint/version_check-8de6a4a01730f3fc/lib-version_check.json +1 -0
  241. package/rust/target/release/.fingerprint/vps-manager-core-32881497d3c7a1d5/dep-lib-vps_manager_core +0 -0
  242. package/rust/target/release/.fingerprint/vps-manager-core-32881497d3c7a1d5/invoked.timestamp +1 -0
  243. package/rust/target/release/.fingerprint/vps-manager-core-32881497d3c7a1d5/lib-vps_manager_core +1 -0
  244. package/rust/target/release/.fingerprint/vps-manager-core-32881497d3c7a1d5/lib-vps_manager_core.json +1 -0
  245. package/rust/target/release/.fingerprint/vps-manager-core-52dac2e61aad8f4b/bin-vps-manager-core +1 -0
  246. package/rust/target/release/.fingerprint/vps-manager-core-52dac2e61aad8f4b/bin-vps-manager-core.json +1 -0
  247. package/rust/target/release/.fingerprint/vps-manager-core-52dac2e61aad8f4b/dep-bin-vps-manager-core +0 -0
  248. package/rust/target/release/.fingerprint/vps-manager-core-52dac2e61aad8f4b/invoked.timestamp +1 -0
  249. package/rust/target/release/.fingerprint/zmij-4431e0d331234992/dep-lib-zmij +0 -0
  250. package/rust/target/release/.fingerprint/zmij-4431e0d331234992/invoked.timestamp +1 -0
  251. package/rust/target/release/.fingerprint/zmij-4431e0d331234992/lib-zmij +1 -0
  252. package/rust/target/release/.fingerprint/zmij-4431e0d331234992/lib-zmij.json +1 -0
  253. package/rust/target/release/.fingerprint/zmij-7f6b81acea9a20e3/run-build-script-build-script-build +1 -0
  254. package/rust/target/release/.fingerprint/zmij-7f6b81acea9a20e3/run-build-script-build-script-build.json +1 -0
  255. package/rust/target/release/.fingerprint/zmij-bceeb0e6919120f9/build-script-build-script-build +1 -0
  256. package/rust/target/release/.fingerprint/zmij-bceeb0e6919120f9/build-script-build-script-build.json +1 -0
  257. package/rust/target/release/.fingerprint/zmij-bceeb0e6919120f9/dep-build-script-build-script-build +0 -0
  258. package/rust/target/release/.fingerprint/zmij-bceeb0e6919120f9/invoked.timestamp +1 -0
  259. package/rust/target/release/build/generic-array-8ce40917f76412b1/build-script-build +0 -0
  260. package/rust/target/release/build/generic-array-8ce40917f76412b1/build_script_build-8ce40917f76412b1 +0 -0
  261. package/rust/target/release/build/generic-array-8ce40917f76412b1/build_script_build-8ce40917f76412b1.d +5 -0
  262. package/rust/target/release/build/generic-array-e69e3a44765f6d58/invoked.timestamp +1 -0
  263. package/rust/target/release/build/generic-array-e69e3a44765f6d58/output +1 -0
  264. package/rust/target/release/build/generic-array-e69e3a44765f6d58/root-output +1 -0
  265. package/rust/target/release/build/generic-array-e69e3a44765f6d58/stderr +0 -0
  266. package/rust/target/release/build/libc-1e68faf72d2d6d6a/build-script-build +0 -0
  267. package/rust/target/release/build/libc-1e68faf72d2d6d6a/build_script_build-1e68faf72d2d6d6a +0 -0
  268. package/rust/target/release/build/libc-1e68faf72d2d6d6a/build_script_build-1e68faf72d2d6d6a.d +5 -0
  269. package/rust/target/release/build/libc-7781f1d3692ef952/invoked.timestamp +1 -0
  270. package/rust/target/release/build/libc-7781f1d3692ef952/output +25 -0
  271. package/rust/target/release/build/libc-7781f1d3692ef952/root-output +1 -0
  272. package/rust/target/release/build/libc-7781f1d3692ef952/stderr +0 -0
  273. package/rust/target/release/build/num-traits-960d689d96a427e4/invoked.timestamp +1 -0
  274. package/rust/target/release/build/num-traits-960d689d96a427e4/output +3 -0
  275. package/rust/target/release/build/num-traits-960d689d96a427e4/root-output +1 -0
  276. package/rust/target/release/build/num-traits-960d689d96a427e4/stderr +0 -0
  277. package/rust/target/release/build/num-traits-e0dbc71c6a4b5721/build-script-build +0 -0
  278. package/rust/target/release/build/num-traits-e0dbc71c6a4b5721/build_script_build-e0dbc71c6a4b5721 +0 -0
  279. package/rust/target/release/build/num-traits-e0dbc71c6a4b5721/build_script_build-e0dbc71c6a4b5721.d +5 -0
  280. package/rust/target/release/build/proc-macro2-676678c45d7cb9a8/invoked.timestamp +1 -0
  281. package/rust/target/release/build/proc-macro2-676678c45d7cb9a8/output +23 -0
  282. package/rust/target/release/build/proc-macro2-676678c45d7cb9a8/root-output +1 -0
  283. package/rust/target/release/build/proc-macro2-676678c45d7cb9a8/stderr +0 -0
  284. package/rust/target/release/build/proc-macro2-c72a330c78f30f59/build-script-build +0 -0
  285. package/rust/target/release/build/proc-macro2-c72a330c78f30f59/build_script_build-c72a330c78f30f59 +0 -0
  286. package/rust/target/release/build/proc-macro2-c72a330c78f30f59/build_script_build-c72a330c78f30f59.d +5 -0
  287. package/rust/target/release/build/quote-0c85187123c64982/build-script-build +0 -0
  288. package/rust/target/release/build/quote-0c85187123c64982/build_script_build-0c85187123c64982 +0 -0
  289. package/rust/target/release/build/quote-0c85187123c64982/build_script_build-0c85187123c64982.d +5 -0
  290. package/rust/target/release/build/quote-8e84519b0b657fd1/invoked.timestamp +1 -0
  291. package/rust/target/release/build/quote-8e84519b0b657fd1/output +2 -0
  292. package/rust/target/release/build/quote-8e84519b0b657fd1/root-output +1 -0
  293. package/rust/target/release/build/quote-8e84519b0b657fd1/stderr +0 -0
  294. package/rust/target/release/build/serde-a5bb7470cea0daed/build-script-build +0 -0
  295. package/rust/target/release/build/serde-a5bb7470cea0daed/build_script_build-a5bb7470cea0daed +0 -0
  296. package/rust/target/release/build/serde-a5bb7470cea0daed/build_script_build-a5bb7470cea0daed.d +5 -0
  297. package/rust/target/release/build/serde-ab5bca82c15e72e0/invoked.timestamp +1 -0
  298. package/rust/target/release/build/serde-ab5bca82c15e72e0/out/private.rs +6 -0
  299. package/rust/target/release/build/serde-ab5bca82c15e72e0/output +13 -0
  300. package/rust/target/release/build/serde-ab5bca82c15e72e0/root-output +1 -0
  301. package/rust/target/release/build/serde-ab5bca82c15e72e0/stderr +0 -0
  302. package/rust/target/release/build/serde_core-9ebabaac0dd9657b/invoked.timestamp +1 -0
  303. package/rust/target/release/build/serde_core-9ebabaac0dd9657b/out/private.rs +5 -0
  304. package/rust/target/release/build/serde_core-9ebabaac0dd9657b/output +11 -0
  305. package/rust/target/release/build/serde_core-9ebabaac0dd9657b/root-output +1 -0
  306. package/rust/target/release/build/serde_core-9ebabaac0dd9657b/stderr +0 -0
  307. package/rust/target/release/build/serde_core-f6e34062ef5ef617/build-script-build +0 -0
  308. package/rust/target/release/build/serde_core-f6e34062ef5ef617/build_script_build-f6e34062ef5ef617 +0 -0
  309. package/rust/target/release/build/serde_core-f6e34062ef5ef617/build_script_build-f6e34062ef5ef617.d +5 -0
  310. package/rust/target/release/build/serde_json-b567bd1bd6d9b444/build-script-build +0 -0
  311. package/rust/target/release/build/serde_json-b567bd1bd6d9b444/build_script_build-b567bd1bd6d9b444 +0 -0
  312. package/rust/target/release/build/serde_json-b567bd1bd6d9b444/build_script_build-b567bd1bd6d9b444.d +5 -0
  313. package/rust/target/release/build/serde_json-c2d2dc29d8c706f7/invoked.timestamp +1 -0
  314. package/rust/target/release/build/serde_json-c2d2dc29d8c706f7/output +3 -0
  315. package/rust/target/release/build/serde_json-c2d2dc29d8c706f7/root-output +1 -0
  316. package/rust/target/release/build/serde_json-c2d2dc29d8c706f7/stderr +0 -0
  317. package/rust/target/release/build/typenum-a51a68ea7cdca0a3/invoked.timestamp +1 -0
  318. package/rust/target/release/build/typenum-a51a68ea7cdca0a3/out/tests.rs +20563 -0
  319. package/rust/target/release/build/typenum-a51a68ea7cdca0a3/output +1 -0
  320. package/rust/target/release/build/typenum-a51a68ea7cdca0a3/root-output +1 -0
  321. package/rust/target/release/build/typenum-a51a68ea7cdca0a3/stderr +0 -0
  322. package/rust/target/release/build/typenum-be711a78e8981f2a/build-script-build +0 -0
  323. package/rust/target/release/build/typenum-be711a78e8981f2a/build_script_build-be711a78e8981f2a +0 -0
  324. package/rust/target/release/build/typenum-be711a78e8981f2a/build_script_build-be711a78e8981f2a.d +5 -0
  325. package/rust/target/release/build/zmij-7f6b81acea9a20e3/invoked.timestamp +1 -0
  326. package/rust/target/release/build/zmij-7f6b81acea9a20e3/output +3 -0
  327. package/rust/target/release/build/zmij-7f6b81acea9a20e3/root-output +1 -0
  328. package/rust/target/release/build/zmij-7f6b81acea9a20e3/stderr +0 -0
  329. package/rust/target/release/build/zmij-bceeb0e6919120f9/build-script-build +0 -0
  330. package/rust/target/release/build/zmij-bceeb0e6919120f9/build_script_build-bceeb0e6919120f9 +0 -0
  331. package/rust/target/release/build/zmij-bceeb0e6919120f9/build_script_build-bceeb0e6919120f9.d +5 -0
  332. package/rust/target/release/deps/autocfg-1b3bd8a7b74bd5b4.d +10 -0
  333. package/rust/target/release/deps/block_buffer-cf3be8244cc78328.d +8 -0
  334. package/rust/target/release/deps/cfg_if-e24d4f7b470ac1f7.d +7 -0
  335. package/rust/target/release/deps/chrono-c2c1d826849da6b8.d +37 -0
  336. package/rust/target/release/deps/core_foundation_sys-bdb199b1a618a85a.d +46 -0
  337. package/rust/target/release/deps/cpufeatures-044997a43e932cd2.d +8 -0
  338. package/rust/target/release/deps/crypto_common-ff4fa5d0a5e0455d.d +7 -0
  339. package/rust/target/release/deps/digest-6037e23ec7b0997e.d +13 -0
  340. package/rust/target/release/deps/generic_array-6939b76bf342e446.d +13 -0
  341. package/rust/target/release/deps/iana_time_zone-7907cd9c1810cf88.d +9 -0
  342. package/rust/target/release/deps/itoa-a9b94ec9a7564538.d +8 -0
  343. package/rust/target/release/deps/lazy_static-79337840520ffaab.d +8 -0
  344. package/rust/target/release/deps/libautocfg-1b3bd8a7b74bd5b4.rlib +0 -0
  345. package/rust/target/release/deps/libautocfg-1b3bd8a7b74bd5b4.rmeta +0 -0
  346. package/rust/target/release/deps/libblock_buffer-cf3be8244cc78328.rlib +0 -0
  347. package/rust/target/release/deps/libblock_buffer-cf3be8244cc78328.rmeta +0 -0
  348. package/rust/target/release/deps/libc-ab405543531da832.d +45 -0
  349. package/rust/target/release/deps/libcfg_if-e24d4f7b470ac1f7.rlib +0 -0
  350. package/rust/target/release/deps/libcfg_if-e24d4f7b470ac1f7.rmeta +0 -0
  351. package/rust/target/release/deps/libchrono-c2c1d826849da6b8.rlib +0 -0
  352. package/rust/target/release/deps/libchrono-c2c1d826849da6b8.rmeta +0 -0
  353. package/rust/target/release/deps/libcore_foundation_sys-bdb199b1a618a85a.rlib +0 -0
  354. package/rust/target/release/deps/libcore_foundation_sys-bdb199b1a618a85a.rmeta +0 -0
  355. package/rust/target/release/deps/libcpufeatures-044997a43e932cd2.rlib +0 -0
  356. package/rust/target/release/deps/libcpufeatures-044997a43e932cd2.rmeta +0 -0
  357. package/rust/target/release/deps/libcrypto_common-ff4fa5d0a5e0455d.rlib +0 -0
  358. package/rust/target/release/deps/libcrypto_common-ff4fa5d0a5e0455d.rmeta +0 -0
  359. package/rust/target/release/deps/libdigest-6037e23ec7b0997e.rlib +0 -0
  360. package/rust/target/release/deps/libdigest-6037e23ec7b0997e.rmeta +0 -0
  361. package/rust/target/release/deps/libgeneric_array-6939b76bf342e446.rlib +0 -0
  362. package/rust/target/release/deps/libgeneric_array-6939b76bf342e446.rmeta +0 -0
  363. package/rust/target/release/deps/libiana_time_zone-7907cd9c1810cf88.rlib +0 -0
  364. package/rust/target/release/deps/libiana_time_zone-7907cd9c1810cf88.rmeta +0 -0
  365. package/rust/target/release/deps/libitoa-a9b94ec9a7564538.rlib +0 -0
  366. package/rust/target/release/deps/libitoa-a9b94ec9a7564538.rmeta +0 -0
  367. package/rust/target/release/deps/liblazy_static-79337840520ffaab.rlib +0 -0
  368. package/rust/target/release/deps/liblazy_static-79337840520ffaab.rmeta +0 -0
  369. package/rust/target/release/deps/liblibc-ab405543531da832.rlib +0 -0
  370. package/rust/target/release/deps/liblibc-ab405543531da832.rmeta +0 -0
  371. package/rust/target/release/deps/liblog-c93c9501d50fd117.rlib +0 -0
  372. package/rust/target/release/deps/liblog-c93c9501d50fd117.rmeta +0 -0
  373. package/rust/target/release/deps/libmatchers-aa7b66eaa02449a5.rlib +0 -0
  374. package/rust/target/release/deps/libmatchers-aa7b66eaa02449a5.rmeta +0 -0
  375. package/rust/target/release/deps/libmemchr-006163bba97af52f.rlib +0 -0
  376. package/rust/target/release/deps/libmemchr-006163bba97af52f.rmeta +0 -0
  377. package/rust/target/release/deps/libnu_ansi_term-56ab27c2fee1c03f.rlib +0 -0
  378. package/rust/target/release/deps/libnu_ansi_term-56ab27c2fee1c03f.rmeta +0 -0
  379. package/rust/target/release/deps/libnum_traits-a45e3ec48ef9afe7.rlib +0 -0
  380. package/rust/target/release/deps/libnum_traits-a45e3ec48ef9afe7.rmeta +0 -0
  381. package/rust/target/release/deps/libonce_cell-1ba5d4df66429103.rlib +0 -0
  382. package/rust/target/release/deps/libonce_cell-1ba5d4df66429103.rmeta +0 -0
  383. package/rust/target/release/deps/libpin_project_lite-b67f60134987a063.rlib +0 -0
  384. package/rust/target/release/deps/libpin_project_lite-b67f60134987a063.rmeta +0 -0
  385. package/rust/target/release/deps/libproc_macro2-c5165b0726856761.rlib +0 -0
  386. package/rust/target/release/deps/libproc_macro2-c5165b0726856761.rmeta +0 -0
  387. package/rust/target/release/deps/libquote-93e086ea3561ec28.rlib +0 -0
  388. package/rust/target/release/deps/libquote-93e086ea3561ec28.rmeta +0 -0
  389. package/rust/target/release/deps/libregex_automata-f8d8efe517e98888.rlib +0 -0
  390. package/rust/target/release/deps/libregex_automata-f8d8efe517e98888.rmeta +0 -0
  391. package/rust/target/release/deps/libregex_syntax-eeca859592595703.rlib +0 -0
  392. package/rust/target/release/deps/libregex_syntax-eeca859592595703.rmeta +0 -0
  393. package/rust/target/release/deps/libserde-e58bd660ffca77fb.rlib +0 -0
  394. package/rust/target/release/deps/libserde-e58bd660ffca77fb.rmeta +0 -0
  395. package/rust/target/release/deps/libserde_core-bcf1f7226267a515.rlib +0 -0
  396. package/rust/target/release/deps/libserde_core-bcf1f7226267a515.rmeta +0 -0
  397. package/rust/target/release/deps/libserde_derive-739fe6b99d6b7650.dylib +0 -0
  398. package/rust/target/release/deps/libserde_json-c2477e5e18fc5e07.rlib +0 -0
  399. package/rust/target/release/deps/libserde_json-c2477e5e18fc5e07.rmeta +0 -0
  400. package/rust/target/release/deps/libsha2-c490257262e4006f.rlib +0 -0
  401. package/rust/target/release/deps/libsha2-c490257262e4006f.rmeta +0 -0
  402. package/rust/target/release/deps/libsharded_slab-a9b081fca5df5776.rlib +0 -0
  403. package/rust/target/release/deps/libsharded_slab-a9b081fca5df5776.rmeta +0 -0
  404. package/rust/target/release/deps/libsmallvec-c80f5e02fc44f75f.rlib +0 -0
  405. package/rust/target/release/deps/libsmallvec-c80f5e02fc44f75f.rmeta +0 -0
  406. package/rust/target/release/deps/libsyn-e3c4fb9c9765d69d.rlib +0 -0
  407. package/rust/target/release/deps/libsyn-e3c4fb9c9765d69d.rmeta +0 -0
  408. package/rust/target/release/deps/libthread_local-36b9b6c1f23ac9ba.rlib +0 -0
  409. package/rust/target/release/deps/libthread_local-36b9b6c1f23ac9ba.rmeta +0 -0
  410. package/rust/target/release/deps/libtracing-245af3c71ea35ecd.rlib +0 -0
  411. package/rust/target/release/deps/libtracing-245af3c71ea35ecd.rmeta +0 -0
  412. package/rust/target/release/deps/libtracing_attributes-4b033b2e5598485c.dylib +0 -0
  413. package/rust/target/release/deps/libtracing_core-251b2d04fd4b7c92.rlib +0 -0
  414. package/rust/target/release/deps/libtracing_core-251b2d04fd4b7c92.rmeta +0 -0
  415. package/rust/target/release/deps/libtracing_log-33fc70c9a47f5b59.rlib +0 -0
  416. package/rust/target/release/deps/libtracing_log-33fc70c9a47f5b59.rmeta +0 -0
  417. package/rust/target/release/deps/libtracing_subscriber-bde0d5b2c127b5ce.rlib +0 -0
  418. package/rust/target/release/deps/libtracing_subscriber-bde0d5b2c127b5ce.rmeta +0 -0
  419. package/rust/target/release/deps/libtypenum-3cdc48836e5238cf.rlib +0 -0
  420. package/rust/target/release/deps/libtypenum-3cdc48836e5238cf.rmeta +0 -0
  421. package/rust/target/release/deps/libunicode_ident-b6ef9a2188f165a7.rlib +0 -0
  422. package/rust/target/release/deps/libunicode_ident-b6ef9a2188f165a7.rmeta +0 -0
  423. package/rust/target/release/deps/libversion_check-8de6a4a01730f3fc.rlib +0 -0
  424. package/rust/target/release/deps/libversion_check-8de6a4a01730f3fc.rmeta +0 -0
  425. package/rust/target/release/deps/libvps_manager_core-32881497d3c7a1d5.rlib +0 -0
  426. package/rust/target/release/deps/libvps_manager_core-32881497d3c7a1d5.rmeta +0 -0
  427. package/rust/target/release/deps/libzmij-4431e0d331234992.rlib +0 -0
  428. package/rust/target/release/deps/libzmij-4431e0d331234992.rmeta +0 -0
  429. package/rust/target/release/deps/log-c93c9501d50fd117.d +10 -0
  430. package/rust/target/release/deps/matchers-aa7b66eaa02449a5.d +7 -0
  431. package/rust/target/release/deps/memchr-006163bba97af52f.d +30 -0
  432. package/rust/target/release/deps/nu_ansi_term-56ab27c2fee1c03f.d +16 -0
  433. package/rust/target/release/deps/num_traits-a45e3ec48ef9afe7.d +25 -0
  434. package/rust/target/release/deps/once_cell-1ba5d4df66429103.d +9 -0
  435. package/rust/target/release/deps/pin_project_lite-b67f60134987a063.d +7 -0
  436. package/rust/target/release/deps/proc_macro2-c5165b0726856761.d +17 -0
  437. package/rust/target/release/deps/quote-93e086ea3561ec28.d +13 -0
  438. package/rust/target/release/deps/regex_automata-f8d8efe517e98888.d +57 -0
  439. package/rust/target/release/deps/regex_syntax-eeca859592595703.d +25 -0
  440. package/rust/target/release/deps/serde-e58bd660ffca77fb.d +14 -0
  441. package/rust/target/release/deps/serde_core-bcf1f7226267a515.d +27 -0
  442. package/rust/target/release/deps/serde_derive-739fe6b99d6b7650.d +34 -0
  443. package/rust/target/release/deps/serde_json-c2477e5e18fc5e07.d +22 -0
  444. package/rust/target/release/deps/sha2-c490257262e4006f.d +13 -0
  445. package/rust/target/release/deps/sharded_slab-a9b081fca5df5776.d +19 -0
  446. package/rust/target/release/deps/smallvec-c80f5e02fc44f75f.d +7 -0
  447. package/rust/target/release/deps/syn-e3c4fb9c9765d69d.d +58 -0
  448. package/rust/target/release/deps/thread_local-36b9b6c1f23ac9ba.d +10 -0
  449. package/rust/target/release/deps/tracing-245af3c71ea35ecd.d +14 -0
  450. package/rust/target/release/deps/tracing_attributes-4b033b2e5598485c.d +7 -0
  451. package/rust/target/release/deps/tracing_core-251b2d04fd4b7c92.d +16 -0
  452. package/rust/target/release/deps/tracing_log-33fc70c9a47f5b59.d +8 -0
  453. package/rust/target/release/deps/tracing_subscriber-bde0d5b2c127b5ce.d +42 -0
  454. package/rust/target/release/deps/typenum-3cdc48836e5238cf.d +18 -0
  455. package/rust/target/release/deps/unicode_ident-b6ef9a2188f165a7.d +8 -0
  456. package/rust/target/release/deps/version_check-8de6a4a01730f3fc.d +10 -0
  457. package/rust/target/release/deps/vps_manager_core-32881497d3c7a1d5.d +8 -0
  458. package/rust/target/release/deps/vps_manager_core-52dac2e61aad8f4b +0 -0
  459. package/rust/target/release/deps/vps_manager_core-52dac2e61aad8f4b.d +5 -0
  460. package/rust/target/release/deps/zmij-4431e0d331234992.d +8 -0
  461. package/rust/target/release/libvps_manager_core.d +1 -0
  462. package/rust/target/release/libvps_manager_core.rlib +0 -0
  463. package/rust/target/release/vps-manager-core +0 -0
  464. package/rust/target/release/vps-manager-core.d +1 -0
  465. package/src/bridge.ts +419 -0
  466. package/src/config.ts +192 -0
  467. package/src/health-server.ts +280 -0
  468. package/src/index.ts +860 -0
  469. package/src/service-manager.ts +216 -0
package/src/bridge.ts ADDED
@@ -0,0 +1,419 @@
1
+ /**
2
+ * Bridge to Rust worker for package operations.
3
+ *
4
+ * Communicates with the Rust core via JSON-RPC 2.0 over stdin/stdout.
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * import { RustBridge } from "@ebowwa/pkg-ops/bridge";
9
+ *
10
+ * const bridge = new RustBridge();
11
+ * await bridge.start();
12
+ *
13
+ * // Install a package
14
+ * const result = await bridge.install("@ebowwa/stack", "0.7.12");
15
+ * console.log(result);
16
+ *
17
+ * // List packages
18
+ * const packages = await bridge.list();
19
+ *
20
+ * await bridge.stop();
21
+ * ```
22
+ */
23
+
24
+ import { spawn, type ChildProcess } from "child_process";
25
+ import { accessSync, constants as fsConstants } from "fs";
26
+ import { join, dirname } from "path";
27
+ import { fileURLToPath } from "url";
28
+
29
+ // ---------------------------------------------------------------------------
30
+ // Types
31
+ // ---------------------------------------------------------------------------
32
+
33
+ export interface InstallResult {
34
+ success: boolean;
35
+ version: string;
36
+ previousVersion?: string;
37
+ message: string;
38
+ }
39
+
40
+ export interface PackageInfo {
41
+ name: string;
42
+ version: string;
43
+ installed: boolean;
44
+ service?: string;
45
+ }
46
+
47
+ export interface RollbackResult {
48
+ success: boolean;
49
+ previousVersion: string;
50
+ currentVersion: string;
51
+ message: string;
52
+ }
53
+
54
+ export interface HealthCheckResult {
55
+ healthy: boolean;
56
+ services: Array<{
57
+ name: string;
58
+ status: string;
59
+ pid: number;
60
+ }>;
61
+ }
62
+
63
+ export interface VerifyResult {
64
+ packageName: string;
65
+ version: string;
66
+ success: boolean;
67
+ distExists: boolean;
68
+ checksum: string | null;
69
+ message: string;
70
+ }
71
+
72
+ export interface AuditResult {
73
+ packageName: string;
74
+ severity: string;
75
+ vulnerability: string;
76
+ description: string;
77
+ }
78
+
79
+ export interface BundleSize {
80
+ packageName: string;
81
+ version: string;
82
+ distSizeBytes: number;
83
+ fileCount: number;
84
+ }
85
+
86
+ export interface InstalledPackageInfo {
87
+ packageName: string;
88
+ version: string;
89
+ distSizeBytes: number | null;
90
+ installedAt: string | null;
91
+ }
92
+
93
+ interface JsonRpcRequest {
94
+ jsonrpc: "2.0";
95
+ id: string;
96
+ method: string;
97
+ params?: Record<string, unknown>;
98
+ }
99
+
100
+ interface JsonRpcResponse {
101
+ jsonrpc: "2.0";
102
+ id: string;
103
+ result?: unknown;
104
+ error?: {
105
+ code: number;
106
+ message: string;
107
+ data?: unknown;
108
+ };
109
+ }
110
+
111
+ // ---------------------------------------------------------------------------
112
+ // Constants
113
+ // ---------------------------------------------------------------------------
114
+
115
+ const REQUEST_TIMEOUT = 30000;
116
+
117
+ // ---------------------------------------------------------------------------
118
+ // Rust Bridge Class
119
+ // ---------------------------------------------------------------------------
120
+
121
+ /**
122
+ * Bridge to the Rust worker process.
123
+ *
124
+ * Handles JSON-RPC communication over stdin/stdout.
125
+ */
126
+ export class RustBridge {
127
+ private process: ChildProcess | null = null;
128
+ private pendingRequests = new Map<string, {
129
+ resolve: (value: unknown) => void;
130
+ reject: (error: Error) => void;
131
+ timeout: ReturnType<typeof setTimeout>;
132
+ }>();
133
+ private requestId = 0;
134
+ private buffer = "";
135
+
136
+ /**
137
+ * Start the Rust worker process.
138
+ */
139
+ async start(): Promise<void> {
140
+ if (this.process) {
141
+ return;
142
+ }
143
+
144
+ const binaryPath = this.getBinaryPath();
145
+
146
+ // Check if binary exists
147
+ try {
148
+ accessSync(binaryPath, fsConstants.X_OK);
149
+ } catch {
150
+ throw new Error(
151
+ `Rust binary not found at ${binaryPath}. ` +
152
+ `Run 'bun run build:rust' in the pkg-ops package.`
153
+ );
154
+ }
155
+
156
+ this.process = spawn(binaryPath, [], {
157
+ stdio: ["pipe", "pipe", "pipe"],
158
+ });
159
+
160
+ if (!this.process.stdin || !this.process.stdout) {
161
+ throw new Error("Failed to create stdin/stdout pipes");
162
+ }
163
+
164
+ // Handle stdout (JSON-RPC responses)
165
+ this.process.stdout.on("data", (data: Buffer) => {
166
+ this.buffer += data.toString("utf-8");
167
+ this.processBuffer();
168
+ });
169
+
170
+ // Handle stderr (logs)
171
+ this.process.stderr?.on("data", (data: Buffer) => {
172
+ console.error("[rust-worker]", data.toString("utf-8").trim());
173
+ });
174
+
175
+ // Handle process exit
176
+ this.process.on("exit", (code: number | null) => {
177
+ console.error(`Rust worker exited with code ${code}`);
178
+ this.process = null;
179
+ });
180
+ }
181
+
182
+ /**
183
+ * Stop the Rust worker process.
184
+ */
185
+ async stop(): Promise<void> {
186
+ if (!this.process) {
187
+ return;
188
+ }
189
+
190
+ // Send shutdown request
191
+ try {
192
+ await this.sendRequest("shutdown", {});
193
+ } catch {
194
+ // Ignore errors on shutdown
195
+ }
196
+
197
+ // Give it time to shutdown gracefully
198
+ await new Promise((resolve) => setTimeout(resolve, 1000));
199
+
200
+ // Force kill if still running
201
+ if (this.process) {
202
+ this.process.kill("SIGTERM");
203
+ this.process = null;
204
+ }
205
+
206
+ // Clear pending requests
207
+ for (const [id, pending] of this.pendingRequests) {
208
+ clearTimeout(pending.timeout);
209
+ pending.reject(new Error("Bridge shutdown"));
210
+ }
211
+ this.pendingRequests.clear();
212
+ }
213
+
214
+ /**
215
+ * Install a package.
216
+ */
217
+ async install(packageName: string, version: string): Promise<InstallResult> {
218
+ return this.sendRequest("install", { packageName, version }) as Promise<InstallResult>;
219
+ }
220
+
221
+ /**
222
+ * Update a package to latest version.
223
+ */
224
+ async update(packageName: string): Promise<InstallResult> {
225
+ return this.sendRequest("update", { packageName }) as Promise<InstallResult>;
226
+ }
227
+
228
+ /**
229
+ * Update all managed packages.
230
+ */
231
+ async updateAll(): Promise<InstallResult[]> {
232
+ return this.sendRequest("updateAll", {}) as Promise<InstallResult[]>;
233
+ }
234
+
235
+ /**
236
+ * List installed packages.
237
+ */
238
+ async list(): Promise<PackageInfo[]> {
239
+ return this.sendRequest("list", {}) as Promise<PackageInfo[]>;
240
+ }
241
+
242
+ /**
243
+ * Rollback a package to previous version.
244
+ */
245
+ async rollback(packageName: string): Promise<RollbackResult> {
246
+ return this.sendRequest("rollback", { packageName }) as Promise<RollbackResult>;
247
+ }
248
+
249
+ /**
250
+ * Check health of all services.
251
+ */
252
+ async health(): Promise<HealthCheckResult> {
253
+ return this.sendRequest("health", {}) as Promise<HealthCheckResult>;
254
+ }
255
+
256
+ /**
257
+ * Verify package integrity.
258
+ */
259
+ async verify(packageName: string): Promise<VerifyResult> {
260
+ return this.sendRequest("verify", { packageName }) as Promise<VerifyResult>;
261
+ }
262
+
263
+ /**
264
+ * Run vulnerability scan.
265
+ */
266
+ async audit(): Promise<AuditResult[]> {
267
+ return this.sendRequest("audit", {}) as Promise<AuditResult[]>;
268
+ }
269
+
270
+ /**
271
+ * Get bundle sizes.
272
+ */
273
+ async getBundleSizes(): Promise<BundleSize[]> {
274
+ return this.sendRequest("sizes", {}) as Promise<BundleSize[]>;
275
+ }
276
+
277
+ /**
278
+ * Get detailed installed package info.
279
+ */
280
+ async getInstalledInfo(): Promise<InstalledPackageInfo[]> {
281
+ return this.sendRequest("installedInfo", {}) as Promise<InstalledPackageInfo[]>;
282
+ }
283
+
284
+ // ---------------------------------------------------------------------------
285
+ // Private Methods
286
+ // ---------------------------------------------------------------------------
287
+
288
+ private getBinaryPath(): string {
289
+ // Get the directory of this module
290
+ const currentDir = dirname(fileURLToPath(import.meta.url));
291
+
292
+ // Paths to check (in order of preference)
293
+ const paths = [
294
+ // Cargo build output (works on VPS after `cargo build --release`)
295
+ join(currentDir, "..", "rust", "target", "release", "pkg-ops-core"),
296
+ // Pre-built binary in rust folder (for npm package distribution)
297
+ join(currentDir, "..", "rust", "pkg-ops-core"),
298
+ // Linux-specific cargo output
299
+ join(currentDir, "..", "rust", "target", "x86_64-unknown-linux-gnu", "release", "pkg-ops-core"),
300
+ ];
301
+
302
+ for (const path of paths) {
303
+ try {
304
+ accessSync(path, fsConstants.X_OK);
305
+ return path;
306
+ } catch {
307
+ // Try next path
308
+ }
309
+ }
310
+
311
+ // Return the most likely path for error message
312
+ throw new Error(
313
+ `Rust binary not found. Tried:\n${paths.map(p => ` - ${p}`).join("\n")}\n` +
314
+ `Run 'bun run build:rust' or 'cargo build --release' in the pkg-ops package.`
315
+ );
316
+ }
317
+
318
+ private sendRequest<T>(method: string, params: Record<string, unknown>): Promise<T> {
319
+ return new Promise((resolve, reject) => {
320
+ if (!this.process?.stdin) {
321
+ reject(new Error("Rust worker not started"));
322
+ return;
323
+ }
324
+
325
+ const id = String(++this.requestId);
326
+ const request: JsonRpcRequest = {
327
+ jsonrpc: "2.0",
328
+ id,
329
+ method,
330
+ params,
331
+ };
332
+
333
+ // Set up timeout
334
+ const timeout = setTimeout(() => {
335
+ this.pendingRequests.delete(id);
336
+ reject(new Error(`Request timeout: ${method}`));
337
+ }, REQUEST_TIMEOUT);
338
+
339
+ // Store pending request
340
+ this.pendingRequests.set(id, {
341
+ resolve: resolve as (value: unknown) => void,
342
+ reject,
343
+ timeout,
344
+ });
345
+
346
+ // Send request
347
+ const json = JSON.stringify(request) + "\n";
348
+ this.process.stdin.write(json, "utf-8", (err: Error | null | undefined) => {
349
+ if (err) {
350
+ this.pendingRequests.delete(id);
351
+ clearTimeout(timeout);
352
+ reject(err);
353
+ }
354
+ });
355
+ });
356
+ }
357
+
358
+ private processBuffer(): void {
359
+ const lines = this.buffer.split("\n");
360
+ this.buffer = lines.pop() ?? "";
361
+
362
+ for (const line of lines) {
363
+ if (!line.trim()) continue;
364
+
365
+ try {
366
+ const response: JsonRpcResponse = JSON.parse(line);
367
+ const pending = this.pendingRequests.get(response.id);
368
+
369
+ if (pending) {
370
+ clearTimeout(pending.timeout);
371
+ this.pendingRequests.delete(response.id);
372
+
373
+ if (response.error) {
374
+ pending.reject(new Error(response.error.message));
375
+ } else {
376
+ pending.resolve(response.result);
377
+ }
378
+ }
379
+ } catch (err) {
380
+ console.error("Failed to parse response:", line, err);
381
+ }
382
+ }
383
+ }
384
+ }
385
+
386
+ // ---------------------------------------------------------------------------
387
+ // Singleton Instance
388
+ // ---------------------------------------------------------------------------
389
+
390
+ let defaultBridge: RustBridge | null = null;
391
+
392
+ /**
393
+ * Get the default bridge instance.
394
+ */
395
+ export function getBridge(): RustBridge {
396
+ if (!defaultBridge) {
397
+ defaultBridge = new RustBridge();
398
+ }
399
+ return defaultBridge;
400
+ }
401
+
402
+ /**
403
+ * Start the default bridge.
404
+ */
405
+ export async function startBridge(): Promise<RustBridge> {
406
+ const bridge = getBridge();
407
+ await bridge.start();
408
+ return bridge;
409
+ }
410
+
411
+ /**
412
+ * Stop the default bridge.
413
+ */
414
+ export async function stopBridge(): Promise<void> {
415
+ if (defaultBridge) {
416
+ await defaultBridge.stop();
417
+ defaultBridge = null;
418
+ }
419
+ }
package/src/config.ts ADDED
@@ -0,0 +1,192 @@
1
+ /**
2
+ * Configuration management for PkgOps.
3
+ *
4
+ * Handles reading/writing config file at /etc/pkg-ops/config.json
5
+ *
6
+ * @example
7
+ * ```typescript
8
+ * import { loadConfig, saveConfig, getConfigPath } from "@ebowwa/pkg-ops/config";
9
+ *
10
+ * const config = await loadConfig();
11
+ * console.log(config.packages);
12
+ *
13
+ * config.packages["@ebowwa/stack"] = { version: "0.7.13", service: "stack.service" };
14
+ * await saveConfig(config);
15
+ * ```
16
+ */
17
+
18
+ import { accessSync, constants, mkdirSync, readFileSync, writeFileSync, existsSync } from "node:fs";
19
+ import { dirname } from "node:path";
20
+
21
+
22
+ // ---------------------------------------------------------------------------
23
+ // Types
24
+ // ---------------------------------------------------------------------------
25
+
26
+ export interface PackageConfig {
27
+ /** Package version (semver or "latest") */
28
+ version: string;
29
+ /** Associated systemd service name (without .service suffix) */
30
+ service?: string;
31
+ /** Whether to auto-start the service after install */
32
+ autoStart?: boolean;
33
+ /** Custom environment variables for the service */
34
+ environment?: Record<string, string>;
35
+ }
36
+
37
+ export interface PkgOpsConfig {
38
+ /** Managed packages */
39
+ packages: Record<string, PackageConfig>;
40
+ /** Health check HTTP port (default: 8914) */
41
+ healthPort?: number;
42
+ /** Working directory for installations (default: /opt/pkg-ops) */
43
+ workDir?: string;
44
+ /** Log level (default: "info") */
45
+ logLevel?: "debug" | "info" | "warn" | "error";
46
+ }
47
+
48
+ // ---------------------------------------------------------------------------
49
+ // Constants
50
+ // ---------------------------------------------------------------------------
51
+
52
+ export const DEFAULT_CONFIG: PkgOpsConfig = {
53
+ packages: {},
54
+ healthPort: 8914,
55
+ workDir: "/opt/pkg-ops",
56
+ logLevel: "info",
57
+ };
58
+
59
+ export const CONFIG_DIR = "/etc/pkg-ops";
60
+ export const CONFIG_PATH = `${CONFIG_DIR}/config.json`;
61
+
62
+ // ---------------------------------------------------------------------------
63
+ // Functions
64
+ // ---------------------------------------------------------------------------
65
+
66
+ /**
67
+ * Get the config file path.
68
+ * Respects PKG_OPS_CONFIG env override.
69
+ */
70
+ export function getConfigPath(): string {
71
+ return process.env.PKG_OPS_CONFIG ?? CONFIG_PATH;
72
+ }
73
+
74
+ /**
75
+ * Ensure config directory exists (requires sudo on most systems).
76
+ */
77
+ export function ensureConfigDir(): void {
78
+ const configDir = dirname(getConfigPath());
79
+ if (!existsSync(configDir)) {
80
+ mkdirSync(configDir, { recursive: true, mode: constants.S_IRWXU | constants.S_IRGRP | constants.S_IXGRP });
81
+ }
82
+ }
83
+
84
+ /**
85
+ * Load configuration from file.
86
+ * Returns default config if file doesn't exist.
87
+ */
88
+ export function loadConfig(): PkgOpsConfig {
89
+ const configPath = getConfigPath();
90
+
91
+ try {
92
+ if (!existsSync(configPath)) {
93
+ return { ...DEFAULT_CONFIG };
94
+ }
95
+
96
+ const content = readFileSync(configPath, "utf-8");
97
+ const parsed = JSON.parse(content);
98
+
99
+ // Merge with defaults
100
+ return {
101
+ ...DEFAULT_CONFIG,
102
+ ...parsed,
103
+ };
104
+ } catch (error) {
105
+ console.error(`Failed to load config from ${configPath}:`, error);
106
+ return { ...DEFAULT_CONFIG };
107
+ }
108
+ }
109
+
110
+ /**
111
+ * Save configuration to file.
112
+ * Creates directory if it doesn't exist.
113
+ */
114
+ export function saveConfig(config: PkgOpsConfig): void {
115
+ const configPath = getConfigPath();
116
+ ensureConfigDir();
117
+
118
+ const content = JSON.stringify(config, null, 2);
119
+ writeFileSync(configPath, content, {
120
+ encoding: "utf-8",
121
+ mode: constants.S_IRUSR | constants.S_IWUSR | constants.S_IRGRP,
122
+ });
123
+ }
124
+
125
+ /**
126
+ * Update a package in the config.
127
+ */
128
+ export function updatePackageConfig(
129
+ packageName: string,
130
+ packageConfig: PackageConfig
131
+ ): PkgOpsConfig {
132
+ const config = loadConfig();
133
+ config.packages[packageName] = packageConfig;
134
+ saveConfig(config);
135
+ return config;
136
+ }
137
+
138
+ /**
139
+ * Remove a package from the config.
140
+ */
141
+ export function removePackageConfig(packageName: string): PkgOpsConfig {
142
+ const config = loadConfig();
143
+ delete config.packages[packageName];
144
+ saveConfig(config);
145
+ return config;
146
+ }
147
+
148
+ /**
149
+ * Get a specific package config.
150
+ */
151
+ export function getPackageConfig(packageName: string): PackageConfig | undefined {
152
+ const config = loadConfig();
153
+ return config.packages[packageName];
154
+ }
155
+
156
+ /**
157
+ * List all managed packages.
158
+ */
159
+ export function listManagedPackages(): Array<{ name: string; config: PackageConfig }> {
160
+ const config = loadConfig();
161
+ return Object.entries(config.packages).map(([name, cfg]) => ({ name, config: cfg }));
162
+ }
163
+
164
+ /**
165
+ * Validate package name (must be @ebowwa/* scope).
166
+ */
167
+ export function isValidPackageName(name: string): boolean {
168
+ return name.startsWith("@ebowwa/");
169
+ }
170
+
171
+ /**
172
+ * Parse package specifier into name and version.
173
+ * @example
174
+ * parsePackageSpec("@ebowwa/stack@0.7.12") => { name: "@ebowwa/stack", version: "0.7.12" }
175
+ * parsePackageSpec("@ebowwa/stack") => { name: "@ebowwa/stack", version: "latest" }
176
+ */
177
+ export function parsePackageSpec(spec: string): { name: string; version: string } {
178
+ const atIndex = spec.lastIndexOf("@");
179
+ if (atIndex <= 0) {
180
+ // No version specified or scoped package without version
181
+ return { name: spec, version: "latest" };
182
+ }
183
+
184
+ const name = spec.slice(0, atIndex);
185
+ const version = spec.slice(atIndex + 1);
186
+
187
+ if (!version) {
188
+ return { name, version: "latest" };
189
+ }
190
+
191
+ return { name, version };
192
+ }