From warner at users.sourceforge.net Thu Sep 1 20:53:23 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Thu, 01 Sep 2005 20:53:23 +0000 Subject: [Buildbot-commits] buildbot/buildbot/status html.py,1.66,1.67 words.py,1.39,1.40 Message-ID: Update of /cvsroot/buildbot/buildbot/buildbot/status In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23210/buildbot/status Modified Files: html.py words.py Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-309 Creator: Brian Warner update IBuilderStatus.getState signature * buildbot/interfaces.py (IBuilderStatus.getState): update signature, point out that 'build' can be None (IBuildStatus.getETA): point out ETA can be none * buildbot/status/html.py (CurrentBox.getBox): tolerate build/ETA being None * buildbot/status/words.py (IrcStatusBot.emit_status): same Index: html.py =================================================================== RCS file: /cvsroot/buildbot/buildbot/buildbot/status/html.py,v retrieving revision 1.66 retrieving revision 1.67 diff -u -d -r1.66 -r1.67 --- html.py 31 Aug 2005 01:51:42 -0000 1.66 +++ html.py 1 Sep 2005 20:53:21 -0000 1.67 @@ -687,7 +687,11 @@ color = "white" if state == "building": color = "yellow" - text = ["building"] + self.formatETA(build.getETA()) + text = ["building"] + if build: + eta = build.getETA() + if eta: + text.extend(self.formatETA(eta)) elif state == "offline": color = "red" text = ["offline"] Index: words.py =================================================================== RCS file: /cvsroot/buildbot/buildbot/buildbot/status/words.py,v retrieving revision 1.39 retrieving revision 1.40 diff -u -d -r1.39 -r1.40 --- words.py 11 Aug 2005 21:58:42 -0000 1.39 +++ words.py 1 Sep 2005 20:53:21 -0000 1.40 @@ -211,9 +211,6 @@ str = "Configured builders: " for b in builders: str += b.name - # FIXME: b is a buildbot.status.builder.BuilderStatus - # has no .remote, so maybe it should be added there - #if not b.remote: state = b.getState()[0] if state == 'offline': str += "[offline]" @@ -362,12 +359,12 @@ (int(util.now() - finished), " ".join(last.getText())) if state == "building": build = b.getCurrentBuild() - assert build - step = build.getCurrentStep() - str += " (%s)" % " ".join(step.getText()) - ETA = build.getETA() - if ETA is not None: - str += " [ETA %s]" % self.convertTime(ETA) + if build: + step = build.getCurrentStep() + str += " (%s)" % " ".join(step.getText()) + ETA = build.getETA() + if ETA is not None: + str += " [ETA %s]" % self.convertTime(ETA) self.reply(reply, str) def emit_last(self, reply, which): From warner at users.sourceforge.net Thu Sep 1 20:53:23 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Thu, 01 Sep 2005 20:53:23 +0000 Subject: [Buildbot-commits] buildbot/buildbot interfaces.py,1.31,1.32 Message-ID: Update of /cvsroot/buildbot/buildbot/buildbot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23210/buildbot Modified Files: interfaces.py Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-309 Creator: Brian Warner update IBuilderStatus.getState signature * buildbot/interfaces.py (IBuilderStatus.getState): update signature, point out that 'build' can be None (IBuildStatus.getETA): point out ETA can be none * buildbot/status/html.py (CurrentBox.getBox): tolerate build/ETA being None * buildbot/status/words.py (IrcStatusBot.emit_status): same Index: interfaces.py =================================================================== RCS file: /cvsroot/buildbot/buildbot/buildbot/interfaces.py,v retrieving revision 1.31 retrieving revision 1.32 diff -u -d -r1.31 -r1.32 --- interfaces.py 31 Aug 2005 01:51:41 -0000 1.31 +++ interfaces.py 1 Sep 2005 20:53:21 -0000 1.32 @@ -214,8 +214,9 @@ """Return a tuple (state, build=None) for this Builder. 'state' is the so-called 'big-status', indicating overall status (as opposed to which step is currently running). It is a string, one of 'offline', - 'idle', or 'building'. In the 'building' state, 'build' will be an - IBuildStatus object representing the current build.""" + 'idle', or 'building'. In the 'building' state, 'build' may be an + IBuildStatus object representing the current build (or None if the + Builder is in the pre-build ping-the-slave phase).""" def getSlave(): """Return an ISlaveStatus object for the buildslave that is used by @@ -349,7 +350,8 @@ def getETA(): """Returns the number of seconds from now in which the build is - expected to finish. This guess will be refined over time.""" + expected to finish, or None if we can't make a guess. This guess will + be refined over time.""" def getCurrentStep(): """Return an IBuildStepStatus object representing the currently @@ -471,7 +473,8 @@ def getETA(): """Returns the number of seconds from now in which the step is - expected to finish. This guess will be refined over time.""" + expected to finish, or None if we can't make a guess. This guess will + be refined over time.""" # Once you know the step has finished, the following methods are legal. # Before ths step has finished, they all return None. From warner at users.sourceforge.net Thu Sep 1 20:53:23 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Thu, 01 Sep 2005 20:53:23 +0000 Subject: [Buildbot-commits] buildbot ChangeLog,1.499,1.500 Message-ID: Update of /cvsroot/buildbot/buildbot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23210 Modified Files: ChangeLog Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-309 Creator: Brian Warner update IBuilderStatus.getState signature * buildbot/interfaces.py (IBuilderStatus.getState): update signature, point out that 'build' can be None (IBuildStatus.getETA): point out ETA can be none * buildbot/status/html.py (CurrentBox.getBox): tolerate build/ETA being None * buildbot/status/words.py (IrcStatusBot.emit_status): same Index: ChangeLog =================================================================== RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v retrieving revision 1.499 retrieving revision 1.500 diff -u -d -r1.499 -r1.500 --- ChangeLog 31 Aug 2005 08:04:36 -0000 1.499 +++ ChangeLog 1 Sep 2005 20:53:21 -0000 1.500 @@ -1,3 +1,13 @@ +2005-09-01 Brian Warner + + * buildbot/interfaces.py (IBuilderStatus.getState): update + signature, point out that 'build' can be None + (IBuildStatus.getETA): point out ETA can be none + + * buildbot/status/html.py (CurrentBox.getBox): tolerate build/ETA + being None + * buildbot/status/words.py (IrcStatusBot.emit_status): same + 2005-08-31 Brian Warner * buildbot/status/base.py (StatusReceiver.builderChangedState): From fdrake at users.sourceforge.net Fri Sep 2 15:31:30 2005 From: fdrake at users.sourceforge.net (Fred L. Drake) Date: Fri, 02 Sep 2005 15:31:30 +0000 Subject: [Buildbot-commits] buildbot/docs buildbot.texinfo,1.21,1.22 Message-ID: Update of /cvsroot/buildbot/buildbot/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv9802/docs Modified Files: buildbot.texinfo Log Message: fix typo Index: buildbot.texinfo =================================================================== RCS file: /cvsroot/buildbot/buildbot/docs/buildbot.texinfo,v retrieving revision 1.21 retrieving revision 1.22 diff -u -d -r1.21 -r1.22 --- buildbot.texinfo 31 Aug 2005 02:26:21 -0000 1.21 +++ buildbot.texinfo 2 Sep 2005 15:31:28 -0000 1.22 @@ -2108,7 +2108,7 @@ @code{PBChangeSource} uses the same protocol as the buildslaves, and they can be distinguished by the @code{username} attribute used when the initial connection is established). It might be useful to have it -listen on a different port it, for example, you wanted to establish +listen on a different port if, for example, you wanted to establish different firewall rules for that port. You could allow only the SVN repository machine access to the @code{PBChangeSource} port, while allowing only the buildslave machines access to the slave port. Or you From fdrake at users.sourceforge.net Fri Sep 2 15:40:43 2005 From: fdrake at users.sourceforge.net (Fred L. Drake) Date: Fri, 02 Sep 2005 15:40:43 +0000 Subject: [Buildbot-commits] buildbot/buildbot/status html.py,1.67,1.68 Message-ID: Update of /cvsroot/buildbot/buildbot/buildbot/status In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11461/buildbot/status Modified Files: html.py Log Message: only show the "Ping Builder" button if the build control is available; the user sees an exception otherwise Index: html.py =================================================================== RCS file: /cvsroot/buildbot/buildbot/buildbot/status/html.py,v retrieving revision 1.67 retrieving revision 1.68 diff -u -d -r1.67 -r1.68 --- html.py 1 Sep 2005 20:53:21 -0000 1.67 +++ html.py 2 Sep 2005 15:40:41 -0000 1.68 @@ -418,14 +418,15 @@ to force this build to execute at this time.

""" - pingURL = urllib.quote(request.childLink("ping")) - data += """ -
-

To ping a builder, push the 'Ping' button

+ if self.control is not None: + pingURL = urllib.quote(request.childLink("ping")) + data += """ + +

To ping a builder, push the 'Ping' button

- -
- """ % pingURL + + + """ % pingURL return data From warner at users.sourceforge.net Sat Sep 3 19:14:52 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Sat, 03 Sep 2005 19:14:52 +0000 Subject: [Buildbot-commits] buildbot ChangeLog,1.500,1.501 Message-ID: Update of /cvsroot/buildbot/buildbot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29275 Modified Files: ChangeLog Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-312 Creator: Brian Warner add ChangeLog for fdrake's last commit * buildbot/status/html.py (StatusResourceBuilder.body): only show the "Ping Builder" button if the build control is available; the user sees an exception otherwise * docs/buildbot.texinfo (PBChangeSource): fix a typo Index: ChangeLog =================================================================== RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v retrieving revision 1.500 retrieving revision 1.501 diff -u -d -r1.500 -r1.501 --- ChangeLog 1 Sep 2005 20:53:21 -0000 1.500 +++ ChangeLog 3 Sep 2005 19:14:50 -0000 1.501 @@ -1,3 +1,11 @@ +2005-09-02 Fred Drake + + * buildbot/status/html.py (StatusResourceBuilder.body): only show + the "Ping Builder" button if the build control is available; the + user sees an exception otherwise + + * docs/buildbot.texinfo (PBChangeSource): fix a typo + 2005-09-01 Brian Warner * buildbot/interfaces.py (IBuilderStatus.getState): update From warner at users.sourceforge.net Sat Sep 3 19:50:04 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Sat, 03 Sep 2005 19:50:04 +0000 Subject: [Buildbot-commits] buildbot/docs/examples twisted_master.cfg,1.28,1.29 Message-ID: Update of /cvsroot/buildbot/buildbot/docs/examples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2495/docs/examples Modified Files: twisted_master.cfg Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-314 Creator: Brian Warner the twisted buildbot is no longer exercising python2.2 tests * docs/examples/twisted_master.cfg: (sync with reality) turn off python2.2 tests, change 'Quick' builder to only use python2.3 Index: twisted_master.cfg =================================================================== RCS file: /cvsroot/buildbot/buildbot/docs/examples/twisted_master.cfg,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- twisted_master.cfg 17 Jul 2005 23:28:33 -0000 1.28 +++ twisted_master.cfg 3 Sep 2005 19:50:00 -0000 1.29 @@ -80,19 +80,10 @@ 'slavename': "bot1", 'builddir': "quick", 'factory': QuickTwistedBuildFactory(svnurl, - python=["python2.2", "python2.3"]), + python=["python2.3"]), } builders.append(b1) -b22 = {'name': "full-2.2", - 'slavename': "bot-exarkun", - 'builddir': "full2.2", - 'factory': FullTwistedBuildFactory(svnurl, - python="python2.2", - processDocs=0), - } -builders.append(b22) - b23compile_opts = [ "-Wignore::PendingDeprecationWarning:distutils.command.build_py", "-Wignore::PendingDeprecationWarning:distutils.command.build_ext", @@ -155,9 +146,9 @@ } builders.append(b23osx) -b22w32 = {'name': "win32", +b23w32 = {'name': "win32", 'slavename': "bot-w32", - 'builddir': "W32-full2.2", + 'builddir': "W32-full2.3", 'factory': TwistedReactorsBuildFactory(svnurl, python="python", compileOpts2=["-c","mingw32"], @@ -166,11 +157,11 @@ "win32", ]), } -builders.append(b22w32) +builders.append(b23w32) b23bsd = {'name': "freebsd", 'slavename': "bot-suszko", - 'builddir': "bsd-full2.2", + 'builddir': "bsd-full2.3", 'factory': TwistedReactorsBuildFactory(svnurl, python="python2.3", reactors=["default", @@ -205,7 +196,7 @@ channels=["twisted"])) c['debugPassword'] = private.debugPassword -#c['interlocks'] = [("do-deb", ["full-2.2"], ["debuild"])] +#c['interlocks'] = [("do-deb", ["full-2.3"], ["debuild"])] if hasattr(private, "manhole"): c['manhole'] = master.Manhole(*private.manhole) c['status'].append(client.PBListener(9936)) From warner at users.sourceforge.net Sat Sep 3 19:50:04 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Sat, 03 Sep 2005 19:50:04 +0000 Subject: [Buildbot-commits] buildbot ChangeLog,1.501,1.502 Message-ID: Update of /cvsroot/buildbot/buildbot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2495 Modified Files: ChangeLog Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-314 Creator: Brian Warner the twisted buildbot is no longer exercising python2.2 tests * docs/examples/twisted_master.cfg: (sync with reality) turn off python2.2 tests, change 'Quick' builder to only use python2.3 Index: ChangeLog =================================================================== RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v retrieving revision 1.501 retrieving revision 1.502 diff -u -d -r1.501 -r1.502 --- ChangeLog 3 Sep 2005 19:14:50 -0000 1.501 +++ ChangeLog 3 Sep 2005 19:50:00 -0000 1.502 @@ -1,3 +1,8 @@ +2005-09-03 Brian Warner + + * docs/examples/twisted_master.cfg: (sync with reality) turn off + python2.2 tests, change 'Quick' builder to only use python2.3 + 2005-09-02 Fred Drake * buildbot/status/html.py (StatusResourceBuilder.body): only show From warner at users.sourceforge.net Sat Sep 3 19:50:19 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Sat, 03 Sep 2005 19:50:19 +0000 Subject: [Buildbot-commits] buildbot ChangeLog,1.502,1.503 NEWS,1.44,1.45 Message-ID: Update of /cvsroot/buildbot/buildbot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2622 Modified Files: ChangeLog NEWS Log Message: Revision: arch at buildbot.sf.net--2004/buildbot--dev--0--patch-315 Creator: Brian Warner NEWS: start adding items for the next release * NEWS: start adding items for the next release Index: ChangeLog =================================================================== RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v retrieving revision 1.502 retrieving revision 1.503 diff -u -d -r1.502 -r1.503 --- ChangeLog 3 Sep 2005 19:50:00 -0000 1.502 +++ ChangeLog 3 Sep 2005 19:50:17 -0000 1.503 @@ -1,5 +1,7 @@ 2005-09-03 Brian Warner + * NEWS: start adding items for the next release + * docs/examples/twisted_master.cfg: (sync with reality) turn off python2.2 tests, change 'Quick' builder to only use python2.3 Index: NEWS =================================================================== RCS file: /cvsroot/buildbot/buildbot/NEWS,v retrieving revision 1.44 retrieving revision 1.45 diff -u -d -r1.44 -r1.45 --- NEWS 23 May 2005 22:48:05 -0000 1.44 +++ NEWS 3 Sep 2005 19:50:17 -0000 1.45 @@ -1,5 +1,61 @@ User visible changes in Buildbot. +* Release x.x.x (xx) + +* new features + +** new c['schedulers'] config-file element (REQUIRED) + +The code which decides exactly *when* a build is performed has been massively +refactored. YOU MUST UPDATE your master.cfg files to match: in general this +will merely require you to add an appropriate c['schedulers'] entry. Any old +".treeStableTime" settings on the BuildFactory instances will now be ignored. +The user's manual has complete details with examples of how the new Scheduler +classes work. + +** c['interlocks'] removed, Locks and Dependencies now separate items + +The c['interlocks'] config element has been removed, and its functionality +replaced with two separate objects. Locks are used to tell the buildmaster +that certain Steps or Builds should not run at the same time as other Steps +or Builds (useful for test suites that require exclusive access to some +external resource: of course the real fix is to fix the tests, because +otherwise your developers will be suffering from the same limitations). The +Lock object is created in the config file and then referenced by a Step +specification tuple or by the 'locks' key of the Builder specification +dictionary. + +When you want to have one Build run or not run depending upon whether some +other set of Builds have passed or failed, you use a special kind of +Scheduler defined in the scheduler.Dependent class. This scheduler watches an +upstream Scheduler for builds of a given source version to complete, and only +fires off its own Builders when all of the upstream's Builders have built +that version successfully. + +Both features are fully documented in the user's manual. + +** 'try' + +The 'buildbot try' feature has finally been added. There is some +configuration involved, both in the buildmaster config and on the developer's +side, but once in place this allows the developer to type 'buildbot try' in +their locally-modified tree and to be given a report of what would happen if +their changes were to be committed. This works by computing a (base revision, +patch) tuple that describes the developer's tree, sending that to the +buildmaster, then running a build with that source on a given set of +Builders. The 'buildbot try' tool then emits status messages until the builds +have finished. + +'try' exists to allow developers to run cross-platform tests on their code +before committing it, reducing the chances they will inconvenience other +developers by breaking the build. The UI is still clunky, but expect it to +change and improve over the next few releases. + +Instructions for developers who want to use 'try' (and the configuration +changes necessary to enable its use) are in the user's manual. + + + * Release 0.6.6 (23 May 2005) ** bugs fixed From fdrake at users.sourceforge.net Tue Sep 6 22:07:09 2005 From: fdrake at users.sourceforge.net (Fred L. Drake) Date: Tue, 06 Sep 2005 22:07:09 +0000 Subject: [Buildbot-commits] buildbot/buildbot/process step.py,1.68,1.69 Message-ID: Update of /cvsroot/buildbot/buildbot/buildbot/process In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26681/buildbot/process Modified Files: step.py Log Message: Add progressMetrics, description, descriptionDone to the 'parms' list, and make use the 'parms' list from the implementation class instead of only BuildStep to initialize the parameters. This allows buildbot.process.factory.s() to initialize all the parms, not just those defined in directly by BuildStep. Index: step.py =================================================================== RCS file: /cvsroot/buildbot/buildbot/buildbot/process/step.py,v retrieving revision 1.68 retrieving revision 1.69 diff -u -d -r1.68 -r1.69 --- step.py 8 Aug 2005 21:39:45 -0000 1.68 +++ step.py 6 Sep 2005 22:07:07 -0000 1.69 @@ -408,7 +408,9 @@ 'flunkOnWarnings', 'flunkOnFailure', 'warnOnWarnings', - 'warnOnFailure',] + 'warnOnFailure', + 'progressMetrics', + ] name = "generic" locks = [] @@ -420,7 +422,7 @@ def __init__(self, **kwargs): self.build = kwargs['build'] # required - for p in BuildStep.parms: + for p in self.__class__.parms: if kwargs.has_key(p): setattr(self, p, kwargs[p]) del kwargs[p] @@ -658,6 +660,11 @@ command = None # set this to a command, or set in kwargs progressMetrics = ['output'] + parms = BuildStep.parms + [ + 'description', + 'descriptionDone', + ] + def __init__(self, **kwargs): # most of our arguments get passed through to the RemoteShellCommand # that we create, but first strip out the ones that we pass to @@ -665,7 +672,7 @@ self.workdir = kwargs['workdir'] # required by RemoteShellCommand buildstep_kwargs = {} for k in kwargs.keys()[:]: - if k in BuildStep.parms: + if k in self.__class__.parms: buildstep_kwargs[k] = kwargs[k] del kwargs[k] BuildStep.__init__(self, **buildstep_kwargs) @@ -988,15 +995,21 @@ } self.alwaysUseLatest = alwaysUseLatest - self.description = ["updating"] - self.descriptionDone = ["update"] + # Compute defaults for descriptions: + description = ["updating"] + descriptionDone = ["update"] if mode == "clobber": - self.description = ["checkout"] + description = ["checkout"] # because checkingouting takes too much space - self.descriptionDone = ["checkout"] + descriptionDone = ["checkout"] elif mode == "export": - self.description = ["exporting"] - self.descriptionDone = ["export"] + description = ["exporting"] + descriptionDone = ["export"] + # Initialize descriptions if not already set: + if self.description is None: + self.description = description + if self.descriptionDone is None: + self.descriptionDone = descriptionDone def computeSourceRevision(self, changes): """Each subclass must implement this method to do something more From fdrake at users.sourceforge.net Tue Sep 6 22:07:09 2005 From: fdrake at users.sourceforge.net (Fred L. Drake) Date: Tue, 06 Sep 2005 22:07:09 +0000 Subject: [Buildbot-commits] buildbot ChangeLog,1.503,1.504 Message-ID: Update of /cvsroot/buildbot/buildbot In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv26681 Modified Files: ChangeLog Log Message: Add progressMetrics, description, descriptionDone to the 'parms' list, and make use the 'parms' list from the implementation class instead of only BuildStep to initialize the parameters. This allows buildbot.process.factory.s() to initialize all the parms, not just those defined in directly by BuildStep. Index: ChangeLog =================================================================== RCS file: /cvsroot/buildbot/buildbot/ChangeLog,v retrieving revision 1.503 retrieving revision 1.504 diff -u -d -r1.503 -r1.504 --- ChangeLog 3 Sep 2005 19:50:17 -0000 1.503 +++ ChangeLog 6 Sep 2005 22:07:07 -0000 1.504 @@ -1,3 +1,12 @@ +2005-09-06 Fred Drake + + * buildbot/process/step.py (BuildStep, ShellCommand): Add + progressMetrics, description, descriptionDone to the 'parms' list, + and make use the 'parms' list from the implementation class + instead of only BuildStep to initialize the parameters. This + allows buildbot.process.factory.s() to initialize all the parms, + not just those defined in directly by BuildStep. + 2005-09-03 Brian Warner * NEWS: start adding items for the next release From warner at users.sourceforge.net Wed Sep 28 07:41:08 2005 From: warner at users.sourceforge.net (Brian Warner) Date: Wed, 28 Sep 2005 07:41:08 +0000 Subject: [Buildbot-commits] site index.html,1.47,1.48 Message-ID: Update of /cvsroot/buildbot/site In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24202 Modified Files: index.html Log Message: add videolan.org, also switch to iso-8859-1 to accomodate monsouir Stenac's first name Index: index.html =================================================================== RCS file: /cvsroot/buildbot/site/index.html,v retrieving revision 1.47 retrieving revision 1.48 diff -u -d -r1.47 -r1.48 --- index.html 24 Aug 2005 08:36:12 -0000 1.47 +++ index.html 28 Sep 2005 07:41:06 -0000 1.48 @@ -1,7 +1,7 @@ - + The BuildBot @@ -150,6 +150,11 @@ sniffer, uses a buildbot for their cross-platform compatibility testing. +
  • Cl?ment Stenac writes in to say that the VideoLAN Project has a Buildbot to do their + continuous-integration and nightly builds.
  • +
  • install a Buildbot today and get your name added here!
  • @@ -172,5 +177,5 @@ align="right" /> -Last modified: Wed Aug 24 01:35:19 PDT 2005 +Last modified: Wed Sep 28 00:39:19 PDT 2005