batch-cluster
Advanced tools
Changelog
v10.3.0
✨ Exported Rate
. You might like it.
✨ When child processes emit to stdout
or stderr
with no current task,
prior versions would emit an internalError
. These are now given their own
new noTaskData
events. Consumers may want to bump up streamFlushMillis
if
they see this in production.
🐞/📦 Increased defaults for streamFlushMillis
, added tests to verify noTaskData
events don't happen in CI.
📦 Normalized node imports
Changelog
v10.2.0
✨/📦 Set minDelayBetweenSpawnMillis = 0
to fork child processes as soon as
they are needed (rather than waiting between spawn
calls)
✨/📦 Set maxReasonableProcessFailuresPerMinute = 0
to disable process start
error rate detection.
✨/📦 New fatalError
event emitted when
maxReasonableProcessFailuresPerMinute
is exceeded and the instance shuts
itself down.
📦 New simpler Rate
implementation with better time decay handling
📦 Several jsdoc improvements, including exporting WhyNotHeathy
and
WhyNotReady
Changelog
v10.1.1
🐞 Fixed issue
#15 by
restoring the call to #onIdleLater
when tasks settle.
🐞 Fixed issue with setMaxProcs
which resulted in all idle processes being
reaped
📦 The idle
event was removed. You weren't using it, though, so I'm not
bumping major.
📦 Process shutdown is handled more gracefully with new thenOrTimeout
(rather than the prior Promise.race
call which resulted in a dangling
timeout)
📦 Updated development dependencies and rebuilt docs
Changelog
v10.0.0
✨ Process state improvements
💔 Renamed event s/childExit/childEnd/
💔 childEnd
and childStart
events receive BatchProcess instances now
💔 Renamed healthy state s/dead/ended/
📦 Made BatchProcess.whyNotHealthy persistent
📦 Added several more WhyNotHealthy values
📦 Perf: filterInPlace and count use for loops rather than closures
📦 Added spec to verify .end
rejects long-running pending tasks
📦 Updated development dependencies and rebuilt docs
Changelog
v9.1.0
🐞/📦 BatchProcess
exposes a promise for the completion of the startup task,
which BatchCluster
now uses to immediately run #onIdle
and pop off any
pending work.
📦 Updated development dependencies and rebuild docs
Changelog
v9.0.0
💔 The BatchProcessObserver
signature was deleted, as BatchClusterEmitter
is
now typesafe. Consumers should not have used this signature directly, but in
case anyone did, I bumped the major version.
✨ Added BatchCluster.off
to unregister event listeners provided to BatchCluster.on
.
📦 Private fields and methods now use the #
private
prefix
rather than the TypeScript private
modifier.
📦 Minor tweaks (fixed several jsdoc errors, simplified some boolean logic, small reduction in promise chains, ...)
📦 Updated development dependencies and rebuild docs