facebookincubator / Bowler

Safe code refactoring for modern Python.
https://pybowler.io/
MIT License
1.53k stars 89 forks source link

Doc bugs: what is the syntax for `bowler test`?, obsolete or future-functionality documentation, and a doc info request #136

Open sten0 opened 3 years ago

sten0 commented 3 years ago

Hi,

I'm packaging Bowler for Debian, and while working on the man page I wasn't able to find documentation for bowler test. Is it:

test [path | module] [-- options]

or something else? https://pybowler.io/docs/api-commands is missing this info too.

Other than that, I also found what appears to be either obsolete or yet-to-be-written functionality documented here: https://github.com/facebookincubator/Bowler/blame/master/bowler/README.md#L46

In Debian we have a policy of providing as complete documentation as possible so that a user can put the software on a disk, disappear to a desert island, install it there, and have the all information at hand that is necessary to learn to use the software proficiently without internet access. At this time, the documentation appears to require Github-specific tooling. Do you know where I can find that tooling? If for some reason that tooling is not permissively licensed enough to meet the Debian Free Software Guidelines, or flexible enough, would you be willing to accept a PR demonstrates full and careful conversion to sphinxdoc? I understand this would require changes to the website's config, which is why I'm offering to help out (probably in January). Why sphinxdoc? It's a great format for conversion to HTML, PDF, man, info, and even EPUB, and it has some nice automatic features. I think you'd like the tooling :-)

Here's a practical and to-the-point intro article: https://medium.com/@andreas.007/automate-documentation-in-python-925c38eae69f And some of the available themes: https://sphinx-themes.org

The HTML output is also supports fancy JS features, but by January I'll be limited to the ones that are already in Debian (we're going into a feature freeze then, so no new packages, and all packages and docs must be buildable without internet access).

Thank you for your work on Bowler! Nicholas

sten0 commented 3 years ago

Update: regarding bowler test I found "test codemod" appears to be the syntax, and found https://github.com/facebook/codemod, but I haven't been able to figure out what the connection between the two is. Is bowler test just a convenience interface for codemod? Can codemod be used to extend Bowler Query programs to do codemod operations at the same time?