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 checks
Updated 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).