The following are the release notes for Buildbot v0.8.6p1. Buildbot v0.8.6 was released on March 11, 2012. Buildbot v0.8.6p1 was released on March 25, 2012.
In addition to what's listed below, the 0.8.6p1 release adds the following.
- Builders are no longer displayed in the order they were configured. This was never intended behavior, and will become impossible in the distributed architecture planned for Buildbot-0.9.x. As of 0.8.6p1, builders are sorted naturally: lexically, but with numeric segments sorted numerically.
- Slave properties in the configuration are now handled correctly.
- The web interface buttons to cancel individual builds now appear when configured.
- The ForceScheduler's properties are correctly updated on reconfig -
2248
. - If a slave is lost while waiting for locks, it is properly cleaned up -
2247
. - Crashes when adding new steps to a factory in a reconfig are fixed -
2252
. - MailNotifier AttributeErrors are fixed -
2254
. - Cleanup from failed builds is improved -
2253
.
- If you are using the GitHub hook, carefully consider the security implications of allowing un-authenticated change requests, which can potentially build arbitrary code. See
2186
.
Forced builds now require that a :bb
ForceScheduler
be defined in the Buildbot configuration. For compatible behavior, this should look like:from buildbot.schedulers.forcesched import ForceScheduler c['schedulers'].append(ForceScheduler( name="force", builderNames=["b1", "b2", ... ]))
Where all of the builder names in the configuration are listed. See the documentation for the much more flexible configuration options now available.
- This is the last release of Buildbot that will be compatible with Python 2.4. The next version will minimally require Python-2.5. See
2157
. - This is the last release of Buildbot that will be compatible with Twisted-8.x.y. The next version will minimally require Twisted-9.0.0. See
2182
. buildbot start
no longer invokes make if aMakefile.buildbot
exists. If you are using this functionality, consider invoking make directly.- The
buildbot sendchange
option--username
has been removed as promised in1711
. - StatusReceivers' checkConfig method should now take an additional errors parameter and call its :py
~buildbot.config.ConfigErrors.addError
method to indicate errors. - The Gerrit status callback now gets an additional parameter (the master status). If you use this callback, you will need to adjust its implementation.
- SQLAlchemy-Migrate version 0.6.0 is no longer supported. See
Buildmaster-Requirements
. - Older versions of SQLite which could limp along for previous versions of Buildbot are no longer supported. The minimum version is 3.4.0, and 3.7.0 or higher is recommended.
- The master-side Git step now checks out 'HEAD' by default, rather than master, which translates to the default branch on the upstream repository. See
301
. - The format of the repository strings created by
hgbuildbot
has changed to contain the entire repository URL, based on theweb.baseurl
value inhgrc
. To continue the old (incorrect) behavior, sethgbuildbot.baseurl
to an empty string as suggested in the Buildbot manual. - Master Side :bb
SVN
Step has been corrected to properly use--revision
whenalwaysUseLatest
is set toFalse
when in thefull
mode. See2194
- Master Side :bb
SVN
Step parameter svnurl has been renamed repourl, to be consistent with other master-side source steps. - Master Side :bb
Mercurial
step parameterbaseURL
has been merged withrepourl
parameter. The behavior of the step is already controlled bybranchType
parameter, so just use a single argument to specify the repository. - Passing a :py
buildbot.process.buildstep.BuildStep
subclass (rather than instance) to :pybuildbot.process.factory.BuildFactory.addStep
has long been deprecated, and will be removed in version 0.8.7. - The hgbuildbot tool now defaults to the 'inrepo' branch type. Users who do not explicitly set a branch type would previously have seen empty branch strings, and will now see a branch string based on the branch in the repository (e.g., default).
- The interface for runtime access to the master's configuration has changed considerably. See
/developer/config
for more details. - The DB connector methods
completeBuildset
,completeBuildRequest
, andclaimBuildRequest
now take an optionalcomplete_at
parameter to specify the completion time explicitly. - Buildbot now sports sourcestamp sets, which collect multiple sourcestamps used to generate a single build, thanks to Harry Borkhuis. See
287
. - Schedulers no longer have a
schedulerid
, but rather anobjectid
. In a related change, theschedulers
table has been removed, along with the :pybuildbot.db.schedulers.SchedulersConnectorComponent.getSchedulerId
method. - The Dependent scheduler tracks its upstream buildsets using :py
buildbot.db.schedulers.StateConnectorComponent
, so thescheduler_upstream_buildsets
table has been removed, along with corresponding (undocumented) :pybuildbot.db.buildsets.BuildsetsConnector
methods. - Errors during configuration (in particular in :py
BuildStep
constructors), should be reported by calling :pybuildbot.config.error
.
- The IRC status bot now display build status in colors by default. It is controllable and may be disabled with useColors=False in constructor.
- Buildbot can now take advantage of authentication done by a front-end web server - see
266
. - Buildbot supports a simple cookie-based login system, so users no longer need to enter a username and password for every request. See the earlier commits in
278
. - The master-side SVN step now has an export method which is similar to copy, but the build directory does not contain Subversion metadata. (
2078
) :py
Property
instances will now render any properties in the default value if necessary. This makes possible constructs like :command=Property('command', default=Property('default-command'))
- Buildbot has a new web hook to handle push notifications from Google Code -see
278
. - Revision links are now generated by a flexible runtime conversion configured by :bb
revlink
- see280
. - Shell command steps will now "flatten" nested lists in the
command
argument. This allows substitution of multiple command-line arguments using properties. See2150
. - Steps now take an optional
hideStepIf
parameter to suppress the step from the waterfall and build details in the web. (1743
) - :py
Trigger
steps withwaitForFinish=True
now receive a URL to all the triggered builds. This URL is displayed in the waterfall and build details. See2170
. - The
master/contrib/fakemaster.py
script allows you to run arbitrary commands on a slave by emulating a master. See the file itself for documentation. - MailNotifier allows multiple notification modes in the same instance. See
2205
. - SVNPoller now allows passing extra arguments via argument
extra_args
. See1766
- BitKeeper support is in the "Last-Rites" state, and will be removed in the next version unless a maintainer steps forward.
For a more detailed description of the changes made in this version, see the Git log itself:
git log buildbot-0.8.5..buildbot-0.8.6
Release notes for older versions of Buildbot are available in the master/docs/relnotes/
directory of the source tree, or in the archived documentation for those versions at http://buildbot.net/buildbot/docs.