|
|
|
|
|
by yeti-sh
961 days ago
|
|
I've never used waf, but from its documentation it would seem that waf is a build system, implementing a concept of a DAG governing build of a project. That implies that waf is rather complicated. jeeves, on the other hand, does no such thing. It is a command runner: you write a function → it is converted into a shell command. I believe jeeves is easier to get started with, partially due to its simplicity and partially because it follows Python standards. For instance, waf uses a peculiar syntax to define command parameters: waf employs a peculiar method to configure command options: ctx.add_option('--foo', action='store', default=False, help='Silly test')
while jeeves relies upon function arguments and type hints (as it is based upon Typer): def do(foo: Annotated[Option(help='Silly test')]):
…
While jeeves is easy to start with it also promises ability to scale: with modular packages for commands, subcommands, and installable/shareable plugins. |
|