Skip to content
Closed
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
40 changes: 12 additions & 28 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -57,39 +57,23 @@ If you just want to receive feedback for a contribution proposal, open an “RFC
## Contribution Quality Standards

Most quality and style standards are enforced automatically during integration
testing. For ease of use you can setup a git pre-commit hook by running the
following in the Firecracker root directory:
testing. To run these quality and style checks, use `devtool`.

```
cargo install rusty-hook
rusty-hook init
```

This project also has linters for Python and Markdown. These will be called by
the pre-commit when you modify any Python and Markdown files. In order to make
sure you are setup we recommend you install
[poetry](https://python-poetry.org/docs/) and
[pyenv](https://github.com/pyenv/pyenv?tab=readme-ov-file#installation).

Poetry is used by this project and pyenv will help you make sure you have a
Python version compatible with the poetry python project we use as part of
`./tools/devctr`.

Once you have these two installed you can run the following to install the dev
container poetry project:
```bash
# Format code (Rust, Python, Markdown)
./tools/devtool fmt

# Check code style and lint warnings
./tools/devtool checkstyle
```
poetry -C ./tools/devctr install --no-root
```

Then, you can activate the poetry virtual environment by running:

```
poetry shell -C ./tools/devctr
```
Refer to [docs/getting-started.md](docs/getting-started.md) and run
`tools/devtool --help` for more information on `devtool`, such as build
verification, tests, etc.

Which you will need to do after modifying python or markdown files so that the
pre-commit can finish successfully.
> **Note:** The legacy rusty-hook pre-commit script has been deprecated and is
> unmaintained. Please use `devtool` for formatting, linting, and build checks
> during your development cycle.
Comment on lines +74 to +76
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we add a warning in the original script as well so that we may remove it in the future?


Your contribution needs to meet the following standards:

Expand Down