| # Rapid local development environment | |
| Use these scripts to install a development environment and rapidly | |
| iterate on the code: | |
| ```bash | |
| # Install a development environment. | |
| $FUCHSIA_DIR/src/developer/fuchsia-controller/scripts/install.sh | |
| # Format all code for Fuchsia Controller. Run this before uploading a CL! | |
| $FUCHSIA_DIR/src/developer/fuchsia-controller/scripts/format.sh | |
| # Run all tests and generate coverage. It is much faster than going through | |
| # the whole build process, and you can output HTML using the --html-dir | |
| # parameter. | |
| $FUCHSIA_DIR/src/developer/fuchsia-controller/scripts/coverage.sh --html-dir ~/fuchsia-controller-coverage | |
| # Clean up by running uninstall. | |
| $FUCHSIA_DIR/src/developer/fuchsia-controller/scripts/uninstall.sh | |
| ``` | |
| ## Updating local dependencies | |
| Warning: Do not update `requirements.txt` manually! | |
| For security reasons, we pin all hashes of modules installed with | |
| pip. If any versions of dependencies are changed in either | |
| `base-tooling-requirements.txt` or `pyproject.toml`, rerun the | |
| following: | |
| ```bash | |
| $FUCHSIA_DIR/src/developer/fuchsia-controller/scripts/update_deps.sh | |
| ``` | |
| This will create a new venv and recompile the `requirements.txt` | |
| file with associated hashes. You can then upload a CL containing | |
| the updated requirements. |