]> granicus.if.org Git - strace/blob - README-hacking
rtnl_link: print pad field in the struct ifla_port_vsi decoder
[strace] / README-hacking
1 Requirements
2 ============
3 If you use a GIT version of strace source code, please refer to
4 INSTALL-git.md file for building and installation instructions.
5
6
7 No more ChangeLog file
8 ======================
9 Do not create or modify the ChangeLog files.  Starting at 2009-07-09, the
10 policy changed.  Before, we would insert the exact same text (or worse,
11 sometimes slightly differing) into both the ChangeLog file and the commit
12 log.  Now we put that information only in the commit log, and generate
13 the top-level ChangeLog file from logs at "make dist" time.  As such,
14 there are strict requirements on the form of the commit log messages.
15
16
17 Commit requirements
18 ===================
19 Each commit message should always start with a one-line summary, the second
20 line should be blank, and the remaining lines are usually ChangeLog-style
21 entries for all affected files, except the leading TABs which should
22 be omitted.
23
24 Changes must not introduce whitespace errors in git sense (trailing
25 whitespace, spaces before tabs, spaces for indentation, blank lines
26 at the end of file), this can be checked with the following command:
27
28         git -c core.whitespace=space-before-tab,trailing-space diff-index \
29                 --check 4b825dc642cb6eb9a060e54bf8d69288fbee4904
30
31 It is also preferred (but not required) that commit patches pass
32 scripts/checkpatch.pl script from the Linux kernel[1], as currently established
33 coding style quite closely resembles the one used in Linux kernel[2], with some
34 exceptions.
35
36 [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/scripts/checkpatch.pl
37 [2] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/plain/Documentation/process/coding-style.rst
38
39
40 Documentation
41 =============
42 All noteworthy changes should be mentioned in NEWS.  All changes in strace
43 command interface should be reflected in the man page.  New options should
44 be documented both in -h output and in the man page.