[Buildbot-commits] buildbot/docs buildbot.texinfo,1.129,1.130

Brian Warner warner at users.sourceforge.net
Sun Dec 23 07:17:04 UTC 2007


Update of /cvsroot/buildbot/buildbot/docs
In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv4392/docs

Modified Files:
	buildbot.texinfo 
Log Message:
[project @ make Compile and Test count warnings, by regexp. Closes #74.]

Original author: warner at lothar.com
Date: 2007-12-23 07:12:34+00:00

Index: buildbot.texinfo
===================================================================
RCS file: /cvsroot/buildbot/buildbot/docs/buildbot.texinfo,v
retrieving revision 1.129
retrieving revision 1.130
diff -u -d -r1.129 -r1.130
--- buildbot.texinfo	8 Dec 2007 20:25:11 -0000	1.129
+++ buildbot.texinfo	23 Dec 2007 07:17:01 -0000	1.130
@@ -4389,11 +4389,35 @@
 
 @bsindex buildbot.steps.shell.Compile
 
-This is meant to handle compiling or building a project written in C. The
-default command is @code{make all}. When the compile is finished, the
-log file is scanned for GCC error/warning messages and a summary log is
-created with any problems that were seen (TODO: the summary is not yet
-created).
+This is meant to handle compiling or building a project written in C.
+The default command is @code{make all}. When the compile is finished,
+the log file is scanned for GCC warning messages, a summary log is
+created with any problems that were seen, and the step is marked as
+WARNINGS if any were discovered. The number of warnings is stored in a
+Build Property named ``warnings-count'', which is accumulated over all
+Compile steps (so if two warnings are found in one step, and three are
+found in another step, the overall build will have a
+``warnings-count'' property of 5.
+
+The default regular expression used to detect a warning is
+ at code{'.*warning[: ].*'} , which is fairly liberal and may cause
+false-positives. To use a different regexp, provide a
+ at code{warningPattern=} argument, or use a subclass which sets the
+ at code{warningPattern} attribute:
+
+ at example
+f.addStep(Compile(command=["make", "test"],
+                  warningPattern="^Warning: "))
+ at end example
+
+The @code{warningPattern=} can also be a pre-compiled python regexp
+object: this makes it possible to add flags like @code{re.I} (to use
+case-insensitive matching).
+
+(TODO: this step needs to be extended to look for GCC error messages
+as well, and collect them into a separate logfile, along with the
+source code filenames involved).
+
 
 @node Test, Build Properties, Compile, Simple ShellCommand Subclasses
 @subsubsection Test





More information about the Commits mailing list