This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git


The following commit(s) were added to refs/heads/master by this push:
     new 140ce28616 Update github pull request template.
140ce28616 is described below

commit 140ce28616f9054adb78a31575f9acffd5445e7c
Author: Tomasz 'CeDeROM' CEDRO <to...@cedro.info>
AuthorDate: Mon Sep 16 15:46:40 2024 +0200

    Update github pull request template.
    
    * Update CONTRIBUTING.md guide with hints and examples.
    * Minor GitHub Pull Request Template update hinting expected information.
    
    Signed-off-by: Tomasz 'CeDeROM' CEDRO <to...@cedro.info>
---
 .github/PULL_REQUEST_TEMPLATE.md |  15 ++++
 CONTRIBUTING.md                  | 151 +++++++++++++++++++++++++++++++--------
 2 files changed, 136 insertions(+), 30 deletions(-)

diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index f0c7312265..0c929e8591 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -1,6 +1,21 @@
+*Note: Please adhere to [Contributing Guidelines](../CONTRIBUTING.md).*
+
 ## Summary
 
+*Update this section with information on why change is necessary,
+ what it exactly does and how, if new feature shows up, provide
+ references (dependencies, similar problems and solutions), etc.*
+
 ## Impact
 
+*Update this section, where applicable, on how change affects users,
+ build process, hardware, documentation, security, compatibility, etc.*
+
 ## Testing
 
+*Update this section with details on how did you verify the change,
+ what Host was used for build (OS, CPU, compiler, ..), what Target was
+ used for verification (arch, board:config, ..), etc. Providing build
+ and runtime logs from before and after change is highly appreciated.*
+
+
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 0f2da53386..0643bdf42e 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -1,47 +1,138 @@
-# Contribution to Apache NuttX
+# Contributing to Apache NuttX RTOS
 
-Hi! Thank you for wanting to contribute to Apache NuttX.
+Hi! Thank you for your interest in contributing to Apache NuttX RTOS :-)
 
 ## Guidelines
 
-In order to help us review your contribution successfully
-it is very important you follow these guidelines:
+To help us successfully review your contribution, it is very
+important that you follow these guidelines.
 
-  * Use descriptive **commit messages** and, if the change
-    warrants further description, do add a separate paragraph
-    like so:
 
-        <first line (up to ~80 characters)>
+### Coding Standard
 
-        <more paragraphs here>
+* You should follow [NuttX C Coding 
Standard](https://nuttx.apache.org/docs/latest/contributing/coding_style.html).
 
-    * The first line should have a prefix to give context
-      (unless context is really clear), such as:
+* Your code will be automatically checked by GitHub Continuous Integration
+  (CI) system. If you see the "check" step fails, it is possible that this
+  happens due to style errors.
 
-          <keyword>: <message>
-          i.e sched: Fixed compiler warning
+* Note that we require you to solve these issues and adapt all modified files
+  even if you didn't introduce the problem yourself (this way,
+  every contribution gets us closer to compliance).
 
-  * Be sure to **fill in** the pull-request template with
-    meaningful content (be very descriptive, take your time).
-    Do **not** remove these sections or ignore them.
 
-    * **Tip**: if you create a commit message as above, the
-      first line will be automatically used as PR title
-      and the rest added to the description. Use it as a
-      starting point to describe your PR.
+### Commits
 
-  * You should follow [NuttX C Coding 
Standard](https://nuttx.apache.org/docs/latest/contributing/coding_style.html)
+* Each commit **must** contain a meaningful **commit message** that consist of:
+  * **topic** (mandatory).
+  * **description** (optional, separate with blank line from topic).
 
-    * Your code will be automatically checked by GitHub
-      Continuous Integration (CI) system. If you see the
-      "check" step fails, it is possible that this happens
-      due to style errors.
+* **Prefix** commit topic with a functional context
+  (i.e.  `sched: Fixed compiler warning.`).
 
-    * Note that we require you to solve these issues
-      and adapt all modified files even if you didn't
-      introduce the problem yourself (this way, every
-      contribution gets us closer to compliance).
+* Provide only **signed commits** (`git commit -s`) with valid author
+  and email fields.
 
-## For more information
+* Valid commit message example:
+
+    ```
+    net/can: Add g_ prefix to can_dlc_to_len and len_to_can_dlc.
+
+    Add g_ prefix to can_dlc_to_len and len_to_can_dlc to
+    follow NuttX coding style conventions for global symbols,
+    improving code readability and maintainability.
+    * you can also use bullet points.
+    * to note different thing briefly.
+
+    Signed-off-by: AuthorName <Valid@EmailAddress>
+    ```
+
+* If you create a proper commit message as explained above, the first line
+  will be automatically used as pull-request title and the rest is added as
+  description. Use it as a starting point to describe your Pull-Request (PR).
+
+
+### Pull Requests
+
+* Be sure to **fill in the pull-request report** with meaningful content.
+  Be very descriptive, take your time. Good explanation, as for someone who
+  can see the issue for the first time, will help understand the change and
+  improve the assessment process. Please provide short descriptions even for
+  a trivial change.
+
+  * **Summary:** It is important to provide information on why change is
+    necessary, what it exactly does and how, if new feature shows up,
+    provide references (dependencies, similar problems and solutions), etc.
+
+  * **Impact:** State how (where applicable) that change affects users, build
+    process, hardware, documentation, security, compatibility, etc.
+
+  * **Testing:** Please provide details on how did you verify the change,
+    what Host was used for build (OS, CPU, compiler, ..), what Target was
+    used for verification (arch, board:config, ..), etc.
+    Providing build and runtime logs from before and after change is highly
+    appreciated.
+
+* Introduce only one functional change per pull-request.
+
+* Provide finished and verified solutions.
+  Clearly mark Work-In-Progress pull requests not yet ready for assessment.
+
+
+## References
+
+
+### Documentation
 
 For general notes on contributing to Apache NuttX continue reading 
[here](https://nuttx.apache.org/docs/latest/contributing/index.html).
+
+
+### Example Pull Request Report
+
+#### Summary
+
+  * Why change is necessary (fix, update, new feature)?
+  * What functional part of the code is being changed?
+  * How does the change exactly work (what will change and how)?
+  * Related [NuttX Issue](https://github.com/apache/nuttx/issues) reference if 
applicable.
+  * Related NuttX Apps [Issue](https://github.com/apache/nuttx-apps/issues) / 
[Pull Request](https://github.com/apache/nuttx-apps/pulls) reference if 
applicable.
+
+#### Impact
+
+  * Is new feature added? Is existing feature changed?
+  * Impact on user (will user need to adapt to change)? NO / YES (please 
describe if yes).
+  * Impact on build (will build process change)? NO / YES (please descibe if 
yes).
+  * Impact on hardware (will arch(s) / board(s) / driver(s) change)? NO / YES 
(please describe if yes).
+  * Impact on documentation (is update required / provided)? NO / YES (please 
describe if yes).
+  * Impact on security (any sort of implications)? NO / YES (please describe 
if yes).
+  * Impact on compatibility (backward/forward/interoperability)? NO / YES 
(please describe if yes).
+  * Anything else to consider?
+
+#### Testing
+
+  I confirm that changes are verified on local setup and works as intended:
+  * Build Host(s): OS (Linux,BSD,macOS,Windows,..), CPU(Intel,AMD,ARM), 
compiler(GCC,CLANG,version), etc.
+  * Target(s): arch(sim,RISC-V,ARM,..), board:config, etc.
+
+  Testing logs before change:
+
+  ```
+  runtime / build logs before change goes here
+  ```
+
+  Testing logs after change:
+
+  ```
+  runtime / build logs after change goes here
+  ```
+
+  How to repeat:
+    * you can also provide steps on how to reproduce problem and verify the 
change.
+
+#### PR verification
+
+  * [ ] This PR introduces only one functional change.
+  * [ ] I have updated all required description fields above.
+  * [ ] My PR adheres to [CONTRIBUTING](../CONTRIBUTING.md) guidelines (git 
commit title and message, coding standard, etc).
+  * [ ] My PR is still work in progress (not ready for review).
+  * [ ] My PR is ready for review and can be safely merged into a codebase.

Reply via email to