- Removed async capabilities from `Stream`. - New class `AsyncStream`, providing the async capabilities of the previous `Stream`. This new class is not available in `mpservice.streamer`; it's only in `mpservice._streamer` because I'm still not sure whether async streaming is useful.
0.16.0
- `IterableQueue.put` gets keyword arg `timeout`. - `IterableQueue.get` becomes `_get`. - New functions `mpservice.streamer.{fifo_stream, async_fifo_stream}`. - Simplified implementations of classes `mpservice._streamer.*Parmapper*` and methods `mpservice.mpserver.{Server, AsyncServer}.stream` using these functions. - `mpservice.streamer.Stream.parmapper` parameter `num_workers` was renamed `concurrency` because the meaning of the latter is more correct in async contexts. - `mpservice.mpserver.Server.stream` and `mpservice.mpserver.AsyncServer.stream` lost parameter `to_stop`.
0.15.9
- Bug fix in `IterableQueue` when using a multiprocessing SimpleQueue. - Refinements and enhancements to `IterableQueue`. - `mpservice.mpserver.{Server, AsyncServer}.stream` gets a new parameter `preprocess`. - New classes `ProcessRunner` and `ProcessRunnee` in `mpservice._streamer`.
0.15.8
- Added new class `mpservice.streamer.IterableQueue`. - The directory structure under `mpservice.multiprocessing` better mirrors that of the standard lib. - `Parmapper` and `Server.stream` get new parameter `to_stop` to allow the stream to be stopped by external forces.
0.15.7
- Finetune `mpservice.multiprocessing.SpawnProcess` regarding termination, background threads, and error handling. - `mpservice.multiprocessing.Queue` gets property `maxsize`, making it aligned with `queue.Queue`, which has attribute `maxsize`.
0.15.6
- Finetune `mpservice.multiprocessing.server_process`: - support pickling of `ServerProcess` objects. - buf fix regarding custom authkey to `ServerProcess`