takashi kadono / Mbed OS Nucleo446_SSD1331

Dependencies:   ssd1331

Committer:
kadonotakashi
Date:
Thu Oct 11 02:27:46 2018 +0000
Revision:
3:f3764f852aa8
Parent:
0:8fdf9a60065b
Nucreo 446 + SSD1331 test version;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kadonotakashi 0:8fdf9a60065b 1 1 Introduction
kadonotakashi 0:8fdf9a60065b 2
kadonotakashi 0:8fdf9a60065b 3 This document describes some guidelines for people participating
kadonotakashi 0:8fdf9a60065b 4 in lwIP development.
kadonotakashi 0:8fdf9a60065b 5
kadonotakashi 0:8fdf9a60065b 6 2 How to contribute to lwIP
kadonotakashi 0:8fdf9a60065b 7
kadonotakashi 0:8fdf9a60065b 8 Here is a short list of suggestions to anybody working with lwIP and
kadonotakashi 0:8fdf9a60065b 9 trying to contribute bug reports, fixes, enhancements, platform ports etc.
kadonotakashi 0:8fdf9a60065b 10 First of all as you may already know lwIP is a volunteer project so feedback
kadonotakashi 0:8fdf9a60065b 11 to fixes or questions might often come late. Hopefully the bug and patch tracking
kadonotakashi 0:8fdf9a60065b 12 features of Savannah help us not lose users' input.
kadonotakashi 0:8fdf9a60065b 13
kadonotakashi 0:8fdf9a60065b 14 2.1 Source code style:
kadonotakashi 0:8fdf9a60065b 15
kadonotakashi 0:8fdf9a60065b 16 1. do not use tabs.
kadonotakashi 0:8fdf9a60065b 17 2. indentation is two spaces per level (i.e. per tab).
kadonotakashi 0:8fdf9a60065b 18 3. end debug messages with a trailing newline (\n).
kadonotakashi 0:8fdf9a60065b 19 4. one space between keyword and opening bracket.
kadonotakashi 0:8fdf9a60065b 20 5. no space between function and opening bracket.
kadonotakashi 0:8fdf9a60065b 21 6. one space and no newline before opening curly braces of a block.
kadonotakashi 0:8fdf9a60065b 22 7. closing curly brace on a single line.
kadonotakashi 0:8fdf9a60065b 23 8. spaces surrounding assignment and comparisons.
kadonotakashi 0:8fdf9a60065b 24 9. don't initialize static and/or global variables to zero, the compiler takes care of that.
kadonotakashi 0:8fdf9a60065b 25 10. use current source code style as further reference.
kadonotakashi 0:8fdf9a60065b 26
kadonotakashi 0:8fdf9a60065b 27 2.2 Source code documentation style:
kadonotakashi 0:8fdf9a60065b 28
kadonotakashi 0:8fdf9a60065b 29 1. JavaDoc compliant and Doxygen compatible.
kadonotakashi 0:8fdf9a60065b 30 2. Function documentation above functions in .c files, not .h files.
kadonotakashi 0:8fdf9a60065b 31 (This forces you to synchronize documentation and implementation.)
kadonotakashi 0:8fdf9a60065b 32 3. Use current documentation style as further reference.
kadonotakashi 0:8fdf9a60065b 33
kadonotakashi 0:8fdf9a60065b 34 2.3 Bug reports and patches:
kadonotakashi 0:8fdf9a60065b 35
kadonotakashi 0:8fdf9a60065b 36 1. Make sure you are reporting bugs or send patches against the latest
kadonotakashi 0:8fdf9a60065b 37 sources. (From the latest release and/or the current Git sources.)
kadonotakashi 0:8fdf9a60065b 38 2. If you think you found a bug make sure it's not already filed in the
kadonotakashi 0:8fdf9a60065b 39 bugtracker at Savannah.
kadonotakashi 0:8fdf9a60065b 40 3. If you have a fix put the patch on Savannah. If it is a patch that affects
kadonotakashi 0:8fdf9a60065b 41 both core and arch specific stuff please separate them so that the core can
kadonotakashi 0:8fdf9a60065b 42 be applied separately while leaving the other patch 'open'. The preferred way
kadonotakashi 0:8fdf9a60065b 43 is to NOT touch archs you can't test and let maintainers take care of them.
kadonotakashi 0:8fdf9a60065b 44 This is a good way to see if they are used at all - the same goes for unix
kadonotakashi 0:8fdf9a60065b 45 netifs except tapif.
kadonotakashi 0:8fdf9a60065b 46 4. Do not file a bug and post a fix to it to the patch area. Either a bug report
kadonotakashi 0:8fdf9a60065b 47 or a patch will be enough.
kadonotakashi 0:8fdf9a60065b 48 If you correct an existing bug then attach the patch to the bug rather than creating a new entry in the patch area.
kadonotakashi 0:8fdf9a60065b 49 5. Patches should be specific to a single change or to related changes. Do not mix bugfixes with spelling and other
kadonotakashi 0:8fdf9a60065b 50 trivial fixes unless the bugfix is trivial too. Do not reorganize code and rename identifiers in the same patch you
kadonotakashi 0:8fdf9a60065b 51 change behaviour if not necessary. A patch is easier to read and understand if it's to the point and short than
kadonotakashi 0:8fdf9a60065b 52 if it's not to the point and long :) so the chances for it to be applied are greater.
kadonotakashi 0:8fdf9a60065b 53
kadonotakashi 0:8fdf9a60065b 54 2.4 Platform porters:
kadonotakashi 0:8fdf9a60065b 55
kadonotakashi 0:8fdf9a60065b 56 1. If you have ported lwIP to a platform (an OS, a uC/processor or a combination of these) and
kadonotakashi 0:8fdf9a60065b 57 you think it could benefit others[1] you might want discuss this on the mailing list. You
kadonotakashi 0:8fdf9a60065b 58 can also ask for Git access to submit and maintain your port in the contrib Git module.