Re: OpenBSD kernel janitors

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: OpenBSD <misc@...>
Date: Saturday, November 3, 2007 - 7:16 pm

This include example and full diff's below as well.

May be this is a waist of time, but will see.

Some say they needs some details, then here is an example, and this took
me only about 30 minutes or so from start to finish, including getting
the source tree.

Doesn't mean it will be pick up, but it sure is not that hard to do and
doesn't need years of experience.

Start by getting the tree:

http://openbsd.org/anoncvs.html#starting

Some example on how to get the tree:

http://openbsd.org/anoncvs.html#EXAMPLE

Then pick something you want to work on or do. Previously explain as
well as an easy example. Just style (9)

man 9 style

Just as an example, pick:

1. Use a space after keywords (if, while, for, return, switch).

or may be even:

2. Indentation is an 8 character tab. Second level indents are four spaces.

or even:

3. Do not add whitespace at the end of a line, and only use tabs
followed by spaces to form the indentation. Do not use more spaces than
a tab will produce and do not use spaces in front of tabs.

Or anything else to start with that you want.

Then go from there. Use what ever editor you want and go hunting.

Just as an example, I will hunt for ...

I just pick anything.

Just for the sake of argument or example, I pick the first one:

/usr/src/bin/csh/init.c for fun. and look for the above.

Then you create a diff from that from your favorite cvs, or the one you
downloaded the source from obviously.

Just as an example, I did it form one find in the explications page
pointed out in the URL above. You email the diff to you, check it out to
make sure it does look right and then you can forward it to the list
with explications of what it does. Try to keep it simple and small as
this is easiest and will most likely get picked up faster and specially
if you address one thing only per diff, it make it that much easier for
the devs to check.

Then if it is good, it will be put in and if not, then it will be ignore.

So, I did the diff's for the file I just checked above and as you can
see, there is plenty of corrections that can be done here and needs no
brain to do it really, but can help make the code cleaner over time and
just follow the style 9:

cvs -d anoncvs@anoncvs.ca.openbsd.org:/cvs diff -upN init.c HEAD | mail
daniel@presscom.net

Write the email and in this case, this is only and 100% style 9 for
replacement only for code alignment in the source. Nothing
else. Use proper title and put some details as to what this diff's for.

Here, it is a diff for style 9 only on /usr/src/bin/csh/init.c.

Not very exciting for sure, but never the less may well be picked up and
put in by someone that fell it's important to respect the style 9 in the
source and so far it is. But that's not an important diff's either. So,
it may well be picked up right away, or in a few months, or not at all.

Then you wait for the diff's to be put in, for you to get feedback, or
been told you are not doing it right and here is what you should do.

Word of caution as well. You may get very dry feedback as well if your
diff is bad. Just be ready to receive it and keep going, or work it
again to make it better.

So, this got you the following diff's.

Hope this help anyone that wants to help a bit and say they do not know
how to do it.

Best regards,

Daniel

*******************************************************************

Index: init.c
===================================================================
RCS file: /cvs/src/bin/csh/init.c,v
retrieving revision 1.6
diff -u -p -r1.6 init.c
--- init.c 2003/06/23 16:42:15 1.6
+++ init.c 2007/11/03 23:08:07
@@ -47,86 +47,86 @@ static char rcsid[] = "$OpenBSD: init.c,

struct biltins bfunc[] =
{
- { "@", dolet, 0, INF },
- { "alias", doalias, 0, INF },
- { "alloc", showall, 0, 1 },
- { "bg", dobg, 0, INF },
- { "break", dobreak, 0, 0 },
- { "breaksw", doswbrk, 0, 0 },
- { "case", dozip, 0, 1 },
- { "cd", dochngd, 0, INF },
- { "chdir", dochngd, 0, INF },
- { "continue", docontin, 0, 0 },
- { "default", dozip, 0, 0 },
- { "dirs", dodirs, 0, INF },
- { "echo", doecho, 0, INF },
- { "else", doelse, 0, INF },
- { "end", doend, 0, 0 },
- { "endif", dozip, 0, 0 },
- { "endsw", dozip, 0, 0 },
- { "eval", doeval, 0, INF },
- { "exec", execash, 1, INF },
- { "exit", doexit, 0, INF },
- { "fg", dofg, 0, INF },
- { "foreach", doforeach, 3, INF },
- { "glob", doglob, 0, INF },
- { "goto", dogoto, 1, 1 },
- { "hashstat", hashstat, 0, 0 },
- { "history", dohist, 0, 2 },
- { "if", doif, 1, INF },
- { "jobs", dojobs, 0, 1 },
- { "kill", dokill, 1, INF },
- { "limit", dolimit, 0, 3 },
- { "linedit", doecho, 0, INF },
- { "login", dologin, 0, 1 },
- { "logout", dologout, 0, 0 },
- { "nice", donice, 0, INF },
- { "nohup", donohup, 0, INF },
- { "notify", donotify, 0, INF },
- { "onintr", doonintr, 0, 2 },
- { "popd", dopopd, 0, INF },
- { "pushd", dopushd, 0, INF },
- { "rehash", dohash, 0, 0 },
- { "repeat", dorepeat, 2, INF },
- { "set", doset, 0, INF },
- { "setenv", dosetenv, 0, 2 },
- { "shift", shift, 0, 1 },
- { "source", dosource, 1, 2 },
- { "stop", dostop, 1, INF },
- { "suspend", dosuspend, 0, 0 },
- { "switch", doswitch, 1, INF },
- { "time", dotime, 0, INF },
- { "umask", doumask, 0, 1 },
- { "unalias", unalias, 1, INF },
- { "unhash", dounhash, 0, 0 },
- { "unlimit", dounlimit, 0, INF },
- { "unset", unset, 1, INF },
- { "unsetenv", dounsetenv, 1, INF },
- { "wait", dowait, 0, 0 },
- { "which", dowhich, 1, INF },
- { "while", dowhile, 1, INF }
+ { "@", dolet, 0, INF },
+ { "alias", doalias, 0, INF },
+ { "alloc", showall, 0, 1 },
+ { "bg", dobg, 0, INF },
+ { "break", dobreak, 0, 0 },
+ { "breaksw", doswbrk, 0, 0 },
+ { "case", dozip, 0, 1 },
+ { "cd", dochngd, 0, INF },
+ { "chdir", dochngd, 0, INF },
+ { "continue", docontin, 0, 0 },
+ { "default", dozip, 0, 0 },
+ { "dirs", dodirs, 0, INF },
+ { "echo", doecho, 0, INF },
+ { "else", doelse, 0, INF },
+ { "end", doend, 0, 0 },
+ { "endif", dozip, 0, 0 },
+ { "endsw", dozip, 0, 0 },
+ { "eval", doeval, 0, INF },
+ { "exec", execash, 1, INF },
+ { "exit", doexit, 0, INF },
+ { "fg", dofg, 0, INF },
+ { "foreach", doforeach, 3, INF },
+ { "glob", doglob, 0, INF },
+ { "goto", dogoto, 1, 1 },
+ { "hashstat", hashstat, 0, 0 },
+ { "history", dohist, 0, 2 },
+ { "if", doif, 1, INF },
+ { "jobs", dojobs, 0, 1 },
+ { "kill", dokill, 1, INF },
+ { "limit", dolimit, 0, 3 },
+ { "linedit", doecho, 0, INF },
+ { "login", dologin, 0, 1 },
+ { "logout", dologout, 0, 0 },
+ { "nice", donice, 0, INF },
+ { "nohup", donohup, 0, INF },
+ { "notify", donotify, 0, INF },
+ { "onintr", doonintr, 0, 2 },
+ { "popd", dopopd, 0, INF },
+ { "pushd", dopushd, 0, INF },
+ { "rehash", dohash, 0, 0 },
+ { "repeat", dorepeat, 2, INF },
+ { "set", doset, 0, INF },
+ { "setenv", dosetenv, 0, 2 },
+ { "shift", shift, 0, 1 },
+ { "source", dosource, 1, 2 },
+ { "stop", dostop, 1, INF },
+ { "suspend", dosuspend, 0, 0 },
+ { "switch", doswitch, 1, INF },
+ { "time", dotime, 0, INF },
+ { "umask", doumask, 0, 1 },
+ { "unalias", unalias, 1, INF },
+ { "unhash", dounhash, 0, 0 },
+ { "unlimit", dounlimit, 0, INF },
+ { "unset", unset, 1, INF },
+ { "unsetenv", dounsetenv, 1, INF },
+ { "wait", dowait, 0, 0 },
+ { "which", dowhich, 1, INF },
+ { "while", dowhile, 1, INF }
};
int nbfunc = sizeof bfunc / sizeof *bfunc;

struct srch srchn[] =
{
- { "@", T_LET },
- { "break", T_BREAK },
- { "breaksw", T_BRKSW },
- { "case", T_CASE },
- { "default", T_DEFAULT },
- { "else", T_ELSE },
- { "end", T_END },
- { "endif", T_ENDIF },
- { "endsw", T_ENDSW },
- { "exit", T_EXIT },
- { "foreach", T_FOREACH },
- { "goto", T_GOTO },
- { "if", T_IF },
- { "label", T_LABEL },
- { "set", T_SET },
- { "switch", T_SWITCH },
- { "while", T_WHILE }
+ { "@", T_LET },
+ { "break", T_BREAK },
+ { "breaksw", T_BRKSW },
+ { "case", T_CASE },
+ { "default", T_DEFAULT },
+ { "else", T_ELSE },
+ { "end", T_END },
+ { "endif", T_ENDIF },
+ { "endsw", T_ENDSW },
+ { "exit", T_EXIT },
+ { "foreach", T_FOREACH },
+ { "goto", T_GOTO },
+ { "if", T_IF },
+ { "label", T_LABEL },
+ { "set", T_SET },
+ { "switch", T_SWITCH },
+ { "while", T_WHILE }
};
int nsrchn = sizeof srchn / sizeof *srchn;

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
OpenBSD kernel janitors, Karel Kulhavy, (Tue Oct 30, 3:31 pm)
Re: OpenBSD kernel janitors, Miod Vallat, (Tue Oct 30, 4:26 pm)
Re: OpenBSD kernel janitors, Karel Kulhavy, (Sat Nov 3, 6:53 am)
Re: OpenBSD kernel janitors, Daniel Ouellet, (Sat Nov 3, 5:16 pm)
Re: OpenBSD kernel janitors, Hannah Schroeter, (Sat Nov 3, 5:30 pm)
Re: OpenBSD kernel janitors, Matthias Kilian, (Sat Nov 3, 6:44 pm)
Re: OpenBSD kernel janitors, Daniel Ouellet, (Sat Nov 3, 7:16 pm)
Re: OpenBSD kernel janitors, Daniel Ouellet, (Sat Nov 3, 6:13 pm)
Re: OpenBSD kernel janitors, Gerardo Santana Gómez Garrido..., (Tue Oct 30, 8:52 pm)
Re: OpenBSD kernel janitors, Richard Wilson, (Wed Oct 31, 8:52 am)
Re: OpenBSD kernel janitors, n0g0013, (Tue Oct 30, 9:20 pm)
Re: OpenBSD kernel janitors, Marcus Andree, (Wed Oct 31, 8:15 am)
Re: OpenBSD kernel janitors , Theo de Raadt, (Wed Oct 31, 10:20 am)
Re: OpenBSD kernel janitors, Nick Guenther, (Wed Oct 31, 10:30 am)
Re: OpenBSD kernel janitors, Daniel Ouellet, (Wed Oct 31, 4:34 pm)
Re: OpenBSD kernel janitors, Pierre Riteau, (Wed Oct 31, 11:55 am)
Re: OpenBSD kernel janitors, Karel Kulhavy, (Sat Nov 3, 7:23 am)
Re: OpenBSD kernel janitors, Marc Espie, (Wed Oct 31, 1:07 pm)
Re: OpenBSD kernel janitors, Philip Guenther, (Wed Oct 31, 11:37 am)
Re: OpenBSD kernel janitors, Bob Beck, (Wed Oct 31, 10:53 am)
Re: OpenBSD kernel janitors, Nick Guenther, (Wed Oct 31, 11:02 am)
Re: OpenBSD kernel janitors, Tony Abernethy, (Wed Oct 31, 10:50 am)
Re: OpenBSD kernel janitors, , (Wed Oct 31, 11:01 am)
Re: OpenBSD kernel janitors, Ben Goren, (Wed Oct 31, 10:38 pm)
Re: OpenBSD kernel janitors, Artur Grabowski, (Wed Oct 31, 11:44 am)
Re: OpenBSD kernel janitors, n0g0013, (Wed Oct 31, 11:54 am)
Re: OpenBSD kernel janitors, Peter N. M. Hansteen, (Wed Oct 31, 2:28 pm)
Re: OpenBSD kernel janitors, Ted Unangst, (Wed Oct 31, 3:57 pm)
Re: OpenBSD kernel janitors, Owain Ainsworth, (Thu Nov 1, 5:15 am)
Re: OpenBSD kernel janitors, Darrin Chandler, (Wed Oct 31, 4:05 pm)
Re: OpenBSD kernel janitors , Theo de Raadt, (Wed Oct 31, 11:49 am)
Re: OpenBSD kernel janitors, Karel Kulhavy, (Sat Nov 3, 7:16 am)
Re: OpenBSD kernel janitors, William Boshuck, (Sat Nov 3, 8:56 am)
Re: OpenBSD kernel janitors, Jonathan Gray, (Sat Nov 3, 7:56 am)
Re: OpenBSD kernel janitors, n0g0013, (Wed Oct 31, 11:56 am)
Re: OpenBSD kernel janitors, Luke Bakken, (Wed Oct 31, 2:57 pm)
Re: OpenBSD kernel janitors, bofh, (Wed Oct 31, 12:52 pm)
Re: OpenBSD kernel janitors, Claudio Jeker, (Wed Oct 31, 12:48 pm)
Re: OpenBSD kernel janitors, Claudio Jeker, (Wed Oct 31, 12:10 pm)
Re: OpenBSD kernel janitors , Theo de Raadt, (Wed Oct 31, 12:05 pm)
Re: OpenBSD kernel janitors, n0g0013, (Wed Oct 31, 12:10 pm)
Re: OpenBSD kernel janitors, mickey, (Wed Oct 31, 11:25 am)
Re: OpenBSD kernel janitors, Marcus Andree, (Wed Oct 31, 11:41 am)
Re: OpenBSD kernel janitors, Ted Unangst, (Wed Oct 31, 12:58 pm)
Re: OpenBSD kernel janitors, mickey, (Wed Oct 31, 12:47 pm)
Re: OpenBSD kernel janitors, Bret Lambert, (Wed Oct 31, 1:08 pm)
Re: OpenBSD kernel janitors, n0g0013, (Wed Oct 31, 11:50 am)
Re: OpenBSD kernel janitors, Jason McIntyre, (Wed Oct 31, 1:10 pm)
Re: OpenBSD kernel janitors, mickey, (Wed Oct 31, 12:58 pm)
Re: OpenBSD kernel janitors, Ted Unangst, (Wed Oct 31, 12:54 pm)