Description
Related to #5167.
The largest part of our contribution guidelines explain contributors how to work on torchvision
. Due to sheer amount of techniques and tools that can be quite overwhelming for a new contributor.
I'm going to use $TOOL
as a placeholder for what I imagine:
$TOOL install
: Installstorch
from nightlies and buildstorchvision
in the current environment$TOOL format
: Runs autoformatters$TOOL lint
: Runs linters$TOOL test
: Runs tests$TOOL docs
: Builds documentation
There are a couple of tools out there that do this. Of the top of my head we could use pydoit
, tox
, or simply make
. AFAIK, all of them allow parametrization of the top-level commands so we can provide sensible default while not losing flexibility. For example, $TOOL test
will run all tests by default, but dispatches additional arguments directly to pytest
.
I can do more in depth research about the tools and which would be the best fit for us if we see this proposal as net-benefit in general.