1 Contributing a module {#contributions}
4 Here are the rules of contribution:
5 - Your module must have an example that builds against your UPM library
6 - Commits must have a sign-off line by everyone who reviewed them
7 - Commits must be named <file/module>: Some decent description
8 - You must license your module under a FOSS license. The recommended license
9 is MIT but any permissive license is fine. Please consider that people using
10 UPM may want to write proprietary programs with your sensors so we like to
11 avoid GPL. (LGPL is fine). If your license is not MIT please include a
12 LICENSE file in src/<mymodule>/
13 - Please test your module builds before contributing and make sure it works on
14 the latest version of mraa. If you tested on a specific board/platform please
15 tell us what this was in your PR.
16 - Try not to break master. In any commit.
17 - Attempt to have some decent API documentation below are the explicit rules on documentation:
22 - Try to have no warnings in doxygen, this is generally fairly easy
23 - Have the specific sensor manufacturer/model & version that you used, if you
24 support multiple versions please list
25 - Comments do not need full stops
26 - Stick to <80 chars per line even in comments
27 - No text is allowed on the same line as the start or end of a comment /** */
28 - All classes should have a "@brief" and a "@snippet"
30 The example should have an 'Interesting' section which will be highlighted as a
31 code sample in doxygen. Everything in between such tags will show up in the
32 class documentation when the following is put at the end of a class docstring