periodic task for asyncio
Project description
#
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
P
e
r
i
o
d
i
c
T
a
s
k
l
i
b
r
a
r
y
f
o
r
a
s
y
n
c
i
o
[
!
[
B
u
i
l
d
S
t
a
t
u
s
]
(
h
t
t
p
s
:
/
/
t
r
a
v
i
s
-
c
i
.
o
r
g
/
s
h
i
c
k
y
/
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
.
s
v
g
?
b
r
a
n
c
h
=
m
a
s
t
e
r
)
]
(
h
t
t
p
s
:
/
/
t
r
a
v
i
s
-
c
i
.
o
r
g
/
s
h
i
c
k
y
/
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
)
#
U
s
a
g
e
`
`
`
p
y
t
h
o
n
i
m
p
o
r
t
a
s
y
n
c
i
o
f
r
o
m
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
i
m
p
o
r
t
P
e
r
i
o
d
i
c
T
a
s
k
a
s
y
n
c
d
e
f
p
e
r
i
o
d
i
c
_
t
a
s
k
(
)
:
p
r
i
n
t
(
'
r
u
n
n
i
n
g
.
.
.
'
)
a
s
y
n
c
d
e
f
r
u
n
(
l
o
o
p
)
:
p
=
P
e
r
i
o
d
i
c
T
a
s
k
(
l
o
o
p
=
l
o
o
p
,
i
n
t
e
r
v
a
l
=
1
,
c
a
l
l
b
a
c
k
=
p
e
r
i
o
d
i
c
_
t
a
s
k
)
a
w
a
i
t
p
.
s
t
a
r
t
(
)
a
w
a
i
t
a
s
y
n
c
i
o
.
s
l
e
e
p
(
3
)
a
w
a
i
t
p
.
s
t
o
p
(
)
p
r
i
n
t
(
p
.
n
u
m
_
e
x
e
c
u
t
e
d
)
l
o
o
p
=
a
s
y
n
c
i
o
.
g
e
t
_
e
v
e
n
t
_
l
o
o
p
(
)
l
o
o
p
.
r
u
n
_
u
n
t
i
l
_
c
o
m
p
l
e
t
e
(
r
u
n
(
l
o
o
p
)
)
l
o
o
p
.
c
l
o
s
e
(
)
`
`
`
#
R
e
q
u
i
r
e
m
e
n
t
s
*
P
y
t
h
o
n
_
3
.
4
+
#
L
i
c
e
n
s
e
T
h
e
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
i
s
o
f
f
e
r
e
d
u
n
d
e
r
M
I
T
l
i
c
e
n
s
e
.
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
P
e
r
i
o
d
i
c
T
a
s
k
l
i
b
r
a
r
y
f
o
r
a
s
y
n
c
i
o
[
!
[
B
u
i
l
d
S
t
a
t
u
s
]
(
h
t
t
p
s
:
/
/
t
r
a
v
i
s
-
c
i
.
o
r
g
/
s
h
i
c
k
y
/
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
.
s
v
g
?
b
r
a
n
c
h
=
m
a
s
t
e
r
)
]
(
h
t
t
p
s
:
/
/
t
r
a
v
i
s
-
c
i
.
o
r
g
/
s
h
i
c
k
y
/
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
)
#
U
s
a
g
e
`
`
`
p
y
t
h
o
n
i
m
p
o
r
t
a
s
y
n
c
i
o
f
r
o
m
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
i
m
p
o
r
t
P
e
r
i
o
d
i
c
T
a
s
k
a
s
y
n
c
d
e
f
p
e
r
i
o
d
i
c
_
t
a
s
k
(
)
:
p
r
i
n
t
(
'
r
u
n
n
i
n
g
.
.
.
'
)
a
s
y
n
c
d
e
f
r
u
n
(
l
o
o
p
)
:
p
=
P
e
r
i
o
d
i
c
T
a
s
k
(
l
o
o
p
=
l
o
o
p
,
i
n
t
e
r
v
a
l
=
1
,
c
a
l
l
b
a
c
k
=
p
e
r
i
o
d
i
c
_
t
a
s
k
)
a
w
a
i
t
p
.
s
t
a
r
t
(
)
a
w
a
i
t
a
s
y
n
c
i
o
.
s
l
e
e
p
(
3
)
a
w
a
i
t
p
.
s
t
o
p
(
)
p
r
i
n
t
(
p
.
n
u
m
_
e
x
e
c
u
t
e
d
)
l
o
o
p
=
a
s
y
n
c
i
o
.
g
e
t
_
e
v
e
n
t
_
l
o
o
p
(
)
l
o
o
p
.
r
u
n
_
u
n
t
i
l
_
c
o
m
p
l
e
t
e
(
r
u
n
(
l
o
o
p
)
)
l
o
o
p
.
c
l
o
s
e
(
)
`
`
`
#
R
e
q
u
i
r
e
m
e
n
t
s
*
P
y
t
h
o
n
_
3
.
4
+
#
L
i
c
e
n
s
e
T
h
e
a
i
o
_
p
e
r
i
o
d
i
c
_
t
a
s
k
i
s
o
f
f
e
r
e
d
u
n
d
e
r
M
I
T
l
i
c
e
n
s
e
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.