NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3081 most downloaded on npm
wait-on is a cross platform command line utility and Node.js API which will wait for files, ports, sockets, and http(s) resources to become available
Last release 4 days ago
30 Sep 2026
Ships fairly regularly
a new release about every 2 months
Most releases are documented
notes for 44 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
11 years old
75 releases · first in 2015
refactor!: replace axios with native fetch and undici (Node >=22.19)
=20.0.0). HTTP checks use Node's native fetch with an undici dispatcher
instead of axios, so axios-specific behavior no longer applies.
Co-authored-by: Arthur Zamarin arthurzam@gentoo.org
Co-authored-by: rogervila rogervila@me.com
One column per quarter.
deps: upgrade dependencies to address vulnerabilities
cli: add --status-codes flag to accept non-2XX http statuses ( 46efb67 ), closes #187 #49
types: restore @types/wait-on compatibility (callback err?: Error, aliases) ( 348126a ), closes jeffbski/wait-on#250 jeffbski/wait-on#250
command: serialize execs and add per-attempt commandTimeout ( 4af2299 ), closes #88
accept a string or string array as waitOn opts ( 7f7358e ), closes #61 #61
deps: bump transitive @humanfs/node and js-yaml in lockfile
Updated some dependencies axios joi mocha eslint-plugin-chai-friendly
Updated some dependencies
Cleaned up unnecessary files from npm published package, added code coverage
Cleaned up unnecessary files from npm published package, added code coverage
Removed:
Increased code coverage
Thanks @aarongoldenthal
Nothing published for this version
Nothing published for this version
Nothing published for this version
Update minor deps for security vulnerabilities
Update minor deps for security vulnerabilities
Update minor dependencies and npm audit fixes
Update minor dependencies and npm audit fixes
Updated patch dependencies including axios and lodash
Updated patch dependencies including axios and lodash
Update to jsdoc. Thanks @westonruter
Update to jsdoc. Thanks @westonruter
Minor dependencies updated: eslint, mocha, axios
Replaced unmaintained expect-legacy package with chai. Thanks @bdkopen
Replaced unmaintained expect-legacy package with chai. Thanks @bdkopen
Update minor deps: - axios - eslint
Update minor deps:
There are no other breaking changes other than changing the versions of Node.js that are supported.
Updating major version to align with removal of unspported versions of Node.js
wait-on will continue to support the active and maintained releases listed at https://nodejs.org/en/about/previous-releases which currently is 20, 22, 24.
There are no other breaking changes other than changing the versions of Node.js that are supported.
Update minor deps including axios@1.12.1 and joi@18
Update minor deps including axios@1.12.1 and joi@18
Update dependencies including axios@1.11.0 which also updated form-data@4.0.4
Update dependencies including axios@1.11.0 which also updated form-data@4.0.4
axios@1.8.2 fixes CVE-2024-39338
Dependency updates: - axios@1.7.9 - eslint-plugin-import@2.31.0 - cross-spawn - npm audit fix
Dependency updates:
Nothing published for this version
Updated for security vulnerabilities with axios@1.7.4 and braces.
Updated for security vulnerabilities with axios@1.7.4 and braces.
As part of the axios update, the syntax for using a socket with an http URL in axios has changed so you must specify the protocol and server
For example:
http://unix:SOCKETPATH:http://server/foo/bar
instead of just using only the path (no protocol and no server)
http://unix:SOCKETPATH:/foo/bar
Due to this change, I have updated my tests, docs, bumped the major version.
Update axios from 0.27.2 to latest 1.6.1 which fixes security vulnerability CVE-2023-45857.
Update axios from 0.27.2 to latest 1.6.1 which fixes security vulnerability CVE-2023-45857.
Thanks @AndrewMax for the PR #147 and also for those that confirmed it.
Add ability to specify timeout, httpTimeout, and tcpTimeout with a unit (ms, m, s, h), defaults to ms if not specified. Thanks @ntkoopman
Update dependencies.
Add ability to specify timeout, httpTimeout, and tcpTimeout with a unit (ms, m, s, h), defaults to ms if not specified. Thanks @ntkoopman
Removed unnecessary eslint-plugin-standard. It was no longer needed since already included in another package.
Removed unnecessary eslint-plugin-standard. It was no longer needed since already included in another package.
The update to latest mocha removed support for Node.js below 12.
Updated dependencies:
The update to latest mocha removed support for Node.js below 12.
Updated minor dependencies to fix vulnerabilities
Updated minor dependencies to fix vulnerabilities
Other than dropping support for Node.js v8 there should be no other breaking changes.
Other than dropping support for Node.js v8 there should be no other breaking changes.
Node.js v8 was no longer supported by the yargs parser. Node.js v8 users should use v5.3.0
Allow resources to be passed in via config file. Thanks @michaelmerrill for the PR.
Allow resources to be passed in via config file. Thanks @michaelmerrill for the PR.
Example config.js file with resources
module.exports = {
resources: ['http://localhost:8123', 'http://localhost:8123/foo'],
};
Updated lodash dependency to close vulnerability
Updated lodash@4.17.21
Updated lodash dependency to close vulnerability
Nothing published for this version
update from the deprecated @hapi/joi to joi (thanks @AleF83)
@hapi/joi to joi (thanks @AleF83)Add proxy option which can override the http(s) proxy which might be configured in environment variables.
Add proxy option which can override the http(s) proxy which might be configured in environment variables.
// example proxy object
{
host: '127.0.0.1',
port: 9000,
auth: {
username: 'mikeymike',
password: 'rapunz3l'
}
}
Nothing published for this version
Nothing published for this version
Nothing published for this version
lodash@4.17.18 update which resolved some potential lodash vulnerabilities
lodash@4.17.18 update which resolved some potential lodash vulnerabilities
If jest/jsdom is used then a polyfill for xhr is created which will cause axios to default the adapter to it. Since jsdom logs all errors use of wait-
If jest/jsdom is used then a polyfill for xhr is created which will cause axios to default the adapter to it. Since jsdom logs all errors use of wait-on will have any failed attempts to connect logged which is rather noisy and misleading.
By forcing axios to use the node.js http adapter instead this problem is bypassed keeping logs clean.
These breaking changes occurred in the switch:
Since the request package is no longer receiving updates, wait-on switched to using axios. Attempt to keep the same wait-on options as much as possible.
These breaking changes occurred in the switch:
followRedirect: true|false (defaults to true).httpSignature is not implemented in axios and now not available. (If this feature is still desired, please help by providing a pull request to implement it.)auth allows only username and password but not the previous aliases user and passIf validateStatus property is provided in the
config and set to a function, it will use this to
validate whether a status is valid.
The default validateStatus if not provided is
validateStatus: function (status) {
return status >= 200 && status < 300;
}
To also allow a 401 unauthorized as a valid status
validateStatus: function (status) {
return status === 401 || (status >= 200 && status < 300);
}
These breaking changes occurred in the switch:
Since the request package is no longer receiving updates, wait-on switched to using axios. Attempt to keep the same wait-on options as much as possible.
These breaking changes occurred in the switch:
followRedirect: true|false (defaults to true).httpSignature is not implemented in axios and now not available. (If this feature is still desired, please help by providing a pull request to implement it.)auth allows only username and password but not the previous aliases user and passUpdated dependencies which closed security vulnerability in minimist and acorn.
Updated dependencies which closed security vulnerability in minimist and acorn.
Nothing published for this version
Rewrite of the main code to simplify the logic and reduce possibility for race conditions. Bumped the major version do to the rewrite and also a minor
Rewrite of the main code to simplify the logic and reduce possibility for race conditions. Bumped the major version do to the rewrite and also a minor change in how the stability window is used. In the new version the stability window only applies to file resources (waiting for them to exist and stop changing), for other resources they are completed as soon as available.
Also in the new logic, once a resource becomes available the system doesn't continue to check it, it only continues checking the pending resources.
Logging was improved and simplified.
-l / --log just indicate what resources are still pending-v / --verbose includes resources that are pending and debug info from checksUpdated many dependencies including rxjs, and joi. Removed core-js polyfill as no longer needed.
Added a -s / --simultaneous optional flag to the command. If provided it will limit the number of simultaneous or concurrent connections to an individual resource. It defaults to Infinity so it will make requests without caring about previous ones. If you were to set it to "1" then it wouldn't be sending new requests to http://foo before the previous one finished (success, failure, or timeout).
Nothing published for this version
Nothing published for this version
Maximum time in ms to wait for an HTTP HEAD/GET request, default 0 which results in using the OS default ```
--httpTimeout
Maximum time in ms to wait for an HTTP HEAD/GET request, default 0
which results in using the OS default
Upgraded dependencies: #38, thanks @matijagaspar
Require Node Version +8.9.0: #33
Thanks to @valscion for summarizing the release notes. Also thanks to @perry-mitchell for mentioning that this should have been a major release bump due to dropping support for Node 6. Node 6 users should use v3.2.0. In the future, I will bump major version when Node version support changes.
Nothing published for this version
Maximum time in ms for tcp connect, default 300ms ```
Added --tcpTimeout option
--tcpTimeout
Maximum time in ms for tcp connect, default 300ms
thanks @Sarithis
Now supports promises thanks to @gyszalai
Now supports promises thanks to @gyszalai
Pushed to update the Readme that is displayed for npmjs.com to mention Node.js v6+ requirement for wait-on@3. Refers node.js v4 users to wait-on@2.1.2
Pushed to update the Readme that is displayed for npmjs.com to mention Node.js v6+ requirement for wait-on@3. Refers node.js v4 users to wait-on@2.1.2 and older engines to wait-on@1.5.4.
Update packages which results in drop of support for Node 4.
Update packages which results in drop of support for Node 4.
V3+ requires node 6+
Updated:
wait-on@2.1.2 is last version to support Node.js v4.
wait-on@2.1.2 is last version to support Node.js v4.
Reverted recent updates which dropped support for Node v4.
updated travis CI to test with Node.js v4, 6, 8, 10, and latest
Moving these previous breaking updates to major release v3.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Minor readme update. Basically the same as v2.0.0
Minor readme update. Basically the same as v2.0.0
Updated joi dependency which requires Node.js v4+, so starting with this release wait-on requires Node.js v4 or greater.
Updated joi dependency which requires Node.js v4+, so starting with this release wait-on requires Node.js v4 or greater.
Your coding agent can read these notes before it upgrades. Set up the MCP server →