@voxgig/sdkgen 4.10.0 → 4.11.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 (304) hide show
  1. package/bin/voxgig-sdkgen +1 -1
  2. package/package.json +1 -1
  3. package/project/.sdk/model/feature/secrets.aon +330 -0
  4. package/project/.sdk/model/target/c.aon +15 -2
  5. package/project/.sdk/model/target/cpp.aon +18 -0
  6. package/project/.sdk/model/target/lua.aon +17 -0
  7. package/project/.sdk/model/target/ocaml.aon +48 -5
  8. package/project/.sdk/model/target/zig.aon +30 -4
  9. package/project/.sdk/src/cmp/c/Config_c.ts +338 -1
  10. package/project/.sdk/src/cmp/c/Main_c.ts +57 -2
  11. package/project/.sdk/src/cmp/c/Package_c.ts +12 -2
  12. package/project/.sdk/src/cmp/cpp/Config_cpp.ts +324 -2
  13. package/project/.sdk/src/cmp/cpp/Gitignore_cpp.ts +2 -0
  14. package/project/.sdk/src/cmp/cpp/Main_cpp.ts +62 -4
  15. package/project/.sdk/src/cmp/cpp/Package_cpp.ts +10 -0
  16. package/project/.sdk/src/cmp/lua/Config_lua.ts +88 -0
  17. package/project/.sdk/src/cmp/lua/Gitignore_lua.ts +4 -0
  18. package/project/.sdk/src/cmp/lua/Main_lua.ts +93 -3
  19. package/project/.sdk/src/cmp/lua/Package_lua.ts +60 -0
  20. package/project/.sdk/src/cmp/lua/fragment/Main.fragment.lua +10 -0
  21. package/project/.sdk/src/cmp/ocaml/Config_ocaml.ts +183 -5
  22. package/project/.sdk/src/cmp/ocaml/Main_ocaml.ts +160 -3
  23. package/project/.sdk/src/cmp/ocaml/Package_ocaml.ts +25 -1
  24. package/project/.sdk/src/cmp/zig/Config_zig.ts +130 -9
  25. package/project/.sdk/src/cmp/zig/Main_zig.ts +208 -4
  26. package/project/.sdk/{tm/zig/build.zig → src/cmp/zig/fragment/Build.fragment.zig} +7 -0
  27. package/project/.sdk/src/cmp/zig/fragment/Main.fragment.zig +25 -0
  28. package/project/.sdk/{tm/zig/root.zig → src/cmp/zig/fragment/Root.fragment.zig} +9 -0
  29. package/project/.sdk/tm/c/Makefile +58 -9
  30. package/project/.sdk/tm/c/core/sdk.h +10 -0
  31. package/project/.sdk/tm/c/feature/secrets/plugin/capability.c +133 -0
  32. package/project/.sdk/tm/c/feature/secrets/plugin/capability.h +39 -0
  33. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.c +83 -0
  34. package/project/.sdk/tm/c/feature/secrets/plugin/catalog.h +48 -0
  35. package/project/.sdk/tm/c/feature/secrets/plugin/config.c +413 -0
  36. package/project/.sdk/tm/c/feature/secrets/plugin/config.h +24 -0
  37. package/project/.sdk/tm/c/feature/secrets/plugin/depend.c +264 -0
  38. package/project/.sdk/tm/c/feature/secrets/plugin/depend.h +29 -0
  39. package/project/.sdk/tm/c/feature/secrets/plugin/env.c +220 -0
  40. package/project/.sdk/tm/c/feature/secrets/plugin/env.h +19 -0
  41. package/project/.sdk/tm/c/feature/secrets/plugin/export.c +97 -0
  42. package/project/.sdk/tm/c/feature/secrets/plugin/export.h +19 -0
  43. package/project/.sdk/tm/c/feature/secrets/plugin/graph.c +237 -0
  44. package/project/.sdk/tm/c/feature/secrets/plugin/graph.h +17 -0
  45. package/project/.sdk/tm/c/feature/secrets/plugin/host.c +1494 -0
  46. package/project/.sdk/tm/c/feature/secrets/plugin/host.h +135 -0
  47. package/project/.sdk/tm/c/feature/secrets/plugin/order.c +288 -0
  48. package/project/.sdk/tm/c/feature/secrets/plugin/order.h +18 -0
  49. package/project/.sdk/tm/c/feature/secrets/plugin/point.c +141 -0
  50. package/project/.sdk/tm/c/feature/secrets/plugin/point.h +80 -0
  51. package/project/.sdk/tm/c/feature/secrets/plugin/ref.c +170 -0
  52. package/project/.sdk/tm/c/feature/secrets/plugin/ref.h +52 -0
  53. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.c +98 -0
  54. package/project/.sdk/tm/c/feature/secrets/plugin/resolve.h +18 -0
  55. package/project/.sdk/tm/c/feature/secrets/plugin/types.c +150 -0
  56. package/project/.sdk/tm/c/feature/secrets/plugin/types.h +104 -0
  57. package/project/.sdk/tm/c/feature/secrets/plugin/value.c +649 -0
  58. package/project/.sdk/tm/c/feature/secrets/plugin/value.h +135 -0
  59. package/project/.sdk/tm/c/feature/secrets/plugin/version.c +151 -0
  60. package/project/.sdk/tm/c/feature/secrets/plugin/version.h +34 -0
  61. package/project/.sdk/tm/c/feature/secrets/plugins/aws.c +281 -0
  62. package/project/.sdk/tm/c/feature/secrets/plugins/azuresecrets.c +207 -0
  63. package/project/.sdk/tm/c/feature/secrets/plugins/boru.c +164 -0
  64. package/project/.sdk/tm/c/feature/secrets/plugins/clock.c +75 -0
  65. package/project/.sdk/tm/c/feature/secrets/plugins/doppler.c +141 -0
  66. package/project/.sdk/tm/c/feature/secrets/plugins/encode.c +144 -0
  67. package/project/.sdk/tm/c/feature/secrets/plugins/gcpsecrets.c +177 -0
  68. package/project/.sdk/tm/c/feature/secrets/plugins/hashicorp.c +239 -0
  69. package/project/.sdk/tm/c/feature/secrets/plugins/httpjson.c +599 -0
  70. package/project/.sdk/tm/c/feature/secrets/plugins/infisical.c +165 -0
  71. package/project/.sdk/tm/c/feature/secrets/plugins/onepassword.c +194 -0
  72. package/project/.sdk/tm/c/feature/secrets/plugins/proc.c +233 -0
  73. package/project/.sdk/tm/c/feature/secrets/plugins/secretspec.c +125 -0
  74. package/project/.sdk/tm/c/feature/secrets/plugins/sekretoplugins.h +125 -0
  75. package/project/.sdk/tm/c/feature/secrets/plugins/sha256.c +270 -0
  76. package/project/.sdk/tm/c/feature/secrets/plugins/sigv4.c +382 -0
  77. package/project/.sdk/tm/c/feature/secrets/plugins/support.h +153 -0
  78. package/project/.sdk/tm/c/feature/secrets/plugins/tls.c +420 -0
  79. package/project/.sdk/tm/c/feature/secrets/sekreto/internal.h +86 -0
  80. package/project/.sdk/tm/c/feature/secrets/sekreto/json.c +721 -0
  81. package/project/.sdk/tm/c/feature/secrets/sekreto/providers.c +813 -0
  82. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.c +944 -0
  83. package/project/.sdk/tm/c/feature/secrets/sekreto/sekreto.h +490 -0
  84. package/project/.sdk/tm/c/feature/secrets/sekreto/util.c +442 -0
  85. package/project/.sdk/tm/c/feature/secrets.c +797 -0
  86. package/project/.sdk/tm/c/feature/secrets.h +46 -0
  87. package/project/.sdk/tm/c/src/feature/secrets/.gitkeep +0 -0
  88. package/project/.sdk/tm/c/tests/feature/secrets/secrets_test.c +802 -0
  89. package/project/.sdk/tm/clojure/feature/secrets/sdk/feature/secrets.clj +38 -11
  90. package/project/.sdk/tm/clojure/test/sdk/test/feature/secrets.clj +40 -6
  91. package/project/.sdk/tm/cpp/Makefile +48 -4
  92. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.cpp +121 -0
  93. package/project/.sdk/tm/cpp/feature/secrets/plugin/capability.hpp +41 -0
  94. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.cpp +60 -0
  95. package/project/.sdk/tm/cpp/feature/secrets/plugin/catalog.hpp +66 -0
  96. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.cpp +376 -0
  97. package/project/.sdk/tm/cpp/feature/secrets/plugin/config.hpp +29 -0
  98. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.cpp +230 -0
  99. package/project/.sdk/tm/cpp/feature/secrets/plugin/depend.hpp +31 -0
  100. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.cpp +205 -0
  101. package/project/.sdk/tm/cpp/feature/secrets/plugin/env.hpp +25 -0
  102. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.cpp +84 -0
  103. package/project/.sdk/tm/cpp/feature/secrets/plugin/export.hpp +24 -0
  104. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.cpp +222 -0
  105. package/project/.sdk/tm/cpp/feature/secrets/plugin/graph.hpp +21 -0
  106. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.cpp +1200 -0
  107. package/project/.sdk/tm/cpp/feature/secrets/plugin/host.hpp +250 -0
  108. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.cpp +250 -0
  109. package/project/.sdk/tm/cpp/feature/secrets/plugin/order.hpp +22 -0
  110. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.cpp +110 -0
  111. package/project/.sdk/tm/cpp/feature/secrets/plugin/point.hpp +79 -0
  112. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.cpp +136 -0
  113. package/project/.sdk/tm/cpp/feature/secrets/plugin/ref.hpp +60 -0
  114. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.cpp +82 -0
  115. package/project/.sdk/tm/cpp/feature/secrets/plugin/resolve.hpp +25 -0
  116. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.cpp +90 -0
  117. package/project/.sdk/tm/cpp/feature/secrets/plugin/types.hpp +65 -0
  118. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.cpp +491 -0
  119. package/project/.sdk/tm/cpp/feature/secrets/plugin/value.hpp +120 -0
  120. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.cpp +143 -0
  121. package/project/.sdk/tm/cpp/feature/secrets/plugin/version.hpp +36 -0
  122. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.cpp +248 -0
  123. package/project/.sdk/tm/cpp/feature/secrets/plugins/Aws.hpp +30 -0
  124. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.cpp +149 -0
  125. package/project/.sdk/tm/cpp/feature/secrets/plugins/Azuresecrets.hpp +23 -0
  126. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.cpp +117 -0
  127. package/project/.sdk/tm/cpp/feature/secrets/plugins/Boru.hpp +27 -0
  128. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.cpp +180 -0
  129. package/project/.sdk/tm/cpp/feature/secrets/plugins/Crypto.hpp +52 -0
  130. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.cpp +87 -0
  131. package/project/.sdk/tm/cpp/feature/secrets/plugins/Doppler.hpp +23 -0
  132. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.cpp +121 -0
  133. package/project/.sdk/tm/cpp/feature/secrets/plugins/Gcpsecrets.hpp +23 -0
  134. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.cpp +153 -0
  135. package/project/.sdk/tm/cpp/feature/secrets/plugins/Hashicorp.hpp +23 -0
  136. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.cpp +666 -0
  137. package/project/.sdk/tm/cpp/feature/secrets/plugins/Httpjson.hpp +160 -0
  138. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.cpp +123 -0
  139. package/project/.sdk/tm/cpp/feature/secrets/plugins/Infisical.hpp +23 -0
  140. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.cpp +125 -0
  141. package/project/.sdk/tm/cpp/feature/secrets/plugins/Onepassword.hpp +23 -0
  142. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.cpp +223 -0
  143. package/project/.sdk/tm/cpp/feature/secrets/plugins/Proc.hpp +47 -0
  144. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.cpp +104 -0
  145. package/project/.sdk/tm/cpp/feature/secrets/plugins/Secretspec.hpp +27 -0
  146. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.cpp +242 -0
  147. package/project/.sdk/tm/cpp/feature/secrets/plugins/Sigv4.hpp +58 -0
  148. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.cpp +260 -0
  149. package/project/.sdk/tm/cpp/feature/secrets/plugins/Tls.hpp +47 -0
  150. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.cpp +476 -0
  151. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Json.hpp +89 -0
  152. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.cpp +312 -0
  153. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Provider.hpp +263 -0
  154. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.cpp +354 -0
  155. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Providers.hpp +111 -0
  156. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.cpp +613 -0
  157. package/project/.sdk/tm/cpp/feature/secrets/sekreto/Sekreto.hpp +227 -0
  158. package/project/.sdk/tm/cpp/feature/secrets.hpp +745 -0
  159. package/project/.sdk/tm/cpp/src/feature/secrets/.gitkeep +0 -0
  160. package/project/.sdk/tm/cpp/test/feature/secrets/secrets_test.cpp +808 -0
  161. package/project/.sdk/tm/csharp/feature/SecretsFeature.cs +34 -8
  162. package/project/.sdk/tm/csharp/test/feature/secrets/SecretsFeatureTest.cs +85 -0
  163. package/project/.sdk/tm/elixir/lib/projectname/feature/secrets.ex +17 -2
  164. package/project/.sdk/tm/elixir/test/feature/secrets/secrets_test.exs +41 -0
  165. package/project/.sdk/tm/go/feature/secrets_feature.go +32 -10
  166. package/project/.sdk/tm/go/test/feature/secrets/secrets_feature_test.go +116 -0
  167. package/project/.sdk/tm/java/feature/SecretsFeature.java +33 -8
  168. package/project/.sdk/tm/java/test/feature/secrets/SecretsFeatureTest.java +64 -0
  169. package/project/.sdk/tm/js/src/feature/secrets/SecretsFeature.js +34 -11
  170. package/project/.sdk/tm/js/test/feature/secrets/Secrets.test.js +73 -0
  171. package/project/.sdk/tm/kotlin/feature/SecretsFeature.kt +32 -7
  172. package/project/.sdk/tm/kotlin/test/feature/secrets/SecretsTest.kt +69 -0
  173. package/project/.sdk/tm/lua/Makefile +15 -4
  174. package/project/.sdk/tm/lua/feature/secrets/native/sekretonet.c +806 -0
  175. package/project/.sdk/tm/lua/feature/secrets/plugin/capability.lua +135 -0
  176. package/project/.sdk/tm/lua/feature/secrets/plugin/catalog.lua +63 -0
  177. package/project/.sdk/tm/lua/feature/secrets/plugin/config.lua +361 -0
  178. package/project/.sdk/tm/lua/feature/secrets/plugin/depend.lua +232 -0
  179. package/project/.sdk/tm/lua/feature/secrets/plugin/env.lua +168 -0
  180. package/project/.sdk/tm/lua/feature/secrets/plugin/export.lua +66 -0
  181. package/project/.sdk/tm/lua/feature/secrets/plugin/graph.lua +194 -0
  182. package/project/.sdk/tm/lua/feature/secrets/plugin/host.lua +1190 -0
  183. package/project/.sdk/tm/lua/feature/secrets/plugin/json.lua +169 -0
  184. package/project/.sdk/tm/lua/feature/secrets/plugin/order.lua +207 -0
  185. package/project/.sdk/tm/lua/feature/secrets/plugin/point.lua +106 -0
  186. package/project/.sdk/tm/lua/feature/secrets/plugin/ref.lua +115 -0
  187. package/project/.sdk/tm/lua/feature/secrets/plugin/resolve.lua +78 -0
  188. package/project/.sdk/tm/lua/feature/secrets/plugin/types.lua +275 -0
  189. package/project/.sdk/tm/lua/feature/secrets/plugin/version.lua +131 -0
  190. package/project/.sdk/tm/lua/feature/secrets/plugin.lua +76 -0
  191. package/project/.sdk/tm/lua/feature/secrets/sekreto/addr.lua +124 -0
  192. package/project/.sdk/tm/lua/feature/secrets/sekreto/err.lua +47 -0
  193. package/project/.sdk/tm/lua/feature/secrets/sekreto/name.lua +315 -0
  194. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/aws.lua +228 -0
  195. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/azuresecrets.lua +137 -0
  196. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/boru.lua +124 -0
  197. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/crypto.lua +212 -0
  198. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/doppler.lua +89 -0
  199. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/gcpsecrets.lua +129 -0
  200. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/hashicorp.lua +154 -0
  201. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/httpjson.lua +248 -0
  202. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/infisical.lua +113 -0
  203. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/json.lua +449 -0
  204. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/net.lua +198 -0
  205. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/onepassword.lua +126 -0
  206. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/secretspec.lua +93 -0
  207. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/sigv4.lua +269 -0
  208. package/project/.sdk/tm/lua/feature/secrets/sekreto/plugins/support.lua +146 -0
  209. package/project/.sdk/tm/lua/feature/secrets/sekreto/providers.lua +346 -0
  210. package/project/.sdk/tm/lua/feature/secrets/sekreto.lua +479 -0
  211. package/project/.sdk/tm/lua/feature/secrets_feature.lua +690 -0
  212. package/project/.sdk/tm/lua/src/feature/secrets/.gitkeep +0 -0
  213. package/project/.sdk/tm/lua/test/extend_test.lua +105 -0
  214. package/project/.sdk/tm/lua/test/feature/secrets/secrets_feature_test.lua +862 -0
  215. package/project/.sdk/tm/ocaml/Makefile +52 -8
  216. package/project/.sdk/tm/ocaml/feature/secrets/plugin/capability.ml +106 -0
  217. package/project/.sdk/tm/ocaml/feature/secrets/plugin/catalog.ml +43 -0
  218. package/project/.sdk/tm/ocaml/feature/secrets/plugin/config.ml +349 -0
  219. package/project/.sdk/tm/ocaml/feature/secrets/plugin/defs.ml +143 -0
  220. package/project/.sdk/tm/ocaml/feature/secrets/plugin/depend.ml +217 -0
  221. package/project/.sdk/tm/ocaml/feature/secrets/plugin/env.ml +197 -0
  222. package/project/.sdk/tm/ocaml/feature/secrets/plugin/export.ml +89 -0
  223. package/project/.sdk/tm/ocaml/feature/secrets/plugin/graph.ml +227 -0
  224. package/project/.sdk/tm/ocaml/feature/secrets/plugin/host.ml +1112 -0
  225. package/project/.sdk/tm/ocaml/feature/secrets/plugin/order.ml +202 -0
  226. package/project/.sdk/tm/ocaml/feature/secrets/plugin/point.ml +138 -0
  227. package/project/.sdk/tm/ocaml/feature/secrets/plugin/ref.ml +126 -0
  228. package/project/.sdk/tm/ocaml/feature/secrets/plugin/resolve.ml +62 -0
  229. package/project/.sdk/tm/ocaml/feature/secrets/plugin/types.ml +97 -0
  230. package/project/.sdk/tm/ocaml/feature/secrets/plugin/value.ml +387 -0
  231. package/project/.sdk/tm/ocaml/feature/secrets/plugin/version.ml +139 -0
  232. package/project/.sdk/tm/ocaml/feature/secrets/plugins/aws.ml +171 -0
  233. package/project/.sdk/tm/ocaml/feature/secrets/plugins/azuresecrets.ml +116 -0
  234. package/project/.sdk/tm/ocaml/feature/secrets/plugins/boru.ml +95 -0
  235. package/project/.sdk/tm/ocaml/feature/secrets/plugins/crypto.ml +149 -0
  236. package/project/.sdk/tm/ocaml/feature/secrets/plugins/doppler.ml +61 -0
  237. package/project/.sdk/tm/ocaml/feature/secrets/plugins/gcpsecrets.ml +93 -0
  238. package/project/.sdk/tm/ocaml/feature/secrets/plugins/hashicorp.ml +120 -0
  239. package/project/.sdk/tm/ocaml/feature/secrets/plugins/http.ml +421 -0
  240. package/project/.sdk/tm/ocaml/feature/secrets/plugins/httpjson.ml +66 -0
  241. package/project/.sdk/tm/ocaml/feature/secrets/plugins/infisical.ml +85 -0
  242. package/project/.sdk/tm/ocaml/feature/secrets/plugins/onepassword.ml +112 -0
  243. package/project/.sdk/tm/ocaml/feature/secrets/plugins/runcmd.ml +97 -0
  244. package/project/.sdk/tm/ocaml/feature/secrets/plugins/secretspec.ml +68 -0
  245. package/project/.sdk/tm/ocaml/feature/secrets/plugins/sigv4.ml +259 -0
  246. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls.ml +44 -0
  247. package/project/.sdk/tm/ocaml/feature/secrets/plugins/tls_stubs.c +358 -0
  248. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/json.ml +376 -0
  249. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/provider.ml +647 -0
  250. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/secret.ml +299 -0
  251. package/project/.sdk/tm/ocaml/feature/secrets/sekreto/sekreto.ml +347 -0
  252. package/project/.sdk/tm/ocaml/feature/secrets_feature.ml +453 -0
  253. package/project/.sdk/tm/ocaml/src/feature/secrets/.gitkeep +0 -0
  254. package/project/.sdk/tm/ocaml/test/feature/secrets/t_secrets.ml +670 -0
  255. package/project/.sdk/tm/perl/feature/secrets_feature.pm +33 -12
  256. package/project/.sdk/tm/perl/t/feature/secrets/secrets.t +47 -0
  257. package/project/.sdk/tm/php/feature/SecretsFeature.php +30 -6
  258. package/project/.sdk/tm/php/test/feature/secrets/SecretsTest.php +98 -0
  259. package/project/.sdk/tm/py/pkg/feature/secrets_feature.py +28 -6
  260. package/project/.sdk/tm/py/test/feature/secrets/test_secrets.py +114 -0
  261. package/project/.sdk/tm/rb/feature/secrets_feature.rb +28 -6
  262. package/project/.sdk/tm/rb/test/feature/secrets/secrets_feature_test.rb +93 -0
  263. package/project/.sdk/tm/rust/feature/secrets.rs +33 -10
  264. package/project/.sdk/tm/rust/tests/feature/secrets/main.rs +96 -0
  265. package/project/.sdk/tm/scala/feature/SecretsFeature.scala +29 -7
  266. package/project/.sdk/tm/scala/sdktest/feature/secrets/SecretsTestMain.scala +71 -0
  267. package/project/.sdk/tm/ts/src/feature/secrets/SecretsFeature.ts +35 -12
  268. package/project/.sdk/tm/ts/test/feature/secrets/Secrets.test.ts +73 -0
  269. package/project/.sdk/tm/zig/feature/secrets/plugin/capability.zig +137 -0
  270. package/project/.sdk/tm/zig/feature/secrets/plugin/catalog.zig +90 -0
  271. package/project/.sdk/tm/zig/feature/secrets/plugin/config.zig +346 -0
  272. package/project/.sdk/tm/zig/feature/secrets/plugin/depend.zig +244 -0
  273. package/project/.sdk/tm/zig/feature/secrets/plugin/env.zig +201 -0
  274. package/project/.sdk/tm/zig/feature/secrets/plugin/export.zig +83 -0
  275. package/project/.sdk/tm/zig/feature/secrets/plugin/graph.zig +212 -0
  276. package/project/.sdk/tm/zig/feature/secrets/plugin/host.zig +1224 -0
  277. package/project/.sdk/tm/zig/feature/secrets/plugin/inst.zig +126 -0
  278. package/project/.sdk/tm/zig/feature/secrets/plugin/order.zig +228 -0
  279. package/project/.sdk/tm/zig/feature/secrets/plugin/plugin.zig +34 -0
  280. package/project/.sdk/tm/zig/feature/secrets/plugin/point.zig +166 -0
  281. package/project/.sdk/tm/zig/feature/secrets/plugin/ref.zig +147 -0
  282. package/project/.sdk/tm/zig/feature/secrets/plugin/resolve.zig +74 -0
  283. package/project/.sdk/tm/zig/feature/secrets/plugin/types.zig +140 -0
  284. package/project/.sdk/tm/zig/feature/secrets/plugin/value.zig +662 -0
  285. package/project/.sdk/tm/zig/feature/secrets/plugin/version.zig +139 -0
  286. package/project/.sdk/tm/zig/feature/secrets/plugins/aws.zig +294 -0
  287. package/project/.sdk/tm/zig/feature/secrets/plugins/azuresecrets.zig +222 -0
  288. package/project/.sdk/tm/zig/feature/secrets/plugins/boru.zig +188 -0
  289. package/project/.sdk/tm/zig/feature/secrets/plugins/doppler.zig +135 -0
  290. package/project/.sdk/tm/zig/feature/secrets/plugins/gcpsecrets.zig +170 -0
  291. package/project/.sdk/tm/zig/feature/secrets/plugins/hashicorp.zig +242 -0
  292. package/project/.sdk/tm/zig/feature/secrets/plugins/httpjson.zig +535 -0
  293. package/project/.sdk/tm/zig/feature/secrets/plugins/infisical.zig +167 -0
  294. package/project/.sdk/tm/zig/feature/secrets/plugins/onepassword.zig +202 -0
  295. package/project/.sdk/tm/zig/feature/secrets/plugins/secretspec.zig +160 -0
  296. package/project/.sdk/tm/zig/feature/secrets/plugins/sigv4.zig +336 -0
  297. package/project/.sdk/tm/zig/feature/secrets/sekreto/addr.zig +148 -0
  298. package/project/.sdk/tm/zig/feature/secrets/sekreto/builtins.zig +259 -0
  299. package/project/.sdk/tm/zig/feature/secrets/sekreto/provider.zig +440 -0
  300. package/project/.sdk/tm/zig/feature/secrets/sekreto/sekreto.zig +944 -0
  301. package/project/.sdk/tm/zig/feature/secrets.zig +854 -0
  302. package/project/.sdk/tm/zig/src/feature/secrets/.gitkeep +0 -0
  303. package/project/.sdk/tm/zig/test/feature/secrets/secrets_test.zig +891 -0
  304. package/project/sdkgen-package.json +1 -1
@@ -0,0 +1,147 @@
1
+ // VENDORED: @voxgig/plugin sdk-20260908-1556-0 (zig/src/ref.zig)
2
+ // Source: https://github.com/voxgig/plugin @ 48392f5e2b6d1434ee9b1a4a9a11f4480aaeb46a [tag: sdk-20260908-1556-0]
3
+ // License: MIT (c) voxgig - see repository LICENSE. Do not edit: resync from upstream.
4
+ //! Identity: name+tag, written `name$tag` (§4).
5
+ //!
6
+ //! The four pure functions, and the whole of what `ref` pins. They are
7
+ //! the first thing a new port implements and the first corpus section
8
+ //! it passes.
9
+
10
+ const std = @import("std");
11
+ const v = @import("value.zig");
12
+ const t = @import("types.zig");
13
+
14
+ const MAX_REF = 1024;
15
+
16
+ fn isNameHead(c: u8) bool {
17
+ return (c >= 'a' and c <= 'z') or (c >= 'A' and c <= 'Z') or c == '@';
18
+ }
19
+
20
+ fn isNameBody(c: u8) bool {
21
+ return (c >= 'a' and c <= 'z') or (c >= 'A' and c <= 'Z') or
22
+ (c >= '0' and c <= '9') or
23
+ c == '.' or c == '~' or c == '_' or c == '-' or c == '/';
24
+ }
25
+
26
+ fn isTagChar(c: u8) bool {
27
+ return (c >= 'a' and c <= 'z') or (c >= 'A' and c <= 'Z') or
28
+ (c >= '0' and c <= '9') or
29
+ c == '.' or c == '~' or c == '_' or c == '-';
30
+ }
31
+
32
+ fn namely(name: []const u8) bool {
33
+ if (name.len == 0 or name.len > MAX_REF) return false;
34
+ if (!isNameHead(name[0])) return false;
35
+ for (name[1..]) |c| {
36
+ if (!isNameBody(c)) return false;
37
+ }
38
+ return true;
39
+ }
40
+
41
+ fn tagly(tag: []const u8) bool {
42
+ // The empty tag is an ordinary tag (§4 rule 2). The single-instance
43
+ // case writes no tag and never learns tags exist.
44
+ if (tag.len == 0) return true;
45
+ if (tag.len > MAX_REF) return false;
46
+ for (tag) |c| {
47
+ if (!isTagChar(c)) return false;
48
+ }
49
+ return true;
50
+ }
51
+
52
+ /// A non-string is not a name. Every port has to answer this the same
53
+ /// way, and `ref/name` pins it for numbers, nulls and maps alike.
54
+ pub fn checkname(name: ?*const v.Value) bool {
55
+ return v.isStr(name) and namely(v.asStr(name));
56
+ }
57
+
58
+ /// The asymmetry with a name is deliberate: a tag MAY start with a digit
59
+ /// because auto-tagging assigns integer tags (`stripe$1`), and a tag
60
+ /// admits neither `@` nor `/` because a name is a package specifier and
61
+ /// a tag is not.
62
+ pub fn checktag(tag: ?*const v.Value) bool {
63
+ return v.isStr(tag) and tagly(v.asStr(tag));
64
+ }
65
+
66
+ const Split = struct { name: []const u8, tag: []const u8 };
67
+
68
+ /// Split on the FIRST `$`. Nothing in the grammar decides this — `$` is
69
+ /// in neither character class — so the corpus is the arbiter (§4 rule
70
+ /// 5), and it picks the split that blames the part actually at fault:
71
+ /// `a$b$c` is a good name with a bad tag, not the reverse.
72
+ fn split(s: []const u8) Split {
73
+ const cut = std.mem.indexOfScalar(u8, s, '$') orelse return .{ .name = s, .tag = "" };
74
+ return .{ .name = s[0..cut], .tag = s[cut + 1 ..] };
75
+ }
76
+
77
+ pub fn parseref(str: ?*const v.Value) t.Err!*v.Value {
78
+ if (!v.isStr(str)) return t.fail("plugin_bad_name", "ref must be a string", null);
79
+ const sp = split(v.asStr(str));
80
+ if (!namely(sp.name)) {
81
+ return t.fail("plugin_bad_name", v.print("invalid plugin name: {s}", .{sp.name}), t.details1("name", v.vstr(sp.name)));
82
+ }
83
+ if (!tagly(sp.tag)) {
84
+ return t.fail("plugin_bad_tag", v.print("invalid plugin tag: {s}", .{sp.tag}), t.details2("name", v.vstr(sp.name), "tag", v.vstr(sp.tag)));
85
+ }
86
+ const out = v.vmap();
87
+ v.set(out, "name", v.vstr(sp.name));
88
+ v.set(out, "tag", v.vstr(sp.tag));
89
+ return out;
90
+ }
91
+
92
+ /// An empty tag NEVER writes the separator, which is the half of
93
+ /// canonicalization formatref owns: parse tolerates `stripe$`, format
94
+ /// never produces it, so a round trip is idempotent.
95
+ pub fn formatref(name: ?*v.Value, tag: ?*v.Value) t.Err![]const u8 {
96
+ const tagok = v.isNull(tag) or v.isStr(tag);
97
+ const tg = if (v.isStr(tag)) v.asStr(tag) else "";
98
+
99
+ if (!checkname(name)) {
100
+ const shown = if (v.isStr(name)) v.asStr(name) else "";
101
+ return t.fail("plugin_bad_name", v.print("invalid plugin name: {s}", .{shown}), t.details1("name", if (v.isNull(name)) v.vnull() else name));
102
+ }
103
+ if (!tagok or !tagly(tg)) {
104
+ return t.fail("plugin_bad_tag", v.print("invalid plugin tag: {s}", .{tg}), t.details2("name", name, "tag", if (v.isNull(tag)) v.vstr("") else tag));
105
+ }
106
+
107
+ if (tg.len == 0) return v.asStr(name);
108
+ return v.print("{s}${s}", .{ v.asStr(name), tg });
109
+ }
110
+
111
+ /// The canonical spelling. §4 rule 5: canonicalize before comparison.
112
+ pub fn canonref(str: ?*const v.Value) t.Err![]const u8 {
113
+ const r = try parseref(str);
114
+ return formatref(v.get(r, "name"), v.get(r, "tag"));
115
+ }
116
+
117
+ pub fn canonrefs(str: []const u8) t.Err![]const u8 {
118
+ return canonref(v.vstr(str));
119
+ }
120
+
121
+ /// The canonical ref this string denotes, or null if it denotes none —
122
+ /// the TOLERANT half of `canonref`, and the one a requirement name needs
123
+ /// (§11.1). Capability names are free-form, so `2fa` is a good one and
124
+ /// no ref could be called that; `canonref` FAILS on those, and asking it
125
+ /// "is this a ref?" made a legal document kill the host.
126
+ ///
127
+ /// An optional, so a caller cannot mistake "not a ref" for "the empty
128
+ /// ref" — and infallible, because it answers rather than raises.
129
+ pub fn tryref(str: []const u8) ?[]const u8 {
130
+ const sp = split(str);
131
+ if (!namely(sp.name) or !tagly(sp.tag)) return null;
132
+ if (sp.tag.len == 0) return sp.name;
133
+ return v.print("{s}${s}", .{ sp.name, sp.tag });
134
+ }
135
+
136
+ /// `canonref` for internal callers that want the input back unchanged
137
+ /// when it is not well formed. NEVER use where a bad ref must be
138
+ /// reported — the corpus pins plugin_bad_name at every public entry.
139
+ pub fn canon(str: []const u8) []const u8 {
140
+ return tryref(str) orelse str;
141
+ }
142
+
143
+ /// The name half, for internal callers that only compare.
144
+ pub fn refname(str: []const u8) []const u8 {
145
+ const sp = split(str);
146
+ return if (namely(sp.name)) sp.name else str;
147
+ }
@@ -0,0 +1,74 @@
1
+ // VENDORED: @voxgig/plugin sdk-20260908-1556-0 (zig/src/resolve.zig)
2
+ // Source: https://github.com/voxgig/plugin @ 48392f5e2b6d1434ee9b1a4a9a11f4480aaeb46a [tag: sdk-20260908-1556-0]
3
+ // License: MIT (c) voxgig - see repository LICENSE. Do not edit: resync from upstream.
4
+ //! Dynamic resolution (§10.2) — name to candidate module ids.
5
+ //!
6
+ //! PURE. It returns the ids a host WOULD try, in order; it does not load
7
+ //! anything. That separation is what lets the corpus pin resolution in
8
+ //! every language including those with no dynamic loading at all — zig
9
+ //! among them — and it is why §15.4 puts real module loading in per-port
10
+ //! integration tests rather than here.
11
+
12
+ const std = @import("std");
13
+ const v = @import("value.zig");
14
+
15
+ fn pushuniq(out: *v.Value, id: []const u8) void {
16
+ for (v.items(out)) |x| {
17
+ if (std.mem.eql(u8, v.asStr(x), id)) return;
18
+ }
19
+ v.push(out, v.vstr(id));
20
+ }
21
+
22
+ const DEFAULT_PREFIX = [_][]const u8{ "@voxgig/plugin-", "voxgig-plugin-", "plugin-", "" };
23
+
24
+ pub fn resolvecandidates(name: ?*v.Value, sources: ?*v.Value) *v.Value {
25
+ const out = v.vlist();
26
+ const n = if (v.isStr(name)) v.asStr(name) else "";
27
+
28
+ // A SCOPED NAME RESOLVES VERBATIM ONLY (§10.2). `@acme/thing` is
29
+ // already a package id; prefixing it produces
30
+ // `@voxgig/plugin-@acme/thing`, which is not a thing that can exist.
31
+ if (n.len > 0 and n[0] == '@') {
32
+ v.push(out, v.vstr(n));
33
+ return out;
34
+ }
35
+
36
+ if (!(v.isList(sources) and v.len(sources) > 0)) {
37
+ for (DEFAULT_PREFIX) |p| pushuniq(out, v.print("{s}{s}", .{ p, n }));
38
+ return out;
39
+ }
40
+
41
+ for (v.items(sources)) |src| {
42
+ const kind = v.asStr(v.get(src, "kind"));
43
+ if (std.mem.eql(u8, kind, "module")) {
44
+ const prefix = v.get(src, "prefix");
45
+ if (v.isList(prefix) and v.len(prefix) > 0) {
46
+ for (v.items(prefix)) |p| pushuniq(out, v.print("{s}{s}", .{ v.asStr(p), n }));
47
+ } else {
48
+ pushuniq(out, n);
49
+ }
50
+ } else if (std.mem.eql(u8, kind, "path")) {
51
+ var dir = v.asStr(v.get(src, "dir"));
52
+ // Trailing slashes are trimmed, so `lib/` and `lib` give one
53
+ // id rather than two spellings of it.
54
+ while (dir.len > 0 and dir[dir.len - 1] == '/') dir = dir[0 .. dir.len - 1];
55
+ pushuniq(out, v.print("{s}/{s}", .{ dir, n }));
56
+ }
57
+ }
58
+
59
+ return out;
60
+ }
61
+
62
+ /// A MODULE PATH IS NOT A NAME (§10.2). The ref grammar starts a name
63
+ /// with a letter or `@`, so `./local/thing` is not a ref and never
64
+ /// reaches candidate generation — seneca allows a path where a plugin
65
+ /// name goes, and this design deliberately does not, because a ref is an
66
+ /// ADDRESS WITHIN A HOST and a path is a LOCATION ON A DISK.
67
+ ///
68
+ /// Loading from an explicit location bypasses candidate generation
69
+ /// entirely: `from` is passed to the resolver verbatim.
70
+ pub fn resolvefrom(from: ?*v.Value) *v.Value {
71
+ const out = v.vlist();
72
+ v.push(out, if (v.isNull(from)) v.vnull() else from);
73
+ return out;
74
+ }
@@ -0,0 +1,140 @@
1
+ // VENDORED: @voxgig/plugin sdk-20260908-1556-0 (zig/src/types.zig)
2
+ // Source: https://github.com/voxgig/plugin @ 48392f5e2b6d1434ee9b1a4a9a11f4480aaeb46a [tag: sdk-20260908-1556-0]
3
+ // License: MIT (c) voxgig - see repository LICENSE. Do not edit: resync from upstream.
4
+ //! Errors, and the raise mechanism (§12).
5
+ //!
6
+ //! ZIG ERRORS ARE VALUES WITHOUT PAYLOADS, and that is this port's one
7
+ //! big decision. There is no `throw` carrying an object and no
8
+ //! `setjmp`; there is `error.Plugin` and an explicit `try` at every
9
+ //! call. So the DIAGNOSTIC TRAVELS BESIDE THE ERROR: `fail` parks a
10
+ //! `PluginError` in `pending` and returns `error.Plugin`, and every
11
+ //! handler reads it with `take()` as its first act.
12
+ //!
13
+ //! THAT DISCIPLINE IS LOAD-BEARING. `pending` holds one error; a
14
+ //! handler that calls something fallible before reading it gets the
15
+ //! second error's payload with the first error's control flow. Every
16
+ //! `catch` in this port takes first and works afterwards, and that is
17
+ //! the thing to check when adding one.
18
+ //!
19
+ //! The upside is what `c` pays `volatile` for and does not get: an
20
+ //! explicit `try` means the compiler will not let a fallible call be
21
+ //! ignored, so the "missed check continues silently past a failure"
22
+ //! failure mode `c`'s longjmp exists to prevent cannot happen here at
23
+ //! all.
24
+ //!
25
+ //! Ports compare by CODE and never by message: wording is a port's own
26
+ //! business. The FORMAT is pinned, because a parseable message is what
27
+ //! makes a log searchable across twenty languages.
28
+
29
+ const std = @import("std");
30
+ const v = @import("value.zig");
31
+
32
+ pub const Err = error{Plugin};
33
+
34
+ pub const PluginError = struct {
35
+ code: []const u8,
36
+ text: []const u8,
37
+ details: *v.Value,
38
+ message: []const u8,
39
+ };
40
+
41
+ var pending: ?PluginError = null;
42
+
43
+ /// §12's detail fields render in a FIXED ORDER — part of the contract,
44
+ /// not a formatting preference, because otherwise each port invents its
45
+ /// own and message parity is gone.
46
+ const detail_order = [_][]const u8{
47
+ "host", "ref", "name", "tag", "point", "key", "capability",
48
+ "range", "version", "match", "candidates", "cycle", "holders", "refs",
49
+ "path", "cause",
50
+ };
51
+
52
+ pub fn formatError(code: []const u8, text: []const u8, details: ?*v.Value) []const u8 {
53
+ // Values render as COMPACT JSON, so a value containing a space or a
54
+ // bracket cannot break the parse and a list renders as an array. The
55
+ // bracket is absent entirely when no field applies.
56
+ var tail = v.List(u8).init(v.arena());
57
+ for (detail_order) |k| {
58
+ if (!v.has(details, k)) continue;
59
+ if (tail.items.len > 0) tail.append(' ') catch @panic("oom");
60
+ tail.appendSlice(k) catch @panic("oom");
61
+ tail.append('=') catch @panic("oom");
62
+ tail.appendSlice(v.json(v.get(details, k))) catch @panic("oom");
63
+ }
64
+ if (tail.items.len == 0) return v.print("plugin/{s}: {s}", .{ code, text });
65
+ return v.print("plugin/{s}: {s} [{s}]", .{ code, text, tail.items });
66
+ }
67
+
68
+ /// Raise. Use as `return fail(...)` or `try` through it.
69
+ pub fn fail(code: []const u8, text: []const u8, details: ?*v.Value) Err {
70
+ const d = details orelse v.vmap();
71
+ pending = .{
72
+ .code = v.dupe(code),
73
+ .text = v.dupe(text),
74
+ .details = d,
75
+ .message = formatError(code, text, d),
76
+ };
77
+ return error.Plugin;
78
+ }
79
+
80
+ /// Read and clear the parked error. THE FIRST THING EVERY HANDLER DOES.
81
+ pub fn take() PluginError {
82
+ const e = pending orelse PluginError{
83
+ .code = "plugin_bad_state",
84
+ .text = "error raised with no diagnostic",
85
+ .details = v.vmap(),
86
+ .message = "plugin/plugin_bad_state: error raised with no diagnostic",
87
+ };
88
+ pending = null;
89
+ return e;
90
+ }
91
+
92
+ /// Re-park an error a handler has already taken, so it can be
93
+ /// propagated unchanged.
94
+ pub fn reraise(e: PluginError) Err {
95
+ pending = e;
96
+ return error.Plugin;
97
+ }
98
+
99
+ pub fn details1(k: []const u8, val: ?*v.Value) *v.Value {
100
+ const d = v.vmap();
101
+ v.set(d, k, val);
102
+ return d;
103
+ }
104
+
105
+ pub fn details2(k1: []const u8, v1: ?*v.Value, k2: []const u8, v2: ?*v.Value) *v.Value {
106
+ const d = v.vmap();
107
+ v.set(d, k1, v1);
108
+ v.set(d, k2, v2);
109
+ return d;
110
+ }
111
+
112
+ /// Deep merge, struct's semantics: maps merge, everything else
113
+ /// replaces. §16 permits voxgig/struct for this and zig has no port of
114
+ /// it.
115
+ pub fn mergeValue(a: ?*v.Value, b: ?*v.Value) ?*v.Value {
116
+ if (!v.isMap(a) or !v.isMap(b)) return b orelse a;
117
+ const out = v.vmap();
118
+ for (v.keys(a)) |k| v.set(out, k, v.get(a, k));
119
+ for (v.keys(b)) |k| {
120
+ const bv = v.get(b, k);
121
+ const av = v.get(out, k);
122
+ if (v.isMap(av) and v.isMap(bv)) v.set(out, k, mergeValue(av, bv)) else v.set(out, k, bv);
123
+ }
124
+ return out;
125
+ }
126
+
127
+ /// §11.1's partial match: every leaf in `want` must be present and
128
+ /// equal in `have`; keys not mentioned are not checked.
129
+ pub fn matchValue(want: ?*v.Value, have: ?*v.Value) bool {
130
+ if (v.isNull(want)) return true;
131
+ if (v.isMap(want)) {
132
+ if (!v.isMap(have)) return false;
133
+ for (v.keys(want)) |k| {
134
+ if (!v.has(have, k)) return false;
135
+ if (!matchValue(v.get(want, k), v.get(have, k))) return false;
136
+ }
137
+ return true;
138
+ }
139
+ return v.same(want, have);
140
+ }