diff options
| -rw-r--r-- | docs/contributing.md | 109 |
1 files changed, 90 insertions, 19 deletions
diff --git a/docs/contributing.md b/docs/contributing.md index 94dbf49..7d18400 100644 --- a/docs/contributing.md +++ b/docs/contributing.md | |||
| @@ -2,37 +2,108 @@ | |||
| 2 | 2 | ||
| 3 | ## Mailing list | 3 | ## Mailing list |
| 4 | 4 | ||
| 5 | The main communication tool we use is a mailing list: | 5 | The main communication tool in use is the Yocto Project mailing list: |
| 6 | |||
| 6 | * <yocto@yoctoproject.org> | 7 | * <yocto@yoctoproject.org> |
| 7 | * <https://lists.yoctoproject.org/listinfo/yocto> | 8 | * <https://lists.yoctoproject.org/listinfo/yocto> |
| 8 | 9 | ||
| 9 | Feel free to ask any kind of questions but always prepend your email subject | 10 | Feel free to ask any kind of questions but please always prepend your email |
| 10 | with "[meta-raspberrypi]". This is because we use the 'yocto' mailing list and | 11 | subject with `[meta-raspberrypi]` as this is the global *Yocto* mailing |
| 11 | not a perticular 'meta-raspberrypi' mailing list. | 12 | list and not a dedicated *meta-raspberrypi* mailing list. |
| 13 | |||
| 14 | ## Formatting patches | ||
| 15 | |||
| 16 | First and foremost, all of the contributions to the layer must be compliant | ||
| 17 | with the standard openembedded patch guidelines: | ||
| 18 | |||
| 19 | * <http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines> | ||
| 20 | |||
| 21 | In summary, your commit log messages should be formatted as follows: | ||
| 22 | |||
| 23 | <layer-component>: <short log/statement of what needed to be changed> | ||
| 24 | |||
| 25 | (Optional pointers to external resources, such as defect tracking) | ||
| 26 | |||
| 27 | The intent of your change. | ||
| 28 | |||
| 29 | (Optional: if it's not clear from above, how your change resolves | ||
| 30 | the issues in the first part) | ||
| 31 | |||
| 32 | Signed-off-by: Your Name <yourname@youremail.com> | ||
| 33 | |||
| 34 | The `<layer-component>` is the layer component name that your changes affect. | ||
| 35 | It is important that you choose it correctly. A simple guide for selecting a | ||
| 36 | a good component name is the following: | ||
| 37 | |||
| 38 | * For changes that affect *layer recipes*, please just use the **base names** | ||
| 39 | of the affected recipes, separated by commas (`,`), as the component name. | ||
| 40 | For example: use `omxplayer` instead of `omxplayer_git.bb`. If you are | ||
| 41 | adding new recipe(s), just use the new recipe(s) base name(s). An example | ||
| 42 | for changes to multiple recipes would be `userland,vc-graphics,wayland`. | ||
| 43 | * For changes that affect the *layer documentation*, please just use `docs` | ||
| 44 | as the component name. | ||
| 45 | * For changes that affect *other files*, i.e. under the `conf` directory, | ||
| 46 | please use the full path as the component name, e.g. `conf/layer.conf`. | ||
| 47 | * For changes that affect the *layer itself* and do not fall into any of | ||
| 48 | the above cases, please use `meta-raspberrypi` as the component name. | ||
| 49 | |||
| 50 | A full example of a suitable commit log message is below: | ||
| 12 | 51 | ||
| 13 | ## Patches and pull requests | 52 | foobar: Adjusted the foo setting in bar |
| 14 | 53 | ||
| 15 | All the contributions should be compliant with the openembedded patch | 54 | When using foobar on systems with less than a gigabyte of RAM common |
| 16 | guidelines: <http://www.openembedded.org/wiki/Commit_Patch_Message_Guidelines> | 55 | usage patterns often result in an Out-of-memory condition causing |
| 56 | slowdowns and unexpected application termination. | ||
| 17 | 57 | ||
| 18 | To contribute to this project you should send pull requests to the github mirror | 58 | Low-memory systems should continue to function without running into |
| 19 | (<https://github.com/agherzan/meta-raspberrypi>). **Additionally** you can send | 59 | memory-starvation conditions with minimal cost to systems with more |
| 20 | the patches for review to the above specified mailing list. | 60 | available memory. High-memory systems will be less able to use the |
| 61 | full extent of the system, a dynamically tunable option may be best, | ||
| 62 | long-term. | ||
| 21 | 63 | ||
| 22 | When creating patches for the mailing list, please use something like: | 64 | The foo setting in bar was decreased from X to X-50% in order to |
| 65 | ensure we don't exhaust all system memory with foobar threads. | ||
| 66 | |||
| 67 | Signed-off-by: Joe Developer <joe.developer@example.com> | ||
| 68 | |||
| 69 | A common issue during patch reviewing is commit log formatting, please review | ||
| 70 | the above formatting guidelines carefully before sending your patches. | ||
| 71 | |||
| 72 | ## Sending patches | ||
| 73 | |||
| 74 | The preferred method to contribute to this project is to send pull | ||
| 75 | requests to the GitHub mirror of the layer: | ||
| 76 | |||
| 77 | * <https://github.com/agherzan/meta-raspberrypi> | ||
| 78 | |||
| 79 | **In addition**, you may send patches for review to the above specified | ||
| 80 | mailing list. In this case, when creating patches using `git` please make | ||
| 81 | sure to use the following formatting for the message subject: | ||
| 23 | 82 | ||
| 24 | git format-patch -s --subject-prefix='meta-raspberrypi][PATCH' origin | 83 | git format-patch -s --subject-prefix='meta-raspberrypi][PATCH' origin |
| 25 | 84 | ||
| 26 | When sending patches to the mailing list, please use something like: | 85 | Then, for sending patches to the mailing list, you may use this command: |
| 27 | 86 | ||
| 28 | git send-email --to yocto@yoctoproject.org <generated patch> | 87 | git send-email --to yocto@yoctoproject.org <generated patch> |
| 29 | 88 | ||
| 30 | ## Github issues | 89 | ## GitHub issues |
| 90 | |||
| 91 | In order to manage and track the layer issues more efficiently, the | ||
| 92 | GitHub issues facility is used by this project: | ||
| 93 | |||
| 94 | * <https://github.com/agherzan/meta-raspberrypi/issues> | ||
| 95 | |||
| 96 | If you submit patches that have a GitHub issue associated, please make sure to | ||
| 97 | use standard GitHub keywords, e.g. `closes`, `resolves` or `fixes`, before the | ||
| 98 | "Signed-off-by" tag to close the relevant issues automatically: | ||
| 99 | |||
| 100 | foobar: Adjusted the foo setting in bar | ||
| 101 | |||
| 102 | Fixes: #324 | ||
| 103 | |||
| 104 | Signed-off-by: Joe Developer <joe.developer@example.com> | ||
| 105 | |||
| 106 | More information on the available GitHub close keywords can be found here: | ||
| 31 | 107 | ||
| 32 | In order to manage and trace the meta-raspberrypi issues, we use github issues: | 108 | * <https://help.github.com/articles/closing-issues-using-keywords> |
| 33 | <https://github.com/agherzan/meta-raspberrypi/issues> | ||
| 34 | 109 | ||
| 35 | If you push patches which have a github issue associated, please provide the | ||
| 36 | issue number in the commit log just before "Signed-off-by" line(s). Example line | ||
| 37 | for a bug: | ||
| 38 | `[Issue #13]` | ||
