Release Notes for Buildbot 0.8.12

The following are the release notes for Buildbot 0.8.12. This version was released on the 20th of April, 2015.



  • Buildbot works python-dateutil >= 1.5


  • GitHub change hook now supports application/json format.

  • Buildbot is now compatible with Gerrit v2.6 and higher.

    To make this happen, the return result of reviewCB and summaryCB callback has changed from

    (message, verified, review)


    {'message': message,
     'labels': {'label-name': value,

    The implications are:

    • there are some differences in behaviour: only those labels that were provided will be updated
    • Gerrit server must be able to provide a version, if it can't the GerritStatusPush will not work


    If you have an old style reviewCB and/or summaryCB implemented, these will still work, however there could be more labels updated than anticipated.

    More detailed information is available in GerritStatusPush section.

  • Buildbot now supports plugins. They allow Buildbot to be extended by using components distributed independently from the main code. They also provide for a unified way to access all components. When previously the following construction was used:

    from buildbot.kind.other.bits import ComponentClass
    ... ComponentClass ...

    the following construction achieves the same result:

    from buildbot.plugins import kind
    ... kind.ComponentClass ...

    Kinds of components that are available this way are described in Plugin Infrastructure in Buildbot.


    While the components can be still directly imported as buildbot.kind.other.bits, this might not be the case after Buildbot v1.0 is released.

  • GitPoller now supports detecting new branches

  • MasterShellCommand now renders the path argument.

  • ShellMixin: the workdir can now be overridden in the call to makeRemoteShellCommand.

  • GitHub status target now allows to specify a different base URL for the API (usefule for GitHub enterprise installations). This feature requires txgithub of version 0.2.0 or better.

  • GitHub change hook now supports payload validation using shared secret, see GitHub hook for details.

  • Added StashStatusPush status hook for Atlassian Stash

  • Builders can now have multiple "tags" associated with them. Tags can be used in various status classes as filters (eg, on the waterfall page).

  • MailNotifier no longer forces SSL 3.0 when useTls is true.

  • GitHub change hook now supports function as codebase argument.

  • GitHub change hook now supports pull_request events.

  • Trigger: the getSchedulersAndProperties customization method has been backported from Nine. This provides a way to dynamically specify which schedulers (and the properties for that scheduler) to trigger at runtime.


  • GitHub change hook now correctly responds to ping events.
  • buildbot.steps.http steps now correctly have url parameter renderable
  • MasterShellCommand now correctly logs the working directory where it was run.
  • With Git(), force the updating submodules to ensure local changes by the build are overwitten. This both ensures more consistent builds and avoids errors when updating submodules.
  • With Git(), make sure 'git submodule sync' is called before 'git submodule update' to update stale remote urls (bug #2155).

Deprecations, Removals, and Non-Compatible Changes

  • The builder parameter "category" is deprecated and is replaced by a parameter called "tags".

Changes for Developers

  • Trigger: createTriggerProperties now takes one argument (the properties to generate).
  • Trigger: getSchedulers method is no longer used and was removed.




Deprecations, Removals, and Non-Compatible Changes


For a more detailed description of the changes made in this version, see the git log itself:

git log v0.8.10..532cf49

Older Versions

Release notes for older versions of Buildbot are available in the master/docs/relnotes/ directory of the source tree. Newer versions are also available here: