Releases: BinChengZhao/delay-timer
V0.7.1
Version 0.7.1
v0.7.1 New features:
1. Fix the bugs before V0.6.1, When receive a timeout event from the `sweeper`, it is possible that the task has been completed.
So can't just call cancel.
Two options fix it.
1. `sweeper` Remove the recycling unit when the task is finished or cancelled.(Because rust's `BinaryHeap` does not support removing specific elements, this scheme is not used.)
2. The public event is sent only after the internal event has been processed and succeeded. (Adopted.)
2. Adjust api names (runnable -> runnable, maximun -> maximum).
Optimize `sweeper` performance.
v0.6.1 New features:
- Optimize
sweeper
performance and recycle expired tasks more efficiently.
Version 0.6.0
v0.6.0 New features:
1. Grouping errors associated with Task and TaskInstance and implementing the standard Error-Trait.
2. Add `advance_task`-api to support users to manually trigger the execution of tasks..
3. Add `get_*` api to `PublicFinishTaskBody` to support getting task_id or record_id or finish_time.
Release Version 0.5.0.
v0.5.0 New features:
-
Remove all unwrap() calls.
-
Redefined the errors exposed to the outside (encapsulated by thiserror) as libs to never expose
anyhow::Error
to the outside.
2.1. Set separate TaskError
. for Task
-related operations.
2.2. Set separate HandleInstanceError
. for Task-Instance
-related operations.
- Optimized shell command parsing function, set exclusive pipeline for derived subprocesses -stderr.
Release v0.4.0 .
Release v0.4.0 .
v0.4.0 New features:
1. Support dynamic modification of running tasks.
2. Support get handle `TaskInstancesChain` after insert task, and get running task instance `TaskInstance` dynamically.
2.1. The task instance of a running task can be dynamically cancelled.
2.2. There are three types of cancellation: synchronous blocking cancellation, time-out-limited cancellation, and asynchronous cancellation.
2.3. Support reading the running status of running tasks.
3. Support to get the output of internal asynchronous subtask process.
Update dependency :
Replace waitmap -> dashmap .
Update cron_clock .
Update examples:
Add, async-std & tokio use cases.
Add, dynamically cancel running task example case.
Enriched documentation.
Adjust Readme.
Adjust Readme.
Stable to stable-rustc compilation, with repair optimization.
1.Compilable at stable by conditional compilation.
2.Balancing performance and user experience (ajust CandyCronStr inner-type and add free-api for TaskBuilder).
3.Support custom setting of time zone.
4.Fix the clock too fast issue.
5.Use next_second_hand
to solve a schedule problem.
The delay-timer is upgraded to version 0.2.0 .
1.Enriched a large number of documents, more easy to use.
2.tokio-Runtime is supported.
3.Custom syntactic sugar for Cron expressions is supported, and the API is more friendly.
4.Optimize the internal logic, more secure execution.
5.task supports new features, you can set the maximum number of parallelism, and the task can automatically recycle the handle after completion.
6.Support status reporting, you can get the internal time by DelayTImer, and you can use the Cancel running task API now.
7.Generate more powerful macros for asynchronous task Body, more details you can find in the documentation and examples.
Initial Version Release.
Supports basic task creation, scheduling, and removal.