- Breaking: Default engine changed from
threading.Thread
tomp.Process
[a3dc1af]
- Correct annotations and docstrings [7a2470a]
- rename from
ezpq
toppqueue
- replaced
queue.get
withqueue.dequeue
/queue.pop
queue.put
is an alias forqueue.enqueue
- renamed
queue.empty
toqueue.is_empty
- renamed
queue.full
toqueue.is_full
- renamed
queue.count_queues
toqueue.sizes
- replaced
ezpq.FinishedJob
withezpq.Job
job.output
is nowjob.result
job.callback
is nowjob.callback_result
- wrapped
Plot(...).build(...)
into justplot_jobs(...)
- use of enums to constrain plot parameter choices
- bump dependencies
clear_waiting()
function to clear the waiting queue.- Added
stop_on_lane_error
parameter toezpq.Job
to allow for short-circuiting a synchronous lane if a job in the lane fails. When set toTrue
and the preceding job has a non-zero exit code, this job will not be run. Note that this is to be set per-job for flexibility. - Additional unit tests.
stop_all()
function now clears the waiting queue and terminate running jobs. This addresses a bug where a queue would fail to close when disposing with jobs still in the waiting queue.- The default
poll
for the queue itself is still0.1
. Now, the defaultpoll
forget
andwait
is equal to thepoll
for the queue itself, as it makes no sense to check for changes more freqeuntly than changes could arise.
- Removed functions
has_waiting
,has_work
, andhas_completed
. Usesize(...)
for this. - Renamed
Queue.is_started
toQueue.is_running
.
- Added
map()
function toezpq.Queue
. - Integration with tqdm package for progress bars.
- Added
lane
property toezpq.Job
. When set, jobs in the same lane are processing sequentially. - Added
exception
property toezpq.Job
. Stores the exception of a failed job. - Added
suppress_errors
parameter toezpq.Job
. - Added
facet_by
,theme
, andcolor_pal
parameters toezpq.Plot.build()
. - Added
qid
(queue id) to job data output. This can be used to facet anezpq.Plot
. - Unit tests.
- Removed parameter
n
from thewait()
function ofezpq.Queue
;wait()
will halt execution until all jobs in the queue are processed. - Moved
ezpq.Plot()
plotting parameters toezpq.Plot.build()
. - Reordered
ezpq.Queue()
init parameters.
- Initial release