How is `bench` cli tool built/installed?

Hi, from a couple of days on and off I’ve been trying to figure out how the bench command is built and installed in the users operating system.

What have I read/gone through already?

  • Just to know the basics - I read the documentation/blog about how to publish packages on Pypi (pip) just in hope that there must be something on the bench pypi page.
  • I tried reading the setup.py in bench/commands/setup.py like mentioned in the pypi blog, but moreover that was the file which felt like it is moreover handling stuff around apps.
  • pyproject.toml - I had read this before but again I could not understand what I wanted and while talking with one of the engineers (akhil) and he also mentioned about this.

I am trying to understand this because, bench does not have manpages and because of click majority of the commands after 6-7 words are continued with .... Hence, I am willing to write some custom instructions through which man pages can be made available for the bench command.

it’d be really good to see if bench is well documented like any other unix cli utility.

@gavindsouza anything you could shed light on ?

Appreciating every help/resource/reference, please let me know if I am going wrong anywhere.

Thank You

Check

1 Like

Hi, I think I should’ve mentioned these 2 in my list as well xD.

So regarding the 1st that is pretty helpful but still doesn’t solve the problem of not having man pages.

Regarding the click-man thing, yes I had read and checked it before. I have all the man pages ready, but the part of how to install them in the system while someone is doing pip install frappe-bench is what I’m trying to find. As they need to be installed and also removed from the system if frappe-bench is uninstalled.