simpletasks 0.1.2

Creator: bradpython12

Last updated:

Add to Cart

Description:

simpletasks 0.1.2

simpletasks
Simple tasks runner for Python.
This can be helpful to handle automated processes and make them available via command line interface via click.
Usage
Sample:
import click
from simpletasks import Cli, CliParams, Task

@click.group()
def cli():
pass

@Cli(cli, params=[click.argument("n", type=int), CliParams.progress()])
class FibonacciTask(Task):
def compute(self, n: int) -> int:
self.logger.debug(f"Called with n={n}")
f1, f2 = 0, 1
if n == 0:
return f1
if n == 1:
return f2
for _ in self.progress(range(1, n)):
f1, f2 = f2, f1 + f2
return f2

def do(self) -> None:
n = cast(int, self.options.get("n"))
result = self.compute(n)
print(f"f({n}) = {result}")

if __name__ == "__main__":
cli()

Gives:
$ python sample/compute.py fibonacci 3 --no-progress
f(3) = 2

Contributing
To initialize the environment:
poetry install --no-root
poetry install -E click -E tqdm

To run tests (including linting and code formatting checks), please run:
poetry run pytest --mypy --flake8 && poetry run black --check .

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.