From eaa1cd5553ad72141d7b5ae9ffac7a41f895e9fa Mon Sep 17 00:00:00 2001 From: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com> Date: Mon, 22 Jan 2024 03:23:47 -0800 Subject: [PATCH] Add shell-spawn microbenchmark --- bench/bun.lockb | Bin 49490 -> 69389 bytes bench/package.json | 4 +++- bench/snippets/shell-spawn.mjs | 38 +++++++++++++++++++++++++++++++++ 3 files changed, 41 insertions(+), 1 deletion(-) create mode 100644 bench/snippets/shell-spawn.mjs diff --git a/bench/bun.lockb b/bench/bun.lockb index 2b23aa48aeda1f02739e32a1a35e0b92bf03ae2f..5016112d98470ccd4bcc1688ce58b2403fa1084e 100755 GIT binary patch delta 20328 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 F{uhsTp2h$G delta 8570 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 { + if (typeof Bun !== "undefined") + bench("$`echo hi`", async () => { + await Bun.$`echo hi`.quiet(); + }); + + bench("execa`echo hi`", async () => { + await execa`echo hi`; + }); + + bench("zx`echo hi`", async () => { + await zx`echo hi`.quiet(); + }); +}); + +group("ls .", () => { + if (typeof Bun !== "undefined") + bench("$`ls .`", async () => { + await Bun.$`ls .`.quiet(); + }); + + bench("execa`ls .`", async () => { + await execa`ls .`; + }); + + bench("zx`ls .`", async () => { + await zx`ls .`.quiet(); + }); +}); + + +await run();