v1.0.0
This is the first stable release of Tinypool. Below are listed the major changes done after forking the project from piscinajs/piscina.
🚀 Features
- Add
isolateWorkers
support - by @antfu in #4 (0adf6) - Physical cores - by @Aslemammad (85887)
- WorkerId - by @Aslemammad in #30 (ed534)
- Allow fractions to define thread limits. eg minThreads: 0.5 uses 50% of available cores - by @dominikg (64c0f)
- Add
terminateTimeout
option - by @AriPerkkio in #50 (95d14) pool.cancelPendingTasks
method - by @AriPerkkio in #53 (65c9b)- Add
maxMemoryLimitBeforeRecycle
options - by @AriPerkkio in #58 (28ba1) pool.recycleWorkers()
method - by @AriPerkkio in #63 (9150d)- Support
runtime
option - by @AriPerkkio in #65 (f1c63) - Migrate to
EventEmitterAsyncResource
- by @userquin and @AriPerkkio in #91 (4bd43)
🐞 Bug Fixes
- IsolateWorkers with queue - by @antfu (e22bb)
- Use
.default
of worker module if it exists - by @aleclarson in #21 (113b6) - EnsureMinimumWorkers in isolateWorkers - by @Aslemammad (60148)
- Optimize the algorithm for cpu count calculation in the linux plaform - by @beita1 in #34 (1ed09)
- Delete useless plafrom condition - by @beita1 in #35 (2bcae)
- Use physical cpu count for tests - by @Aslemammad (5944e)
- Destroy issue and use maximum workers #44 - by @Aslemammad in #44 (03fbf)
- Ensure that
minThreads
is respected when usingisolateWorkers
- by @danez in #60 (977df) - Dont mark recycled workers as available - by @AriPerkkio in #61 (f3b4a)
- Fix outdated links to github - by @Dimava in #68 (56f82)
recycleWorkers
to destroy idle workers when runtime changes - by @AriPerkkio in #75 (e79c6)- Pass argv to
child_process
- by @sirenkovladd in #79 (ac2e8) - Use internal workerId for child_process runtime - by @alisd23 in #81 (0eb5e)
- Prevent hang when
process
is overwritten - by @AriPerkkio in #83 (18c86) pool.destroy
to clean up async resources - by @AriPerkkio in #86 (99480)- Prevent new workers from writing to closed pool - by @AriPerkkio in #95 (0e870)
- child_process:
- Kill process with
SIGKILL
if stuck - by @AriPerkkio in #69 (6f6e3) - Prevent writing to terminating process - by @AriPerkkio in #85 (b0030)
- Kill process with
- isolate:
- types: