diff options
Diffstat (limited to 'CONTRIBUTING.md')
| -rw-r--r-- | CONTRIBUTING.md | 59 |
1 files changed, 26 insertions, 33 deletions
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index bf66adc..d90db4a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -4,54 +4,48 @@ First of all, thank you for your interest in Mingling! 🎉 Whether it's fixing Before contributing, we recommend reading [README](README.md) to get an overview of the project. - - ## 1. Project Structure -| Category | Path/Name | Description | -|----------|-----------|-------------| -| **Entry crate** | `mingling/` | Project entry point | -| **Core library** | `mingling_core/` | Imported as an external dependency | -| **Macro library** | `mingling_macros/` | Imported as an external dependency | -| **Examples** | `examples/` | To add expected output tests, modify `examples/test-examples.toml` | -| **Documentation, resources** | `docs/` | All documentation and resource files | -| **Development tools** | `dev_tools/` | Contains scripts and Rust tools | -| Scripts | `dev_tools/scripts/` | Helper `.sh`/`.ps1`/`.py` scripts, executed via `./run-tools.sh` or `.\run-tools.ps1` | -| Rust tools | `dev_tools/src/bin/` | Same as above | -| CI check entry | `dev_tools/src/bin/ci.rs` | Can be invoked directly via `cargo ci` | -| **Scaffolding tool** | `mling/` | Scaffolding tool `mingling-cli` | -| **Temporary files** | `.temp/` | Ignored by `.gitignore` | - - +| Category | Path/Name | Description | +| ---------------------------- | ------------------------- | ------------------------------------------------------------------------------------- | +| **Entry crate** | `mingling/` | Project entry point | +| **Core library** | `mingling_core/` | Imported as an external dependency | +| **Macro library** | `mingling_macros/` | Imported as an external dependency | +| **Examples** | `examples/` | To add expected output tests, modify `examples/test-examples.toml` | +| **Documentation, resources** | `docs/` | All documentation and resource files | +| **Development tools** | `dev_tools/` | Contains scripts and Rust tools | +| Scripts | `dev_tools/scripts/` | Helper `.sh`/`.ps1`/`.py` scripts, executed via `./run-tools.sh` or `.\run-tools.ps1` | +| Rust tools | `dev_tools/src/bin/` | Same as above | +| CI check entry | `dev_tools/src/bin/ci.rs` | Can be invoked directly via `cargo ci` | +| **Scaffolding tool** | `mling/` | Scaffolding tool `mingling-cli` | +| **Temporary files** | `.temp/` | Ignored by `.gitignore` | ## 2. Submission Guide 1. **Pull Request** - - Submit a GitHub Pull Request and @Reviewer **[Weicao-CatilGrass](https://github.com/Weicao-CatilGrass)** for review - - Or send patches to **catil_grass@qq.com** + - Submit a GitHub Pull Request and @Reviewer **[Weicao-CatilGrass](https://github.com/Weicao-CatilGrass)** for review + - Or send patches to **catil_grass@qq.com** 2. **Commit Messages** - - Clearly and concisely describe the changes, no stringent requirements - - Provide more detail for complex changes, keep it brief for simple changes - - But: if you use [Conventional Commits](https://www.conventionalcommits.org/), it would make me even happier :) + - Clearly and concisely describe the changes, no stringent requirements + - Provide more detail for complex changes, keep it brief for simple changes + - But: if you use [Conventional Commits](https://www.conventionalcommits.org/), it would make me even happier :) 3. **CHANGELOG** - - If the submission includes functional changes or fixes, **the PR must include modifications to CHANGELOG.md** to describe the changes - - For minor changes like typo fixes, **CHANGELOG.md modification is not required**, and we will merge faster + - If the submission includes functional changes or fixes, **the PR must include modifications to CHANGELOG.md** to describe the changes + - For minor changes like typo fixes, **CHANGELOG.md modification is not required**, and we will merge faster 4. **Multi-commit PR** - - A PR can contain multiple commits - - However, at least one commit must modify CHANGELOG.md + - A PR can contain multiple commits + - However, at least one commit must modify CHANGELOG.md 5. **Review** - - After submission, please notify [Weicao-CatilGrass](https://github.com/Weicao-CatilGrass) for review — this is the most efficient way to get feedback + - After submission, please notify [Weicao-CatilGrass](https://github.com/Weicao-CatilGrass) for review — this is the most efficient way to get feedback 6. **Binary Resources** - - For binary resource files (images, etc.), please be cautious about adding them to avoid repository bloat - - + - For binary resource files (images, etc.), please be cautious about adding them to avoid repository bloat ## 3. Documentation Contribution @@ -75,7 +69,8 @@ After editing documentation, refresh relevant files: These steps are included in `cargo ci`; running `cargo ci` will execute them automatically. - +> [!TIP] +> You can check the [ABOUT CI](./ABOUT-CI.md) section to learn how "Mingling CI" works. ## 4. Regarding AI Agent Usage @@ -83,8 +78,6 @@ These steps are included in `cargo ci`; running `cargo ci` will execute them aut - **Humans are the final decision-makers**, everything is subject to human judgment - Please **DO NOT** leave AI instruction files like `CLAUDE.md` in the repository root. Mingling currently has no plans to introduce **Harness Engineering** - - ## 5. License Mingling uses the **MIT + Apache 2.0** dual license. For details, please see: |
