* Fix ENOENT error on first start when no user dir
Write backup using `copySync` and move it below the `fsync` to ensure file is present when backup is made.
* Check for path to exist before attempting backup
* bind to correct port when doing broadcast/multicast
to allow better re-use of ports.
* allow udp multicast to work out if ip address
makes life easier for mortals
* udp also handle bind to ipv6 multicast if
tidy prompts to suit new function
* udp node, add face to debug log for multicast if known
* change default server bind to support ipv6 and ipv4
to close#1674
* Add comment re ipv6 so folk know it's capable
* slightly more words re ipv6 config
* Leave defaults as ipv4 but add doc to settings
* add Node.js v10 to build matrix
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
* only compute coverage once
We have to pick *which* version of Node.js to run coverage on, so I just
picked the latest.
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
* fix many test problems
- adds [stoppable](https://npm.im/stoppable) to force-stop net & http
servers
- upgrades to latest mocha
- much cleanup of servers
- some removal of useless code
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
* increase wait time to hack at race condition
* PoC with fork of stoppable
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
* fix custom stoppable url for newer npm
* make travis go faster; attempt to avoid npm troubles
* fix coveralls executable path
* add extra time for flake to trigger spec
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>
- queues messages on a per-client basis while waiting for TCP server
connection
- add `denque` package for performance (`shift()` happens in constant
instead of `Array`'s linear time)
- add tests
- remove a duplicate test in `31-tcp_request.spec.js`
- cap queue at value specified in settings (`tcpMsgQueueSize`); default
to 1000
- add `tcpMsgQueueSize` to `settings.js`
Signed-off-by: Christopher Hiller <boneskull@boneskull.com>