You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+8-21Lines changed: 8 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -50,10 +50,11 @@ just setup
50
50
### Development Workflow
51
51
52
52
1. Work on the issue and write unit tests
53
-
- Add Solidity test files to `tests/contract-playground/` as needed
53
+
- Add Solidity test files to `tests/contract-playground/` for small additions
54
+
- For larger test cases, create your own project under `tests/`. Prefer projects without external dependencies—use `forge init --no-git` for a minimal Foundry setup
54
55
- Run specific tests with `cargo test <test-name>`
55
56
56
-
2. Generate reports to verify your changes
57
+
2. Generate reports to verify your changes using `cargo prep`. This command runs Aderyn against test projects and outputs baseline reports to `reports/`. These reports are committed to the repo, and CI verifies that your changes produce the expected output.
57
58
```bash
58
59
cargo prep -n playground # Generate report for contract-playground
59
60
cargo prep # Show all available test projects
@@ -64,26 +65,12 @@ just setup
64
65
cargo blesspr # Run all checks to satisfy CI
65
66
```
66
67
67
-
4. Open a pull request to the `dev` branch. A maintainer (@alexroan or @TilakMaddy) will review it.
68
-
69
-
### Code Quality
70
-
71
-
If you are not running `cargo blesspr` due to the small scope of your changes, run these commands to fix formatting and lint issues:
72
-
```bash
73
-
cargo fixfmt
74
-
cargo fixclippy
75
-
```
76
-
77
-
### Advanced Setup (Optional)
68
+
> **Quick fixes only?** For small changes, you can skip the full `blesspr` and just run:
69
+
> ```bash
70
+
> cargo fixfmt && cargo fixclippy
71
+
>```
78
72
79
-
For a better development experience, install [Bacon](https://dystroy.org/bacon/) and run `bacon` at the project root. Keyboard shortcuts:
80
-
81
-
| Key | Action |
82
-
|-----|--------|
83
-
|`t`| Run tests |
84
-
|`r`| Generate report for contract-playground |
85
-
|`a`| Generate all reports in parallel |
86
-
|`Alt-b` / `⌥-b`| Bless the PR (run all CI checks) |
73
+
4. Open a pull request to the `dev` branch. A maintainer (@alexroan or @TilakMaddy) will review it.
0 commit comments