antmicro / tuttest

A simple Python utility for extracting documentation snippets from tutorials.
Apache License 2.0
13 stars 2 forks source link

Use python-fire for command-line parsing #20

Open kamilrakoczy opened 3 years ago

kamilrakoczy commented 3 years ago

Change usage of argparse to python-fire.

Fixes #19

Signed-off-by: Kamil Rakoczy krakoczy@antmicro.com

mgielda commented 3 years ago

Thanks. It's good to see this implemented in practice. The code did not get shorter :)

Here it seems like argparse is actually a fairly good choice. I added typing info which the latest fire can consume and output in the help. But I ran into one serious issue with fire: namely, it will run the function and only then parse the remaining arguments. That is definitely not something I'd expect as a behavior of a CLI parsing library.

See: https://github.com/google/python-fire/issues/168

To include the typing info in the help output we could use fire's master branch (release 0.3.1 does not yet have this feature) but until the command line argument parsing problem is not solved, I think actually argparse serves us better, so I will hold off merging this (even if I asked for it myself!)