Miksus / rocketry

Modern scheduling library for Python
https://rocketry.readthedocs.io
MIT License
3.26k stars 105 forks source link

ENH: Add async tasks #60

Closed Miksus closed 2 years ago

Miksus commented 2 years ago

This PR adds async support (#28) for the main scheduler but also adds support for parallelizing tasks as async.

For example:

@app.task(execution="async")
async def 

Some notes:

codecov-commenter commented 2 years ago

Codecov Report

Merging #60 (617de60) into master (49bbf4e) will increase coverage by 0.15%. The diff coverage is 95.50%.

@@            Coverage Diff             @@
##           master      #60      +/-   ##
==========================================
+ Coverage   90.41%   90.56%   +0.15%     
==========================================
  Files          86       86              
  Lines        3892     3934      +42     
==========================================
+ Hits         3519     3563      +44     
+ Misses        373      371       -2     
Impacted Files Coverage Δ
rocketry/core/schedule.py 89.96% <91.48%> (+0.14%) :arrow_up:
rocketry/application.py 82.08% <100.00%> (+1.13%) :arrow_up:
rocketry/core/task.py 92.10% <100.00%> (+0.48%) :arrow_up:
rocketry/session.py 91.20% <100.00%> (+0.91%) :arrow_up:
rocketry/tasks/func.py 93.83% <100.00%> (+0.12%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 49bbf4e...617de60. Read the comment docs.

gaby commented 2 years ago

Looking forward to this feature!

Miksus commented 2 years ago

This PR also fixes numeric timeout,