typescript-virtual-container 1.5.2 → 1.5.4

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 (364) hide show
  1. package/README.md +43 -23
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/SSHMimic/executor.js +23 -5
  4. package/dist/commands/basename.d.ts +13 -0
  5. package/dist/commands/basename.js +45 -0
  6. package/dist/commands/file.d.ts +8 -0
  7. package/dist/commands/file.js +57 -0
  8. package/dist/commands/fun.d.ts +32 -0
  9. package/dist/commands/fun.js +172 -0
  10. package/dist/commands/ifconfig.d.ts +7 -0
  11. package/dist/commands/ifconfig.js +52 -0
  12. package/dist/commands/last.d.ts +13 -0
  13. package/dist/commands/last.js +68 -0
  14. package/dist/commands/manuals-bundle.js +598 -6
  15. package/dist/commands/registry.js +24 -2
  16. package/dist/commands/runtime.js +159 -106
  17. package/dist/commands/sh.js +5 -0
  18. package/dist/commands/tput.d.ts +13 -0
  19. package/dist/commands/tput.js +76 -0
  20. package/dist/commands/w.d.ts +7 -0
  21. package/dist/commands/w.js +38 -0
  22. package/dist/utils/expand.d.ts +12 -0
  23. package/dist/utils/expand.js +84 -0
  24. package/package.json +9 -3
  25. package/.github/ISSUE_TEMPLATE/bug_report.yml +0 -50
  26. package/.github/ISSUE_TEMPLATE/feature_request.yml +0 -31
  27. package/.github/dependabot.yml +0 -27
  28. package/.github/pull_request_template.md +0 -21
  29. package/.github/workflows/create-pull-request.yml +0 -85
  30. package/.github/workflows/publish.yml +0 -25
  31. package/.github/workflows/test-battery.yml +0 -102
  32. package/.vscode/settings.json +0 -20
  33. package/CODE_OF_CONDUCT.md +0 -39
  34. package/CONTRIBUTING.md +0 -59
  35. package/HONEYPOT.md +0 -358
  36. package/SECURITY.md +0 -33
  37. package/benchmark-results.txt +0 -40
  38. package/benchmark-virtualshell.ts +0 -88
  39. package/biome.json +0 -37
  40. package/build.js +0 -22
  41. package/builds/fortune-nyx-v1.5.1-directbash-k6.1.0.mjs +0 -1768
  42. package/builds/fortune-nyx-v1.5.1-ssh-nosftp.js +0 -1768
  43. package/builds/fortune-nyx-v1.5.1-ssh.cjs +0 -1769
  44. package/builds/fortune-nyx-v1.5.1-web.min.js +0 -17022
  45. package/bun.lock +0 -244
  46. package/docs/.nojekyll +0 -1
  47. package/docs/app.js +0 -1755
  48. package/docs/assets/hierarchy.js +0 -1
  49. package/docs/assets/highlight.css +0 -162
  50. package/docs/assets/icons.js +0 -18
  51. package/docs/assets/icons.svg +0 -1
  52. package/docs/assets/main.js +0 -60
  53. package/docs/assets/navigation.js +0 -1
  54. package/docs/assets/search.js +0 -1
  55. package/docs/assets/style.css +0 -1633
  56. package/docs/classes/HoneyPot.html +0 -31
  57. package/docs/classes/IdleManager.html +0 -162
  58. package/docs/classes/SshClient.html +0 -66
  59. package/docs/classes/VirtualFileSystem.html +0 -279
  60. package/docs/classes/VirtualPackageManager.html +0 -63
  61. package/docs/classes/VirtualSftpServer.html +0 -169
  62. package/docs/classes/VirtualShell.html +0 -285
  63. package/docs/classes/VirtualSshServer.html +0 -182
  64. package/docs/classes/VirtualUserManager.html +0 -276
  65. package/docs/demo.html +0 -82
  66. package/docs/functions/assertDiff.html +0 -6
  67. package/docs/functions/diffSnapshots.html +0 -7
  68. package/docs/functions/formatDiff.html +0 -6
  69. package/docs/functions/getArg.html +0 -13
  70. package/docs/functions/getFlag.html +0 -15
  71. package/docs/functions/ifFlag.html +0 -11
  72. package/docs/hierarchy.html +0 -1
  73. package/docs/index.html +0 -1869
  74. package/docs/interfaces/AuditLogEntry.html +0 -6
  75. package/docs/interfaces/CommandContext.html +0 -22
  76. package/docs/interfaces/CommandResult.html +0 -26
  77. package/docs/interfaces/ExecStream.html +0 -11
  78. package/docs/interfaces/HoneyPotStats.html +0 -16
  79. package/docs/interfaces/IdleManagerOptions.html +0 -7
  80. package/docs/interfaces/InstalledPackage.html +0 -20
  81. package/docs/interfaces/NanoEditorSession.html +0 -8
  82. package/docs/interfaces/PackageDefinition.html +0 -30
  83. package/docs/interfaces/PackageFile.html +0 -8
  84. package/docs/interfaces/PasswordChallenge.html +0 -16
  85. package/docs/interfaces/RemoveOptions.html +0 -4
  86. package/docs/interfaces/ShellEnv.html +0 -6
  87. package/docs/interfaces/ShellModule.html +0 -14
  88. package/docs/interfaces/ShellProperties.html +0 -14
  89. package/docs/interfaces/ShellStream.html +0 -11
  90. package/docs/interfaces/SudoChallenge.html +0 -24
  91. package/docs/interfaces/VfsBaseNode.html +0 -12
  92. package/docs/interfaces/VfsDiff.html +0 -10
  93. package/docs/interfaces/VfsDiffEntry.html +0 -6
  94. package/docs/interfaces/VfsDiffModified.html +0 -10
  95. package/docs/interfaces/VfsDirectoryNode.html +0 -15
  96. package/docs/interfaces/VfsFileNode.html +0 -17
  97. package/docs/interfaces/VfsOptions.html +0 -26
  98. package/docs/interfaces/VfsSnapshot.html +0 -3
  99. package/docs/interfaces/VfsSnapshotBaseNode.html +0 -8
  100. package/docs/interfaces/VfsSnapshotDirectoryNode.html +0 -10
  101. package/docs/interfaces/VfsSnapshotFileNode.html +0 -12
  102. package/docs/interfaces/VirtualActiveSession.html +0 -12
  103. package/docs/interfaces/VirtualSftpServerOptions.html +0 -7
  104. package/docs/interfaces/VirtualShellVfsLike.html +0 -15
  105. package/docs/interfaces/VirtualShellVfsOptions.html +0 -3
  106. package/docs/interfaces/WriteFileOptions.html +0 -6
  107. package/docs/media/LICENSE +0 -21
  108. package/docs/modules.html +0 -1
  109. package/docs/types/ArgParseOptions.html +0 -4
  110. package/docs/types/CommandMode.html +0 -2
  111. package/docs/types/CommandOutcome.html +0 -2
  112. package/docs/types/IdleState.html +0 -1
  113. package/docs/types/VfsNodeStats.html +0 -2
  114. package/docs/types/VfsNodeType.html +0 -2
  115. package/docs/types/VfsPersistenceMode.html +0 -5
  116. package/docs/types/VfsSnapshotNode.html +0 -2
  117. package/examples/README.md +0 -288
  118. package/examples/app.js +0 -1755
  119. package/examples/app.ts +0 -299
  120. package/examples/build.js +0 -27
  121. package/examples/demo.html +0 -33
  122. package/examples/honeypot-audit.ts +0 -180
  123. package/examples/honeypot-export.ts +0 -253
  124. package/examples/honeypot-quickstart.ts +0 -110
  125. package/examples/index.html +0 -82
  126. package/examples/server.js +0 -55
  127. package/polyfills/buffer.js +0 -117
  128. package/polyfills/node_child_process/index.js +0 -2
  129. package/polyfills/node_crypto/index.js +0 -167
  130. package/polyfills/node_events/index.js +0 -9
  131. package/polyfills/node_fs/index.js +0 -202
  132. package/polyfills/node_fs/promises.js +0 -4
  133. package/polyfills/node_os/index.js +0 -9
  134. package/polyfills/node_path/index.js +0 -28
  135. package/polyfills/node_vm/index.js +0 -7
  136. package/polyfills/node_zlib/index.js +0 -3
  137. package/polyfills/process.js +0 -14
  138. package/polyfills/ssh2/index.js +0 -75
  139. package/scripts/build-all.mjs +0 -226
  140. package/scripts/build-names.mjs +0 -43
  141. package/scripts/generate-manuals-bundle.mjs +0 -49
  142. package/scripts/postinstall.js +0 -42
  143. package/scripts/publish-package.sh +0 -70
  144. package/src/Honeypot/index.ts +0 -457
  145. package/src/SSHClient/index.ts +0 -270
  146. package/src/SSHMimic/exec.ts +0 -49
  147. package/src/SSHMimic/executor.ts +0 -251
  148. package/src/SSHMimic/hostKey.ts +0 -21
  149. package/src/SSHMimic/index.ts +0 -337
  150. package/src/SSHMimic/loginBanner.ts +0 -36
  151. package/src/SSHMimic/loginFormat.ts +0 -10
  152. package/src/SSHMimic/prompt.ts +0 -14
  153. package/src/SSHMimic/sftp.ts +0 -883
  154. package/src/VirtualFileSystem/binaryPack.ts +0 -258
  155. package/src/VirtualFileSystem/index.ts +0 -1193
  156. package/src/VirtualFileSystem/internalTypes.ts +0 -43
  157. package/src/VirtualFileSystem/journal.ts +0 -171
  158. package/src/VirtualFileSystem/path.ts +0 -74
  159. package/src/VirtualPackageManager/index.ts +0 -1006
  160. package/src/VirtualShell/idleManager.ts +0 -137
  161. package/src/VirtualShell/index.ts +0 -475
  162. package/src/VirtualShell/shell.ts +0 -700
  163. package/src/VirtualShell/shellParser.ts +0 -285
  164. package/src/VirtualUserManager/index.ts +0 -758
  165. package/src/bun.d.ts +0 -1
  166. package/src/commands/adduser.ts +0 -103
  167. package/src/commands/alias.ts +0 -69
  168. package/src/commands/apt.ts +0 -233
  169. package/src/commands/awk.ts +0 -168
  170. package/src/commands/base64.ts +0 -29
  171. package/src/commands/cat.ts +0 -52
  172. package/src/commands/cd.ts +0 -25
  173. package/src/commands/chmod.ts +0 -85
  174. package/src/commands/clear.ts +0 -15
  175. package/src/commands/command-helpers.ts +0 -286
  176. package/src/commands/cp.ts +0 -83
  177. package/src/commands/curl.ts +0 -147
  178. package/src/commands/cut.ts +0 -36
  179. package/src/commands/date.ts +0 -30
  180. package/src/commands/declare.ts +0 -49
  181. package/src/commands/deluser.ts +0 -98
  182. package/src/commands/df.ts +0 -23
  183. package/src/commands/diff.ts +0 -43
  184. package/src/commands/dpkg.ts +0 -180
  185. package/src/commands/du.ts +0 -56
  186. package/src/commands/echo.ts +0 -58
  187. package/src/commands/env.ts +0 -23
  188. package/src/commands/exit.ts +0 -18
  189. package/src/commands/export.ts +0 -34
  190. package/src/commands/find.ts +0 -68
  191. package/src/commands/free.ts +0 -47
  192. package/src/commands/grep.ts +0 -116
  193. package/src/commands/groups.ts +0 -19
  194. package/src/commands/gzip.ts +0 -88
  195. package/src/commands/head.ts +0 -52
  196. package/src/commands/help.ts +0 -152
  197. package/src/commands/helpers.ts +0 -234
  198. package/src/commands/history.ts +0 -34
  199. package/src/commands/hostname.ts +0 -14
  200. package/src/commands/htop.ts +0 -20
  201. package/src/commands/id.ts +0 -19
  202. package/src/commands/index.ts +0 -9
  203. package/src/commands/kill.ts +0 -19
  204. package/src/commands/ln.ts +0 -71
  205. package/src/commands/ls.ts +0 -243
  206. package/src/commands/lsb-release.ts +0 -63
  207. package/src/commands/man.ts +0 -31
  208. package/src/commands/manuals/adduser.txt +0 -11
  209. package/src/commands/manuals/apt-cache.txt +0 -12
  210. package/src/commands/manuals/apt.txt +0 -20
  211. package/src/commands/manuals/awk.txt +0 -13
  212. package/src/commands/manuals/cat.txt +0 -14
  213. package/src/commands/manuals/cd.txt +0 -16
  214. package/src/commands/manuals/chmod.txt +0 -16
  215. package/src/commands/manuals/clear.txt +0 -10
  216. package/src/commands/manuals/cp.txt +0 -10
  217. package/src/commands/manuals/curl.txt +0 -20
  218. package/src/commands/manuals/date.txt +0 -14
  219. package/src/commands/manuals/declare.txt +0 -12
  220. package/src/commands/manuals/deluser.txt +0 -10
  221. package/src/commands/manuals/df.txt +0 -10
  222. package/src/commands/manuals/dpkg-query.txt +0 -11
  223. package/src/commands/manuals/dpkg.txt +0 -14
  224. package/src/commands/manuals/du.txt +0 -11
  225. package/src/commands/manuals/echo.txt +0 -11
  226. package/src/commands/manuals/false.txt +0 -10
  227. package/src/commands/manuals/find.txt +0 -11
  228. package/src/commands/manuals/free.txt +0 -12
  229. package/src/commands/manuals/grep.txt +0 -13
  230. package/src/commands/manuals/groups.txt +0 -10
  231. package/src/commands/manuals/gzip.txt +0 -11
  232. package/src/commands/manuals/head.txt +0 -10
  233. package/src/commands/manuals/help.txt +0 -11
  234. package/src/commands/manuals/history.txt +0 -11
  235. package/src/commands/manuals/hostname.txt +0 -10
  236. package/src/commands/manuals/id.txt +0 -10
  237. package/src/commands/manuals/kill.txt +0 -13
  238. package/src/commands/manuals/ls.txt +0 -20
  239. package/src/commands/manuals/lsb_release.txt +0 -14
  240. package/src/commands/manuals/mkdir.txt +0 -10
  241. package/src/commands/manuals/mv.txt +0 -10
  242. package/src/commands/manuals/nano.txt +0 -11
  243. package/src/commands/manuals/neofetch.txt +0 -10
  244. package/src/commands/manuals/node.txt +0 -13
  245. package/src/commands/manuals/npm.txt +0 -13
  246. package/src/commands/manuals/npx.txt +0 -13
  247. package/src/commands/manuals/passwd.txt +0 -11
  248. package/src/commands/manuals/ping.txt +0 -10
  249. package/src/commands/manuals/printf.txt +0 -11
  250. package/src/commands/manuals/ps.txt +0 -10
  251. package/src/commands/manuals/pwd.txt +0 -10
  252. package/src/commands/manuals/python3.txt +0 -13
  253. package/src/commands/manuals/readlink.txt +0 -10
  254. package/src/commands/manuals/return.txt +0 -10
  255. package/src/commands/manuals/rm.txt +0 -10
  256. package/src/commands/manuals/sed.txt +0 -11
  257. package/src/commands/manuals/set.txt +0 -11
  258. package/src/commands/manuals/shift.txt +0 -10
  259. package/src/commands/manuals/sleep.txt +0 -10
  260. package/src/commands/manuals/sort.txt +0 -12
  261. package/src/commands/manuals/source.txt +0 -11
  262. package/src/commands/manuals/ssh.txt +0 -11
  263. package/src/commands/manuals/stat.txt +0 -10
  264. package/src/commands/manuals/su.txt +0 -13
  265. package/src/commands/manuals/sudo.txt +0 -11
  266. package/src/commands/manuals/tail.txt +0 -10
  267. package/src/commands/manuals/tar.txt +0 -19
  268. package/src/commands/manuals/tee.txt +0 -10
  269. package/src/commands/manuals/test.txt +0 -11
  270. package/src/commands/manuals/touch.txt +0 -11
  271. package/src/commands/manuals/tr.txt +0 -10
  272. package/src/commands/manuals/trap.txt +0 -10
  273. package/src/commands/manuals/true.txt +0 -10
  274. package/src/commands/manuals/type.txt +0 -10
  275. package/src/commands/manuals/uname.txt +0 -12
  276. package/src/commands/manuals/uniq.txt +0 -12
  277. package/src/commands/manuals/unset.txt +0 -10
  278. package/src/commands/manuals/uptime.txt +0 -11
  279. package/src/commands/manuals/wc.txt +0 -12
  280. package/src/commands/manuals/wget.txt +0 -12
  281. package/src/commands/manuals/which.txt +0 -10
  282. package/src/commands/manuals/whoami.txt +0 -10
  283. package/src/commands/manuals/xargs.txt +0 -10
  284. package/src/commands/manuals-bundle.ts +0 -898
  285. package/src/commands/mkdir.ts +0 -31
  286. package/src/commands/mv.ts +0 -50
  287. package/src/commands/nano.ts +0 -38
  288. package/src/commands/neofetch.ts +0 -53
  289. package/src/commands/node.ts +0 -341
  290. package/src/commands/npm.ts +0 -132
  291. package/src/commands/passwd.ts +0 -50
  292. package/src/commands/ping.ts +0 -32
  293. package/src/commands/printf.ts +0 -129
  294. package/src/commands/ps.ts +0 -58
  295. package/src/commands/pwd.ts +0 -9
  296. package/src/commands/python.ts +0 -2229
  297. package/src/commands/read.ts +0 -46
  298. package/src/commands/registry.ts +0 -249
  299. package/src/commands/rm.ts +0 -42
  300. package/src/commands/runtime.ts +0 -378
  301. package/src/commands/sed.ts +0 -68
  302. package/src/commands/seq.ts +0 -43
  303. package/src/commands/set.ts +0 -29
  304. package/src/commands/sh.ts +0 -467
  305. package/src/commands/shift.ts +0 -63
  306. package/src/commands/sleep.ts +0 -20
  307. package/src/commands/sort.ts +0 -46
  308. package/src/commands/source.ts +0 -52
  309. package/src/commands/stat.ts +0 -61
  310. package/src/commands/su.ts +0 -72
  311. package/src/commands/sudo.ts +0 -76
  312. package/src/commands/tail.ts +0 -53
  313. package/src/commands/tar.ts +0 -102
  314. package/src/commands/tee.ts +0 -36
  315. package/src/commands/test.ts +0 -137
  316. package/src/commands/touch.ts +0 -28
  317. package/src/commands/tr.ts +0 -70
  318. package/src/commands/tree.ts +0 -20
  319. package/src/commands/true.ts +0 -27
  320. package/src/commands/type.ts +0 -48
  321. package/src/commands/uname.ts +0 -29
  322. package/src/commands/uniq.ts +0 -39
  323. package/src/commands/unset.ts +0 -17
  324. package/src/commands/uptime.ts +0 -54
  325. package/src/commands/wc.ts +0 -55
  326. package/src/commands/wget.ts +0 -148
  327. package/src/commands/which.ts +0 -37
  328. package/src/commands/who.ts +0 -25
  329. package/src/commands/whoami.ts +0 -14
  330. package/src/commands/xargs.ts +0 -31
  331. package/src/index.ts +0 -67
  332. package/src/modules/linuxRootfs.ts +0 -1961
  333. package/src/modules/neofetch.ts +0 -358
  334. package/src/modules/shellInteractive.ts +0 -57
  335. package/src/modules/shellRuntime.ts +0 -76
  336. package/src/self-standalone.ts +0 -542
  337. package/src/standalone-wo-sftp.ts +0 -38
  338. package/src/standalone.ts +0 -72
  339. package/src/types/commands.ts +0 -146
  340. package/src/types/pipeline.ts +0 -52
  341. package/src/types/streams.ts +0 -32
  342. package/src/types/tar-stream.d.ts +0 -38
  343. package/src/types/vfs.ts +0 -98
  344. package/src/utils/expand.ts +0 -491
  345. package/src/utils/perfLogger.ts +0 -72
  346. package/src/utils/tokenize.ts +0 -98
  347. package/src/utils/vfsDiff.ts +0 -275
  348. package/tests/command-helpers.test.ts +0 -116
  349. package/tests/commands-admin-net.test.ts +0 -441
  350. package/tests/commands-advanced.test.ts +0 -456
  351. package/tests/commands-core.test.ts +0 -562
  352. package/tests/commands-missing.test.ts +0 -570
  353. package/tests/commands-specific-units.test.ts +0 -327
  354. package/tests/commands-text-sys.test.ts +0 -445
  355. package/tests/expand.test.ts +0 -170
  356. package/tests/helpers.test.ts +0 -97
  357. package/tests/new-features.test.ts +0 -1036
  358. package/tests/parser-executor.test.ts +0 -37
  359. package/tests/sftp.test.ts +0 -323
  360. package/tests/ssh-exec.test.ts +0 -45
  361. package/tests/test-helper.ts +0 -79
  362. package/tests/users.test.ts +0 -86
  363. package/tsconfig.json +0 -49
  364. package/typedoc.json +0 -47
package/package.json CHANGED
@@ -4,7 +4,13 @@
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "type": "module",
7
- "version": "1.5.2",
7
+ "version": "1.5.4",
8
+ "files": [
9
+ "dist/",
10
+ "README.md",
11
+ "LICENSE",
12
+ "CHANGELOG.md"
13
+ ],
8
14
  "license": "MIT",
9
15
  "repository": {
10
16
  "type": "git",
@@ -26,7 +32,7 @@
26
32
  "lint:write": "bunx --bun @biomejs/biome lint --write ./src",
27
33
  "test": "bun run test-salve",
28
34
  "test-battery": "bun test tests/",
29
- "test-salve": "for f in tests/*.test.ts; do echo \"\\n🧪 Testing $f...\"; bun test \"$f\" --timeout 10000; sleep 0.25; done",
35
+ "test-salve": "for f in tests/*.test.ts; do echo \"\\n\ud83e\uddea Testing $f...\"; bun test \"$f\" --timeout 10000; sleep 0.25; done",
30
36
  "build": "tsc --project tsconfig.json",
31
37
  "deploy:npm": "bun publish --access public",
32
38
  "bench": "rm -rf .benchmark-shells/ && bun benchmark-virtualshell.ts",
@@ -59,4 +65,4 @@
59
65
  "dependencies": {
60
66
  "ssh2": "^1.17.0"
61
67
  }
62
- }
68
+ }
@@ -1,50 +0,0 @@
1
- name: Bug report
2
- description: Report a reproducible problem
3
- labels: [bug]
4
- body:
5
- - type: markdown
6
- attributes:
7
- value: |
8
- Thanks for reporting a bug. Please fill out the details below.
9
- - type: input
10
- id: version
11
- attributes:
12
- label: Package version
13
- placeholder: 1.0.0
14
- validations:
15
- required: true
16
- - type: input
17
- id: runtime
18
- attributes:
19
- label: Runtime and version
20
- description: Node or Bun
21
- placeholder: Node 20.12.0
22
- validations:
23
- required: true
24
- - type: textarea
25
- id: reproduction
26
- attributes:
27
- label: Reproduction steps
28
- placeholder: |
29
- 1. Start server with ...
30
- 2. Run command ...
31
- 3. Observe error ...
32
- validations:
33
- required: true
34
- - type: textarea
35
- id: expected
36
- attributes:
37
- label: Expected behavior
38
- validations:
39
- required: true
40
- - type: textarea
41
- id: actual
42
- attributes:
43
- label: Actual behavior
44
- validations:
45
- required: true
46
- - type: textarea
47
- id: logs
48
- attributes:
49
- label: Logs or stack trace
50
- render: shell
@@ -1,31 +0,0 @@
1
- name: Feature request
2
- description: Suggest an improvement
3
- labels: [enhancement]
4
- body:
5
- - type: markdown
6
- attributes:
7
- value: |
8
- Thanks for proposing an improvement.
9
- - type: textarea
10
- id: problem
11
- attributes:
12
- label: Problem statement
13
- description: What problem are you trying to solve?
14
- validations:
15
- required: true
16
- - type: textarea
17
- id: proposal
18
- attributes:
19
- label: Proposed solution
20
- description: Describe the API or behavior you want.
21
- validations:
22
- required: true
23
- - type: textarea
24
- id: alternatives
25
- attributes:
26
- label: Alternatives considered
27
- - type: textarea
28
- id: impact
29
- attributes:
30
- label: Breaking change impact
31
- description: Does this change public API behavior?
@@ -1,27 +0,0 @@
1
- version: 2
2
- updates:
3
- - package-ecosystem: "npm"
4
- directory: "/"
5
- schedule:
6
- interval: "daily"
7
- time: "04:00"
8
- timezone: "Europe/Paris"
9
- open-pull-requests-limit: 20
10
- rebase-strategy: "auto"
11
- versioning-strategy: "increase-if-necessary"
12
- # Exclude metric/analytics packages from version update PRs.
13
- ignore:
14
- - dependency-name: "*metrics*"
15
- - dependency-name: "*analytics*"
16
- groups:
17
- patch-and-minor:
18
- patterns:
19
- - "*"
20
- update-types:
21
- - "minor"
22
- - "patch"
23
- major:
24
- patterns:
25
- - "*"
26
- update-types:
27
- - "major"
@@ -1,21 +0,0 @@
1
- ## Summary
2
-
3
- Describe what changed and why.
4
-
5
- ## Type of change
6
-
7
- - [ ] Bug fix
8
- - [ ] New feature
9
- - [ ] Breaking change
10
- - [ ] Documentation update
11
- - [ ] Refactor
12
-
13
- ## Validation
14
-
15
- - [ ] I ran bun format
16
- - [ ] I ran bun check
17
- - [ ] I tested the changed behavior locally
18
-
19
- ## Notes for reviewers
20
-
21
- Include anything reviewers should focus on (tradeoffs, edge cases, risks).
@@ -1,85 +0,0 @@
1
- name: Auto Create Pull Request
2
-
3
- on:
4
- push:
5
- branches:
6
-
7
- jobs:
8
- create-pull-request:
9
- if: github.ref != 'refs/heads/main'
10
- runs-on: ubuntu-latest
11
- steps:
12
- - name: Validate pull request token
13
- env:
14
- AUTO_PR_TOKEN: ${{ secrets.AUTO_PR_TOKEN }}
15
- run: |
16
- if [ -z "$AUTO_PR_TOKEN" ]; then
17
- echo "AUTO_PR_TOKEN is required to create pull requests from GitHub Actions. Use a PAT or GitHub App token with contents:write and pull-requests:write."
18
- exit 1
19
- fi
20
-
21
- - name: Create pull request if none exists
22
- uses: actions/github-script@v8
23
- with:
24
- github-token: ${{ secrets.AUTO_PR_TOKEN }}
25
- script: |
26
- const owner = context.repo.owner;
27
- const repo = context.repo.repo;
28
- const sourceBranch = context.ref.startsWith('refs/heads/')
29
- ? context.ref.slice('refs/heads/'.length)
30
- : context.ref;
31
- const head = `${owner}:${sourceBranch}`;
32
- const base = 'main';
33
-
34
- // Check if there are commits between main and the current branch
35
- const { data: comparison } = await github.rest.repos.compareCommits({
36
- owner,
37
- repo,
38
- base: 'main',
39
- head: sourceBranch,
40
- }).catch(err => {
41
- if (err.status === 404 && err.message.includes('No commits')) {
42
- core.info('No commits between main and ' + sourceBranch + ' - skipping PR creation');
43
- return { data: { ahead_by: 0 } };
44
- }
45
- throw err;
46
- });
47
-
48
- if (comparison.ahead_by === 0) {
49
- core.info('Branches are identical - no pull request needed');
50
- return;
51
- }
52
-
53
- const { data: existingPullRequests } = await github.rest.pulls.list({
54
- owner,
55
- repo,
56
- state: 'open',
57
- head,
58
- base,
59
- });
60
-
61
- if (existingPullRequests.length > 0) {
62
- core.info(`Pull request already exists: #${existingPullRequests[0].number}`);
63
- return;
64
- }
65
-
66
- const { data: pullRequest } = await github.rest.pulls.create({
67
- owner,
68
- repo,
69
- head: sourceBranch,
70
- base,
71
- title: `chore: auto PR from ${sourceBranch} to main`,
72
- body: [
73
- 'This pull request was created automatically by GitHub Actions.',
74
- '',
75
- `- source branch: \`${sourceBranch}\``,
76
- `- target branch: \`main\``,
77
- `- triggered by commit \`${context.sha}\``,
78
- ].join('\n'),
79
- });
80
-
81
- core.info(`Created pull request #${pullRequest.number}: ${pullRequest.html_url}`);
82
-
83
- permissions:
84
- contents: write
85
- pull-requests: write
@@ -1,25 +0,0 @@
1
- name: Publish Package
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
- workflow_dispatch:
8
-
9
- permissions:
10
- id-token: write # Required for OIDC
11
- contents: read
12
-
13
- jobs:
14
- publish:
15
- runs-on: ubuntu-latest
16
- steps:
17
- - uses: actions/checkout@v6
18
-
19
- - uses: actions/setup-node@v6
20
- with:
21
- node-version: '24'
22
- registry-url: 'https://registry.npmjs.org'
23
- - run: npm install
24
- - run: npm run build --if-present
25
- - run: npm publish
@@ -1,102 +0,0 @@
1
- name: Test battery
2
-
3
- on:
4
- pull_request:
5
- branches:
6
-
7
- permissions:
8
- contents: read
9
-
10
- jobs:
11
- setup:
12
- runs-on: ubuntu-latest
13
- steps:
14
- - name: Checkout repository
15
- uses: actions/checkout@v4
16
-
17
- - name: Setup Bun
18
- uses: oven-sh/setup-bun@v1
19
- with:
20
- bun-version: latest
21
-
22
- - name: Install dependencies
23
- run: bun install
24
-
25
- - name: Cache dependencies
26
- uses: actions/cache@v3
27
- with:
28
- path: node_modules
29
- key: ${{ runner.os }}-bun-${{ hashFiles('bun.lockb') }}
30
-
31
- typecheck:
32
- needs: setup
33
- runs-on: ubuntu-latest
34
- steps:
35
- - name: Checkout repository
36
- uses: actions/checkout@v4
37
-
38
- - name: Setup Bun
39
- uses: oven-sh/setup-bun@v1
40
- with:
41
- bun-version: latest
42
-
43
- - name: Restore dependencies
44
- uses: actions/cache@v3
45
- with:
46
- path: node_modules
47
- key: ${{ runner.os }}-bun-${{ hashFiles('bun.lockb') }}
48
-
49
- - name: Run typecheck
50
- run: bun check
51
-
52
- lint:
53
- needs: setup
54
- runs-on: ubuntu-latest
55
- steps:
56
- - name: Checkout repository
57
- uses: actions/checkout@v4
58
-
59
- - name: Setup Bun
60
- uses: oven-sh/setup-bun@v1
61
- with:
62
- bun-version: latest
63
-
64
- - name: Restore dependencies
65
- uses: actions/cache@v3
66
- with:
67
- path: node_modules
68
- key: ${{ runner.os }}-bun-${{ hashFiles('bun.lockb') }}
69
-
70
- - name: Run lint
71
- run: bun lint
72
-
73
- tests:
74
- needs: setup
75
- runs-on: ubuntu-latest
76
- steps:
77
- - name: Checkout repository
78
- uses: actions/checkout@v4
79
-
80
- - name: Setup Bun
81
- uses: oven-sh/setup-bun@v1
82
- with:
83
- bun-version: latest
84
-
85
- - name: Restore dependencies
86
- uses: actions/cache@v3
87
- with:
88
- path: node_modules
89
- key: ${{ runner.os }}-bun-${{ hashFiles('bun.lockb') }}
90
-
91
- - name: Run tests
92
- run: bun test
93
-
94
- test-battery:
95
- needs:
96
- - typecheck
97
- - lint
98
- - tests
99
- runs-on: ubuntu-latest
100
- steps:
101
- - name: Test battery passed
102
- run: echo "Typecheck, lint and tests succeeded."
@@ -1,20 +0,0 @@
1
- {
2
- "files.exclude": {
3
- "**/.git": true,
4
- "**/.hg": true,
5
- "**/.svn": true,
6
- "**/.DS_Store": true,
7
- "**/Thumbs.db": true,
8
- "**/node_modules": true,
9
-
10
- ".ssh-mimic": true,
11
- // ".vfs": true,
12
- // "builds": true,
13
- "docs": true,
14
- // "examples": true,
15
-
16
- "LICENSE": true,
17
- "tsconfig.tsbuildinfo": true
18
- },
19
- "js/ts.tsdk.path": "node_modules/typescript/lib"
20
- }
@@ -1,39 +0,0 @@
1
- # Code of Conduct
2
-
3
- ## Our Pledge
4
-
5
- We are committed to making participation in this project a harassment-free experience for everyone.
6
-
7
- ## Our Standards
8
-
9
- Examples of behavior that contributes to a positive environment include:
10
-
11
- - Being respectful and inclusive
12
- - Giving and receiving constructive feedback
13
- - Focusing on what is best for the community
14
- - Showing empathy toward other contributors
15
-
16
- Examples of unacceptable behavior include:
17
-
18
- - Harassment, insults, or discriminatory language
19
- - Trolling or personal attacks
20
- - Publishing private information without consent
21
- - Any conduct that is inappropriate in a professional setting
22
-
23
- ## Enforcement Responsibilities
24
-
25
- Project maintainers are responsible for clarifying and enforcing standards and may remove, edit, or reject comments, commits, code, issues, and other contributions that are not aligned with this Code of Conduct.
26
-
27
- ## Scope
28
-
29
- This Code of Conduct applies within project spaces and in public spaces when an individual is officially representing the project.
30
-
31
- ## Enforcement
32
-
33
- If you experience or witness unacceptable behavior, report it through the repository maintainers.
34
-
35
- Maintainers will review and investigate reports and respond in a way they deem appropriate to the circumstances.
36
-
37
- ## Attribution
38
-
39
- This document is inspired by the Contributor Covenant, version 2.1.
package/CONTRIBUTING.md DELETED
@@ -1,59 +0,0 @@
1
- # Contributing
2
-
3
- Thanks for contributing to typescript-virtual-container.
4
-
5
- ## Development Setup
6
-
7
- 1. Fork and clone the repository.
8
- 2. Install dependencies:
9
-
10
- ```bash
11
- bun install
12
- ```
13
-
14
- 3. Run checks before opening a pull request:
15
-
16
- ```bash
17
- bun format
18
- bun check
19
- ```
20
-
21
- ## Branch and Commit Style
22
-
23
- - Create focused branches (example: feat/programmatic-client-timeout).
24
- - Keep commits small and descriptive.
25
- - Prefer conventional commit prefixes when possible:
26
- - feat:
27
- - fix:
28
- - docs:
29
- - refactor:
30
- - test:
31
- - chore:
32
-
33
- ## Coding Guidelines
34
-
35
- - Use TypeScript with explicit, readable types.
36
- - Avoid introducing any without a strong reason.
37
- - Preserve existing API behavior unless the change is intentional and documented.
38
- - Keep command behavior deterministic for tests and CI use cases.
39
-
40
- ## Pull Request Checklist
41
-
42
- - I ran format and checks locally.
43
- - I added or updated documentation for public behavior changes.
44
- - I added tests for bug fixes or new behavior when applicable.
45
- - I kept changes scoped to one objective.
46
-
47
- ## Reporting Issues
48
-
49
- When opening an issue, include:
50
-
51
- - Package version
52
- - Runtime (Node or Bun) and version
53
- - Minimal reproduction steps
54
- - Expected behavior and actual behavior
55
-
56
- ## Security
57
-
58
- Please do not open public issues for vulnerabilities.
59
- See SECURITY.md for responsible disclosure details.