bluefairy 0.0.13 → 0.0.14

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.
package/dist/cli.js CHANGED
@@ -13,7 +13,7 @@ Usage:
13
13
  bluefairy doctor [--short|--oneline]
14
14
 
15
15
  Internal:
16
- bluefairy internal-shim <uv|npm> [args...]
16
+ bluefairy internal-shim <uv|npm|bun> [args...]
17
17
  `);
18
18
  }
19
19
  function printVersion() {
@@ -40,7 +40,7 @@ async function main() {
40
40
  return;
41
41
  case "internal-shim": {
42
42
  const [tool, ...toolArgs] = rest;
43
- if (tool !== "uv" && tool !== "npm") {
43
+ if (tool !== "uv" && tool !== "npm" && tool !== "bun") {
44
44
  throw new Error(`Unsupported shim target: ${tool ?? "(missing)"}`);
45
45
  }
46
46
  await runShim(tool, toolArgs, config);
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;CAQb,CAAC,CAAC;AACH,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAEhC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,YAAY,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEvC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO;QACT,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC9B,OAAO;QACT,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;YACjC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACpC,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD;YACE,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7E,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;IACvC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA,OAAO,OAAO,MAAM,cAAc,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAEjD,SAAS,SAAS;IAChB,OAAO,CAAC,GAAG,CAAC;;;;;;;;CAQb,CAAC,CAAC;AACH,CAAC;AAED,SAAS,YAAY;IACnB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;AACjC,CAAC;AAED,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACnC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC;IAEhC,IAAI,CAAC,OAAO,IAAI,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACzD,SAAS,EAAE,CAAC;QACZ,OAAO;IACT,CAAC;IAED,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QAChD,YAAY,EAAE,CAAC;QACf,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;IAEvC,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,MAAM,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC5B,OAAO;QACT,KAAK,QAAQ;YACX,MAAM,SAAS,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;YAC9B,OAAO;QACT,KAAK,eAAe,CAAC,CAAC,CAAC;YACrB,MAAM,CAAC,IAAI,EAAE,GAAG,QAAQ,CAAC,GAAG,IAAI,CAAC;YACjC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;gBACtD,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;YACtC,OAAO;QACT,CAAC;QACD;YACE,MAAM,IAAI,KAAK,CAAC,oBAAoB,OAAO,EAAE,CAAC,CAAC;IACnD,CAAC;AACH,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;IAC9B,MAAM,OAAO,GACX,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;IAC7E,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;IACvC,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -24,7 +24,8 @@ export async function collectDoctorReport(config, env = process.env) {
24
24
  activatedInCurrentShell: pathEntries(env).some((entry) => samePath(entry, config.paths.shimDir)),
25
25
  tools: [
26
26
  await collectToolReport(config, env, "uv"),
27
- await collectToolReport(config, env, "npm")
27
+ await collectToolReport(config, env, "npm"),
28
+ await collectToolReport(config, env, "bun")
28
29
  ]
29
30
  };
30
31
  }
@@ -99,7 +100,8 @@ export function renderDoctorShortReport(report, options = {}) {
99
100
  `active=${formatSummaryValue(palette, summary.active ? "yes" : "no")}`,
100
101
  `install=${formatSummaryValue(palette, summary.install)}`,
101
102
  `uv=${formatSummaryValue(palette, summary.toolStates.uv)}`,
102
- `npm=${formatSummaryValue(palette, summary.toolStates.npm)}`
103
+ `npm=${formatSummaryValue(palette, summary.toolStates.npm)}`,
104
+ `bun=${formatSummaryValue(palette, summary.toolStates.bun)}`
103
105
  ].join(" | ");
104
106
  }
105
107
  export function renderDoctorReport(report, options = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
package/dist/config.js CHANGED
@@ -31,8 +31,10 @@ export function loadConfig(env) {
31
31
  return {
32
32
  enabled: parseBoolean(env.BLUEFAIRY_ENABLED, true),
33
33
  delayHours,
34
+ bunEnabled: parseBoolean(env.BLUEFAIRY_BUN_ENABLED, true),
34
35
  npmEnabled: parseBoolean(env.BLUEFAIRY_NPM_ENABLED, true),
35
36
  uvEnabled: parseBoolean(env.BLUEFAIRY_UV_ENABLED, true),
37
+ bunDelayHours: parseNumber(env.BLUEFAIRY_BUN_DELAY_HOURS, delayHours),
36
38
  npmDelayHours: parseNumber(env.BLUEFAIRY_NPM_DELAY_HOURS, delayHours),
37
39
  pythonDelayHours: parseNumber(env.BLUEFAIRY_PYTHON_DELAY_HOURS, delayHours),
38
40
  failOpen: parseBoolean(env.BLUEFAIRY_FAIL_OPEN, true),
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAqB,MAAM,YAAY,CAAC;AAehE,SAAS,YAAY,CAAC,KAAyB,EAAE,QAAiB;IAChE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACxC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;QACnC,KAAK,GAAG,CAAC;QACT,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,IAAI;YACP,OAAO,IAAI,CAAC;QACd,KAAK,GAAG,CAAC;QACT,KAAK,OAAO,CAAC;QACb,KAAK,IAAI,CAAC;QACV,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,KAAyB,EAAE,QAAgB;IAC9D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACxC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAsB;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAEnC,OAAO;QACL,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC;QAClD,UAAU;QACV,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC;QACzD,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC;QACvD,aAAa,EAAE,WAAW,CAAC,GAAG,CAAC,yBAAyB,EAAE,UAAU,CAAC;QACrE,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,4BAA4B,EAAE,UAAU,CAAC;QAC3E,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC;QACrD,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC;QACnD,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC;QAC/C,KAAK;KACN,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAqB,MAAM,YAAY,CAAC;AAiBhE,SAAS,YAAY,CAAC,KAAyB,EAAE,QAAiB;IAChE,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACxC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC;QACnC,KAAK,GAAG,CAAC;QACT,KAAK,MAAM,CAAC;QACZ,KAAK,KAAK,CAAC;QACX,KAAK,IAAI;YACP,OAAO,IAAI,CAAC;QACd,KAAK,GAAG,CAAC;QACT,KAAK,OAAO,CAAC;QACb,KAAK,IAAI,CAAC;QACV,KAAK,KAAK;YACR,OAAO,KAAK,CAAC;QACf;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED,SAAS,WAAW,CAAC,KAAyB,EAAE,QAAgB;IAC9D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;QACxC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC;IAC7B,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAsB;IAC/C,MAAM,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC;IAC9D,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IAEnC,OAAO;QACL,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,IAAI,CAAC;QAClD,UAAU;QACV,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC;QACzD,UAAU,EAAE,YAAY,CAAC,GAAG,CAAC,qBAAqB,EAAE,IAAI,CAAC;QACzD,SAAS,EAAE,YAAY,CAAC,GAAG,CAAC,oBAAoB,EAAE,IAAI,CAAC;QACvD,aAAa,EAAE,WAAW,CAAC,GAAG,CAAC,yBAAyB,EAAE,UAAU,CAAC;QACrE,aAAa,EAAE,WAAW,CAAC,GAAG,CAAC,yBAAyB,EAAE,UAAU,CAAC;QACrE,gBAAgB,EAAE,WAAW,CAAC,GAAG,CAAC,4BAA4B,EAAE,UAAU,CAAC;QAC3E,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,mBAAmB,EAAE,IAAI,CAAC;QACrD,OAAO,EAAE,YAAY,CAAC,GAAG,CAAC,iBAAiB,EAAE,KAAK,CAAC;QACnD,KAAK,EAAE,YAAY,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC;QAC/C,KAAK;KACN,CAAC;AACJ,CAAC"}
package/dist/install.js CHANGED
@@ -11,7 +11,7 @@ export function renderPosixActivationHelper() {
11
11
  return `#!/bin/sh
12
12
 
13
13
  _bluefairy_home="\${BLUEFAIRY_HOME:-$HOME/.bluefairy}"
14
- _bluefairy_banner='==> bluefairy active: uv/npm protection enabled'
14
+ _bluefairy_banner='==> bluefairy active: uv/npm/bun protection enabled'
15
15
 
16
16
  case ":$PATH:" in
17
17
  *":$_bluefairy_home/shims:"*) ;;
@@ -22,7 +22,7 @@ export PATH
22
22
 
23
23
  if [ "\${BLUEFAIRY_QUIET:-}" != "1" ] && [ -z "\${BLUEFAIRY_ACTIVATION_SHOWN:-}" ]; then
24
24
  if [ -t 1 ] && [ -z "\${NO_COLOR:-}" ]; then
25
- printf '\\033[1;36m==>\\033[0m \\033[1;36mbluefairy active:\\033[0m uv/npm protection \\033[1;32menabled\\033[0m\n'
25
+ printf '\\033[1;36m==>\\033[0m \\033[1;36mbluefairy active:\\033[0m uv/npm/bun protection \\033[1;32menabled\\033[0m\n'
26
26
  else
27
27
  printf '%s\n' "$_bluefairy_banner"
28
28
  fi
@@ -48,7 +48,7 @@ if errorlevel 1 (
48
48
 
49
49
  if not "%BLUEFAIRY_QUIET%"=="1" if not defined BLUEFAIRY_ACTIVATION_SHOWN set "BLUEFAIRY_SHOW_BANNER=1"
50
50
 
51
- endlocal & set "PATH=%BLUEFAIRY_NEW_PATH%" & if "%BLUEFAIRY_SHOW_BANNER%"=="1" (echo ==> bluefairy active: uv/npm protection enabled & set "BLUEFAIRY_ACTIVATION_SHOWN=1")
51
+ endlocal & set "PATH=%BLUEFAIRY_NEW_PATH%" & if "%BLUEFAIRY_SHOW_BANNER%"=="1" (echo ==> bluefairy active: uv/npm/bun protection enabled & set "BLUEFAIRY_ACTIVATION_SHOWN=1")
52
52
  `;
53
53
  }
54
54
  export function renderPowerShellActivationHelper() {
@@ -65,9 +65,9 @@ if (-not ($pathEntries | Where-Object { $_ -eq $shimDir })) {
65
65
 
66
66
  if (-not $env:BLUEFAIRY_QUIET -and -not $env:BLUEFAIRY_ACTIVATION_SHOWN) {
67
67
  if (-not $env:NO_COLOR -and -not [Console]::IsOutputRedirected) {
68
- Write-Output "$([char]27)[1;36m==>$([char]27)[0m $([char]27)[1;36mbluefairy active:$([char]27)[0m uv/npm protection $([char]27)[1;32menabled$([char]27)[0m"
68
+ Write-Output "$([char]27)[1;36m==>$([char]27)[0m $([char]27)[1;36mbluefairy active:$([char]27)[0m uv/npm/bun protection $([char]27)[1;32menabled$([char]27)[0m"
69
69
  } else {
70
- Write-Output "==> bluefairy active: uv/npm protection enabled"
70
+ Write-Output "==> bluefairy active: uv/npm/bun protection enabled"
71
71
  }
72
72
  $env:BLUEFAIRY_ACTIVATION_SHOWN = "1"
73
73
  }
package/dist/runtime.js CHANGED
@@ -5,6 +5,7 @@ import { access } from "node:fs/promises";
5
5
  import { constants } from "node:fs";
6
6
  import { Logger } from "./log.js";
7
7
  import { renderShimDisplay } from "./shim-display.js";
8
+ import { buildBunExecution } from "./wrappers/bun.js";
8
9
  import { buildNpmExecution } from "./wrappers/npm.js";
9
10
  import { buildUvExecution } from "./wrappers/uv.js";
10
11
  export function shouldUseShellForBinary(binary) {
@@ -151,14 +152,23 @@ export async function runShim(tool, toolArgs, config) {
151
152
  capture,
152
153
  logger
153
154
  })
154
- : await buildNpmExecution({
155
- binary: realBinary,
156
- args: toolArgs,
157
- env: strippedEnv,
158
- config,
159
- capture,
160
- logger
161
- });
155
+ : tool === "npm"
156
+ ? await buildNpmExecution({
157
+ binary: realBinary,
158
+ args: toolArgs,
159
+ env: strippedEnv,
160
+ config,
161
+ capture,
162
+ logger
163
+ })
164
+ : await buildBunExecution({
165
+ binary: realBinary,
166
+ args: toolArgs,
167
+ env: strippedEnv,
168
+ config,
169
+ capture,
170
+ logger
171
+ });
162
172
  if (execution.display) {
163
173
  process.stderr.write(renderShimDisplay(execution.display));
164
174
  }
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/dist/shims.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import path from "node:path";
2
2
  import { ensureDir, writeExecutableFile } from "./fs-utils.js";
3
- const TOOLS = ["uv", "npm"];
3
+ const TOOLS = ["uv", "npm", "bun"];
4
4
  function posixShim(tool) {
5
5
  return `#!/bin/sh
6
6
  exec bluefairy internal-shim ${tool} "$@"
package/dist/shims.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"shims.js","sourceRoot":"","sources":["../src/shims.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE/D,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,KAAK,CAAU,CAAC;AAErC,SAAS,SAAS,CAAC,IAA4B;IAC7C,OAAO;+BACsB,IAAI;CAClC,CAAC;AACF,CAAC;AAED,SAAS,OAAO,CAAC,IAA4B;IAC3C,OAAO;+BACsB,IAAI;CAClC,CAAC;AACF,CAAC;AAED,SAAS,OAAO,CAAC,IAA4B;IAC3C,OAAO,6BAA6B,IAAI;CACzC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAmB;IAC1D,MAAM,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,MAAM,mBAAmB,CACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,MAAM,CAAC,EACvC,OAAO,CAAC,IAAI,CAAC,CACd,CAAC;QACF,MAAM,mBAAmB,CACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,MAAM,CAAC,EACvC,OAAO,CAAC,IAAI,CAAC,CACd,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"shims.js","sourceRoot":"","sources":["../src/shims.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAE/D,MAAM,KAAK,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAU,CAAC;AAE5C,SAAS,SAAS,CAAC,IAA4B;IAC7C,OAAO;+BACsB,IAAI;CAClC,CAAC;AACF,CAAC;AAED,SAAS,OAAO,CAAC,IAA4B;IAC3C,OAAO;+BACsB,IAAI;CAClC,CAAC;AACF,CAAC;AAED,SAAS,OAAO,CAAC,IAA4B;IAC3C,OAAO,6BAA6B,IAAI;CACzC,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAmB;IAC1D,MAAM,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE/B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3E,MAAM,mBAAmB,CACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,MAAM,CAAC,EACvC,OAAO,CAAC,IAAI,CAAC,CACd,CAAC;QACF,MAAM,mBAAmB,CACvB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,IAAI,MAAM,CAAC,EACvC,OAAO,CAAC,IAAI,CAAC,CACd,CAAC;IACJ,CAAC;AACH,CAAC"}
@@ -0,0 +1,85 @@
1
+ import { formatDelayLabel } from "../shim-display.js";
2
+ const capabilityCache = new Map();
3
+ function firstNonFlag(args) {
4
+ for (const arg of args) {
5
+ if (!arg.startsWith("-")) {
6
+ return arg;
7
+ }
8
+ }
9
+ return null;
10
+ }
11
+ function shouldApply(args) {
12
+ const command = firstNonFlag(args);
13
+ return command === "install" || command === "add" || command === "update";
14
+ }
15
+ function hasUserFreshnessFlag(args) {
16
+ return args.some((arg) => arg === "--minimum-release-age" ||
17
+ arg.startsWith("--minimum-release-age="));
18
+ }
19
+ function detectCapability(context) {
20
+ const cached = capabilityCache.get(context.binary);
21
+ if (cached) {
22
+ return cached;
23
+ }
24
+ const help = context.capture(context.binary, ["install", "--help"], context.env);
25
+ const combined = `${help.stdout}\n${help.stderr}`;
26
+ const capability = {
27
+ minimumReleaseAge: combined.includes("--minimum-release-age")
28
+ };
29
+ capabilityCache.set(context.binary, capability);
30
+ return capability;
31
+ }
32
+ export async function buildBunExecution(context) {
33
+ if (!context.config.enabled || !context.config.bunEnabled) {
34
+ return { binary: context.binary, args: context.args, env: context.env };
35
+ }
36
+ if (!shouldApply(context.args)) {
37
+ context.logger.debug("bun invocation does not require freshness policy");
38
+ return { binary: context.binary, args: context.args, env: context.env };
39
+ }
40
+ if (hasUserFreshnessFlag(context.args)) {
41
+ context.logger.info("bun invocation already includes a freshness control");
42
+ return {
43
+ binary: context.binary,
44
+ args: context.args,
45
+ env: context.env,
46
+ display: {
47
+ tool: "bun",
48
+ status: "pass_through",
49
+ reason: "explicit freshness flag already provided"
50
+ }
51
+ };
52
+ }
53
+ const capability = detectCapability(context);
54
+ if (!capability.minimumReleaseAge) {
55
+ context.logger.info("bun does not support minimum-release-age; failing open for install");
56
+ return {
57
+ binary: context.binary,
58
+ args: context.args,
59
+ env: context.env,
60
+ display: {
61
+ tool: "bun",
62
+ status: "not_protected",
63
+ reason: "installed bun is too old for minimum-release-age"
64
+ }
65
+ };
66
+ }
67
+ const seconds = String(context.config.bunDelayHours * 60 * 60);
68
+ const nextArgs = [
69
+ ...context.args,
70
+ "--minimum-release-age",
71
+ seconds
72
+ ];
73
+ context.logger.info(`Applied bun minimum-release-age=${seconds}`);
74
+ return {
75
+ binary: context.binary,
76
+ args: nextArgs,
77
+ env: context.env,
78
+ display: {
79
+ tool: "bun",
80
+ status: "protected",
81
+ cooldown: formatDelayLabel(context.config.bunDelayHours)
82
+ }
83
+ };
84
+ }
85
+ //# sourceMappingURL=bun.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bun.js","sourceRoot":"","sources":["../../src/wrappers/bun.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAmBtD,MAAM,eAAe,GAAG,IAAI,GAAG,EAAyB,CAAC;AAEzD,SAAS,YAAY,CAAC,IAAc;IAClC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,GAAG,CAAC;QACb,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,WAAW,CAAC,IAAc;IACjC,MAAM,OAAO,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACnC,OAAO,OAAO,KAAK,SAAS,IAAI,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,QAAQ,CAAC;AAC5E,CAAC;AAED,SAAS,oBAAoB,CAAC,IAAc;IAC1C,OAAO,IAAI,CAAC,IAAI,CACd,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,KAAK,uBAAuB;QAC/B,GAAG,CAAC,UAAU,CAAC,wBAAwB,CAAC,CAC3C,CAAC;AACJ,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA0B;IAClD,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,IAAI,MAAM,EAAE,CAAC;QACX,OAAO,MAAM,CAAC;IAChB,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAC1B,OAAO,CAAC,MAAM,EACd,CAAC,SAAS,EAAE,QAAQ,CAAC,EACrB,OAAO,CAAC,GAAG,CACZ,CAAC;IACF,MAAM,QAAQ,GAAG,GAAG,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,MAAM,EAAE,CAAC;IAClD,MAAM,UAAU,GAAkB;QAChC,iBAAiB,EAAE,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC;KAC9D,CAAC;IAEF,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAChD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,OAA0B;IAE1B,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QAC1D,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1E,CAAC;IAED,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,kDAAkD,CAAC,CAAC;QACzE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;IAC1E,CAAC;IAED,IAAI,oBAAoB,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;QACvC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,qDAAqD,CAAC,CAAC;QAC3E,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,OAAO,EAAE;gBACP,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE,cAAc;gBACtB,MAAM,EAAE,0CAA0C;aACnD;SACF,CAAC;IACJ,CAAC;IAED,MAAM,UAAU,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC7C,IAAI,CAAC,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAClC,OAAO,CAAC,MAAM,CAAC,IAAI,CACjB,oEAAoE,CACrE,CAAC;QACF,OAAO;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,OAAO,EAAE;gBACP,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE,eAAe;gBACvB,MAAM,EAAE,kDAAkD;aAC3D;SACF,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;IAC/D,MAAM,QAAQ,GAAG;QACf,GAAG,OAAO,CAAC,IAAI;QACf,uBAAuB;QACvB,OAAO;KACR,CAAC;IAEF,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC;IAElE,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,QAAQ;QACd,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,OAAO,EAAE;YACP,IAAI,EAAE,KAAK;YACX,MAAM,EAAE,WAAW;YACnB,QAAQ,EAAE,gBAAgB,CAAC,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC;SACzD;KACF,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bluefairy",
3
- "version": "0.0.13",
3
+ "version": "0.0.14",
4
4
  "type": "module",
5
5
  "bin": {
6
6
  "bluefairy": "./dist/cli.js"
@@ -32,6 +32,7 @@
32
32
  "bluefairy",
33
33
  "uv",
34
34
  "npm",
35
+ "bun",
35
36
  "security",
36
37
  "supply-chain"
37
38
  ],