TheBevyFlock / bevy_cli

A Bevy CLI tool and linter.
https://thebevyflock.github.io/bevy_cli/
Apache License 2.0
44 stars 7 forks source link

Write contributing guide for `bevy_lint` #157

Open BD103 opened 1 month ago

BD103 commented 1 month ago

Since bevy_cli and bevy_lint are so separate, bevy_lint should have a separate contributing guide targeted specifically for it. It should cover the following topics at least:

  1. Setup (installing toolchain, building and running the linter locally)
  2. Finding lint ideas to work on, what is possible with a linter, and when a lint should not be implemented
  3. Creating a lint (with a template file 📝)
  4. Running and writing UI tests
  5. Tips, tricks, and common patterns
    • Finding specific type method calls
    • Creating suggestions
    • Useful queries
    • Debugging, logging, and getting feedback from the compiler
    • Figuring out what HIR node a lint can be silenced from
    • Finding all types that implement a trait
    • Getting the name of a type
    • What do different LateLintPass methods check
  6. Further resources (link to Clippy's documentation, rustc's developer guide, etc.)

I started this in #152, specifically in the bevy_lint/docs folder. Free free to start from there!

BD103 commented 1 week ago

This is another useful link: https://model-checking.github.io/kani/rustc-hacks.html