NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #28 most downloaded on npm
Like which(1) unix command. Find the first instance of an executable in the PATH.
Last release 4 months ago
08 May 2026
Release timing varies
gaps range from 2 months to 3.0 years
Nearly every release is documented
notes for 36 of 37 stable releases
Nothing withdrawn
no release was ever pulled
15 years old
37 releases · first in 2011
which now supports node ^22.22.2 || ^24.15.0 || >=26.0.0
which now supports node ^22.22.2 || ^24.15.0 || >=26.0.0471d90b #176 bump to new node engine range (@owlstronaut)8aac36f #176 template-oss-apply (@owlstronaut)9bdf003 #176 template-oss-apply (@owlstronaut)One column per quarter.
bd22353 #168 bump isexe from 3.1.5 to 4.0.0 ( #168 ) ( @dependabot [bot])
bd22353 #168 bump isexe from 3.1.5 to 4.0.0 (#168) (@dependabot[bot])fc4c209 #163 bump @npmcli/eslint-config from 5.1.0 to 6.0.0 (#163) (@dependabot[bot])46b25d7 #165 bump @npmcli/template-oss from 4.28.0 to 4.28.1 (#165) (@dependabot[bot], @npm-cli-bot)align to npm 11 node engine range
cf1a1bc #161 align to npm 11 node engine range (#161) (@owlstronaut)66cf669 #160 bump @npmcli/template-oss from 4.26.0 to 4.27.1 (#160) (@dependabot[bot], @npm-cli-bot)which now supports node ^18.17.0 || >=20.5.0
which now supports node ^18.17.0 || >=20.5.05d49ed0 #151 run template-oss-apply (@reggi)8a2d8e0 #149 bump @npmcli/eslint-config from 4.0.5 to 5.0.0 (@dependabot[bot])d4009b2 #138 bump @npmcli/template-oss to 4.22.0 (@lukekarrys)1a07cd7 #150 postinstall for dependabot template-oss PR (@hashtagchris)45f3aa8 #150 bump @npmcli/template-oss from 4.23.1 to 4.23.3 (@dependabot[bot])support for node 14 has been removed
c3a543e #100 check lower case extensions in windows ( #100 ) ( @wraithgar )
c3a543e #100 check lower case extensions in windows (#100) (@wraithgar)ba58b51 #97 Replace binary which with node-which in README.md (#97) (@DevDengChao)refactored with the following breaking changes
Promise onlywhich is now compatible with the following semver range for node:--8b0187c add @npmcli/template-oss and modernize (#86) (@lukekarrys)* Rename bin to node-which
node-whichgenerate changelog and publish on version bump
Parallel tests, modern JavaScript, and drop support for node < 8
* update deps * update travis
Add nothrow option to which.sync
travis-ci: add node 6, drop 0.x
test: Pass missing option to pass on windows
* Removed unused require
Prevent changelog script from being included in package
Use env.PATH only, not env.Path
fix for paths starting with ../
is-absolute modulebullet items in changelog that contain (but don't start with) #
strip 'update changelog' changelog entries out of changelog
* make the changelog bulleted
make a changelog, and keep it up to date
* Fix typo
Sometimes windows PATH entries are quoted
Add support for opt.all and -as cli flags
Refactored and fixed undefined error on Windows
test +g exes against secondary groups, if available
Add tests, depend on is-absolute
which.js: root is allowed to execute files owned by anyone
* don't use graceful-fs
* add license to package.json
* isc license
* Awful typo
Make which.sync() work on Windows by honoring the PATHEXT variable.
which.sync() work on Windows by honoring the PATHEXT variable.isExe() always return true on Windows.* Only files can be exes
Respect the PATHEXT env for win32 support
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →