Runs the decorated function in a new task

def new_task(func):
    """
    Runs the decorated function in a new task
    """

    @wraps(func)
    async def wrapper(self, *args, **kwargs):
        loop = get_event_loop()
        loop.create_task(func(self, *args, **kwargs))
    return wrapper