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
+33-10Lines changed: 33 additions & 10 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -51,21 +51,44 @@ pytest
51
51
52
52
If you add new features or fix bugs, please add corresponding tests.
53
53
54
-
## Submitting a Pull Request (PR)
54
+
## Pull Request Process
55
55
56
-
1. **Create a new branch**for your feature or bug fix:
56
+
We use a fully automated release and versioning system. To facilitate this, we require all contributions to follow the **Conventional Commits** standard.
57
+
58
+
### 1. Prepare Your Branch
59
+
***Create a new branch**for your feature or bug fix:
57
60
```bash
58
61
git checkout -b feature/my-new-feature
59
62
```
60
63
*Use a descriptive name, like `fix/issue-number-bug-name` or `feature/new-database-support`.*
61
-
2. **Make your changes** and commit them with clear, concise commit messages.
62
-
3. **Ensure tests and linters pass** locally.
63
-
4. **Push your branch** to your fork on GitHub:
64
-
```bash
65
-
git push origin feature/my-new-feature
66
-
```
67
-
5. **Open a Pull Request** against the `main` branch of the upstream repository.
68
-
6. Fill out the PR template provided, describing your changes in detail.
64
+
***Make your changes** and commit them with clear, concise messages.
65
+
***Ensure tests and linters pass** locally by running `ruff check .` and `pytest`.
66
+
67
+
### 2. Submit the Pull Request
68
+
***Push your branch** to your fork on GitHub.
69
+
***Open a Pull Request** against the `main` branch.
70
+
***PR Title:** This is the most critical part. Because we use "Squash and Merge", your PR title becomes the final commit message in the project history and determines the next version number.
71
+
72
+
#### PR Title Format
73
+
`<type>: <description>`
74
+
75
+
**Common Types:**
76
+
*`feat:` A new feature (triggers a **Minor** release)
77
+
*`fix:` A bug fix (triggers a **Patch** release)
78
+
*`docs:` Documentation only changes
79
+
*`chore:` Maintenance tasks, dependency updates, etc.
80
+
81
+
**Examples:**
82
+
* ❌ `Added a new login page`
83
+
* ✅ `feat: add new login page`
84
+
* ❌ `Fixed the crashing bug`
85
+
* ✅ `fix: resolve crash on startup`
86
+
87
+
*Note: If your PR contains multiple changes, name it after the most significant one (e.g., use `feat:`if it includes both a new feature and a fix).*
88
+
89
+
### 3. Review and Merge
90
+
* Fill out the PR template provided, describing your changes in detail.
91
+
* Once approved and CI passes, a maintainer will merge your PR.
0 commit comments