diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index a0c6d81..f4c08d0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,14 +20,32 @@ # Contributing ## Get Started +This is a Rust project, so [rustup](https://rustup.rs/) is a great place to start. It provides an easy way to manage your Rust installation and toolchains. -This is a Rust project, so [rustup](https://rustup.rs/) is the best place to start. +This is a pure Rust project, so only `cargo` is needed. Here are some common commands to get you started: +- `cargo check`: Analyze the current package and report errors. This is a quick way to catch any obvious issues without a full compilation. +- `cargo fmt`: Format the current code according to the Rust style guidelines. This helps maintain a consistent code style throughout the project. +- `cargo build`: Compile the current package. This will build the project and generate executable binaries if applicable. +- `cargo clippy`: Catch common mistakes and improve code quality. Clippy provides a set of lints that can help you write better Rust code. +- `cargo test`: Run unit tests. This will execute all the tests defined in the project to ensure the functionality is correct. +- `cargo bench`: Run benchmark tests. This is useful for measuring the performance of specific parts of the code. -This is a pure rust project, so only `cargo` is needed. +### Setting up the Development Environment +1. Install Rust using `rustup`. Follow the instructions on the [rustup website](https://rustup.rs/) to install Rust on your system. +2. Clone the repository to your local machine. +3. Navigate to the project directory. -- `cargo check` to analyze the current package and report errors. -- `cargo fmt` to format the current code. -- `cargo build` to compile the current package. -- `cargo clippy` to catch common mistakes and improve code. -- `cargo test` to run unit tests. -- `cargo bench` to run benchmark tests. +### Making Changes +1. Create a new branch for your changes. This helps keep your work separate from the main development branch and makes it easier to review and merge your changes. +2. Make your changes and ensure that the code still compiles and passes all tests. Use the commands mentioned above to check for errors and run tests. +3. Format your code using `cargo fmt` to ensure consistency with the project's code style. + +### Submitting Changes +1. Once you are satisfied with your changes, push your branch to the remote repository. +2. Open a pull request on the project's GitHub page. Provide a clear description of your changes and why they are necessary. +3. Wait for reviews and address any feedback. Once the pull request is approved and merged, your changes will be part of the project. + +### Read the design docs +For a deeper understanding of the project, read the design documentation available on our [Paimon official website](https://paimon.apache.org/). + +Thank you for contributing to this project! 😊