Skip to content

v1.0.0

Latest

Choose a tag to compare

@tommy-mitchell tommy-mitchell released this 01 Oct 21:39

TL;DR: add this command to the end of your build script to make your CLI executable:

// package.json
"scripts": {
	"build": "tsc && execify --pkg"
}

This release massively simplifies execify to only set executable permissions (chmod +x) on specified file paths and (optionally) binaries in package.json.

Results are now logged to the console:

image

Breaking

  • The Node.js target version range is now ^22.22 || ^24.15 || >=26.
  • The --shebang option has been removed.
    Alternatively, execify now warns if a shebang is missing from a file, but does not validate the specific shebang itself:

     $ execify cli.js
     ✔ Execified "cli.js"
     ⚠ File "cli.js" is missing a shebang!
  • Glob handling is no longer supported. File paths must be passed individually in separate inputs to execify:

     $ execify "cli.js" "bin.sh"
     ✔ Execified "cli.js"
     ✔ Execified "bin.js"
    If your shell supports globs, that will still work:

     $ execify bin/*
     ✔ Execified "bin/cli.js"
     ✔ Execified "bin/cli.sh"

Improvements


v0.2.1-0...v1.0.0

  • feat!: simplify to only chmod +x, target Node.js 22/24/26 (#1) 88e4390