The developer guide now refers to black, isort, and pre-commit but those packages are not easily available to people using a read-only conda environment because they are not part of rubin-env. This RFC proposes a new rubin-env-dev package that includes developer tools that will not be needed at pipelines run time. This should include:
- mypy (plus types extension packages)
- build (to be able to test pypi distribution building locally)
Since these are used by middleware. We should also consider add on packages that are used by the shared stack and decide on extras vs dev.
Additionally a --dev option should be added to lsstinstall and lsstsw deploy to install these packages rather than the default rubin-env. The shared stack should be built with this option and if we are using CernVMFS weeklies for development at USDF we should ask for that stack to be using the option as well.