<pre style='margin:0'>
Ryan Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/7bea5c7ac9911a06f8e73854b733e23f2a434aae">https://github.com/macports/macports-ports/commit/7bea5c7ac9911a06f8e73854b733e23f2a434aae</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 7bea5c7ac9911a06f8e73854b733e23f2a434aae
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Sun Jun 2 12:00:00 2019 -0500

<span style='display:block; white-space:pre;color:#404040;'>    buildbot: replaced_by buildbot-0.8
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/53006
</span>---
 devel/buildbot/Portfile                            |  84 +----------
 devel/buildbot/files/GitHubStatus-context.patch    | 161 ---------------------
 .../files/org.macports.buildmaster.template.plist  |  34 -----
 .../files/patch-allowRecent_SQA_Migrate.diff       |  60 --------
 .../patch-buildbot-status-web-console.py.diff      |  11 --
 .../files/patch-buildbot-status-web-grid.py.diff   |  28 ----
 .../patch-buildbot-status-web-waterfall.py.diff    |  19 ---
 .../files/patch-buildbot-steps-trigger.py.diff     |  36 -----
 8 files changed, 3 insertions(+), 430 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/Portfile b/devel/buildbot/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index f3c08c8..ba8b2bd 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,87 +1,9 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 
 PortSystem              1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup               python 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup               obsolete 1.0
</span> 
 name                    buildbot
 version                 0.8.12
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                8
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-categories              devel python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-platforms               darwin
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-supported_archs         noarch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-license                 GPL-2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-maintainers             {ryandesign @ryandesign} openmaintainer
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-description             compile/test cycle automation system
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-long_description        The BuildBot is a system to automate the compile/test \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        cycle required by most software projects to validate \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        code changes.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage                http://buildbot.net/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites            pypi:b/buildbot/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-dist_subdir             ${name}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums               md5     c61fa219942f8a1ed43cdbc1e4ef0187 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        rmd160  3ec4f77befce8993c0ddca4416a494201be52fa5 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256  c6b66976dff712268566574d57131ec15e5682f6d4390cd5c8559bab0980c4d6 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        size    4834352
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-python.default_version  27
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_lib-append      port:py${python.version}-dateutil \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py${python.version}-jinja2 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py${python.version}-sqlalchemy \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py${python.version}-sqlalchemy-migrate \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        port:py${python.version}-twisted
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-patchfiles-append       GitHubStatus-context.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-allowRecent_SQA_Migrate.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-buildbot-status-web-console.py.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-buildbot-status-web-grid.py.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-buildbot-status-web-waterfall.py.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-buildbot-steps-trigger.py.diff
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-build.env               NO_INSTALL_REQS=1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set sharedir            ${prefix}/share/${subport}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set docdir              ${prefix}/share/doc/${subport}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set plistfile           org.macports.buildmaster.template.plist
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-post-extract {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    file mkdir ${worksrcpath}/macports
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    copy ${filespath}/${plistfile} ${worksrcpath}/macports/${plistfile}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    reinplace -locale C "s|@PREFIX@|${prefix}|g" ${worksrcpath}/macports/${plistfile}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -d ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -m 644 -W ${worksrcpath} README COPYING CREDITS NEWS UPGRADING \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -d ${destroot}${sharedir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    xinstall -m 755 ${worksrcpath}/macports/${plistfile} \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        ${destroot}${sharedir}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-depends_test            port:py${python.version}-mock
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-test.run                yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-test.env                PYTHONPATH=.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-test.cmd                ${prefix}/bin/trial-${python.branch}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-test.target             buildbot.test
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.type          regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.url           https://pypi.python.org/pypi/${name}/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex         {buildbot\/(\d+\.\d+(?:\.\d+))\"}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-#livecheck.regex        {buildbot\/(\d+\.\d+(?:\.\d+)(?:b\d))}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-notes "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-An example launchd plist file is available in ${sharedir}. After you have\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-created your build master, edit the UserName and WorkingDirectory fields to\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-appropriate values. As the root user, copy it to /Library/LaunchDaemons and\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-instruct launchd to run it with:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-sudo launchctl load -w /Library/LaunchDaemons/your.plist.name
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+replaced_by             buildbot-0.8
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/GitHubStatus-context.patch b/devel/buildbot/files/GitHubStatus-context.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 9013989..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/GitHubStatus-context.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,161 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Add context field to GitHubStatus updates
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-https://github.com/buildbot/buildbot/pull/1721
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/status/github.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/status/github.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -59,7 +60,7 @@ class GitHubStatus(StatusReceiverMultiService):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     def __init__(self, token, repoOwner, repoName, sha=None,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                  startDescription=None, endDescription=None,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                 baseURL=None):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                 baseURL=None, context=None):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         Token for GitHub API.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -71,6 +72,7 @@ def __init__(self, token, repoOwner, repoName, sha=None,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self._sha = sha or Interpolate("%(src::revision)s")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self._repoOwner = repoOwner
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self._repoName = repoName
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        self._context = context or Interpolate("buildbot/%(prop:buildername)s")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self._startDescription = startDescription or "Build started."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self._endDescription = endDescription or "Build done."
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -166,10 +168,11 @@ def _getGitHubRepoProperties(self, build):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         Return a dictionary with GitHub related properties from `build`.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        repoOwner, repoName, sha = yield defer.gatherResults([
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        repoOwner, repoName, sha, context = yield defer.gatherResults([
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             build.render(self._repoOwner),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             build.render(self._repoName),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             build.render(self._sha),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            build.render(self._context),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         ])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         if not repoOwner or not repoName:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -185,6 +188,7 @@ def _getGitHubRepoProperties(self, build):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'sha': sha,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': self._status.getURLForThing(build),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'buildNumber': str(build.getNumber()),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': context,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         defer.returnValue(result)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -200,6 +204,7 @@ def _sendGitHubStatus(self, status):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             state=status['state'].encode('utf-8'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             target_url=status['targetURL'].encode('utf-8'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             description=status['description'].encode('utf-8'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            context=status['context'].encode('utf-8'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         success_message = (
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/test/unit/test_status_github.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/test/unit/test_status_github.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -132,6 +132,8 @@ def test_initialization_required_arguments(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.assertEqual(status._sha, Interpolate("%(src::revision)s"))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.assertEqual(status._startDescription, "Build started.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.assertEqual(status._endDescription, "Build done.")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        self.assertEqual(status._context,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                         Interpolate("buildbot/%(prop:buildername)s"))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     def test_custom_github_url(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -271,6 +273,7 @@ def test_sendStartStatus_ok(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'sha': '123',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': 'http://example.tld',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'buildNumber': '1',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': 'context',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._sendGitHubStatus = Mock(return_value=defer.succeed(None))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.build.getTimes = lambda: (1, None)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -286,6 +289,7 @@ def test_sendStartStatus_ok(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'sha': '123',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': 'http://example.tld',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'buildNumber': '1',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': 'context',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             # Augmented arguments.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'state': 'pending',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'description': 'Build started.',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -330,6 +334,7 @@ def test_sendFinishStatus_ok(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'sha': '123',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': 'http://example.tld',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'buildNumber': '1',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': 'context',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._sendGitHubStatus = Mock(return_value=defer.succeed(None))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.build.getTimes = lambda: (1, 3)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -346,6 +351,7 @@ def test_sendFinishStatus_ok(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'sha': '123',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': 'http://example.tld',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'buildNumber': '1',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': 'context',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             # Augmented arguments.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'state': 'success',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'description': 'Build done.',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -398,6 +404,7 @@ def test_getGitHubRepoProperties_ok(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._repoOwner = Interpolate('owner')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._repoName = Interpolate('name')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._sha = Interpolate('sha')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        self.status._context = Interpolate('context')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._status = Mock()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._status.getURLForThing = lambda build: 'http://example.org'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.build.getNumber = lambda: 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -411,8 +418,8 @@ def test_getGitHubRepoProperties_ok(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'repoOwner': 'owner',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'sha': 'sha',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': 'http://example.org',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        },
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            result)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': 'context',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        }, result)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     def test_getGitHubState(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         """
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -435,6 +442,7 @@ def test_sendGitHubStatus_success(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'state': u'state-resum\xe9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': u'targetURL-resum\xe9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'description': u'description-resum\xe9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': u'context-resum\xe9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._github.repos.createStatus = Mock(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             return_value=defer.succeed(None))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -450,6 +458,7 @@ def test_sendGitHubStatus_success(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             state='state-resum\xc3\xa9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             target_url='targetURL-resum\xc3\xa9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             description='description-resum\xc3\xa9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            context='context-resum\xc3\xa9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.assertLog(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -468,6 +477,7 @@ def test_sendGitHubStatus_error(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'state': u'state',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'targetURL': u'targetURL',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             'description': u'description',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            'context': u'context',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         error = MarkerError('fail-send-status')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         self.status._github.repos.createStatus = Mock(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- docs/manual/cfg-statustargets.rst.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ docs/manual/cfg-statustargets.rst
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1564,10 +1564,12 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     repoOwner = util.Interpolate("%(prop:github_repo_owner)s")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     repoName = util.Interpolate("%(prop:github_repo_name)s")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     sha = util.Interpolate("%(src::revision)s")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+    context = util.Interpolate("buildbot/%(prop:buildername)s")
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     gs = status.GitHubStatus(token='githubAPIToken',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                              repoOwner=repoOwner,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                              repoName=repoName,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                              sha=sha,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                             context=context,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                              startDescription='Build started.',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                              endDescription='Build done.')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     buildbot_bbtools = util.BuilderConfig(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -1599,6 +1601,9 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- In case any of `repoOwner`, `repoName` or `sha` returns `None`, `False` or empty string, the plugin will skip sending the status.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+The `context` argument is passed to GitHub to differentiate between statuses. A static string can be passed or :class:`Interpolate` for dynamic substitution.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+The default context is `buildbot/%(prop:buildername)s`.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- You can define custom start and end build messages using the `startDescription` and `endDescription` optional interpolation arguments.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Starting with Buildbot version 0.8.11, :class:`GitHubStatus` supports additional parameter -- ``baseURL`` -- that allows to specify a different API base endpoint.
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/org.macports.buildmaster.template.plist b/devel/buildbot/files/org.macports.buildmaster.template.plist
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index c03f14a..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/org.macports.buildmaster.template.plist
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,34 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-<?xml version="1.0" encoding="UTF-8"?>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-<plist version="1.0">
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-<dict>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>Disabled</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <true/>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>EnvironmentVariables</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <dict>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <key>PATH</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <string>@PREFIX@/bin:/usr/local/bin:/sbin:/usr/sbin:/bin:/usr/bin</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   </dict>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>Label</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <string>org.macports.buildmaster</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>ProgramArguments</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <array>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <string>@PREFIX@/bin/twistd-2.7</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <string>--nodaemon</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <string>--no_save</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <string>--python=buildbot.tac</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <string>--pidfile=buildmaster.pid</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   </array>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>RunAtLoad</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <true/>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>UserName</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <string>aUserName</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>WorkingDirectory</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <string>/Users/pathToSlave</string>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <key>KeepAlive</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   <dict>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <key>SuccessfulExit</key>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-           <false/>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   </dict>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-</dict>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-</plist>
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/patch-allowRecent_SQA_Migrate.diff b/devel/buildbot/files/patch-allowRecent_SQA_Migrate.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index c20d3e7..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/patch-allowRecent_SQA_Migrate.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,60 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Patch based on...
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 074c9fbadf169bb6cbc4fe2176be429a44170794 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: "Dustin J. Mitchell" <dustin@buildbot.net>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Tue, 2 Feb 2016 01:20:07 +0000
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Update SQLAlchemy and SQLAlchemy-Migrate version requirements
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- buildbot/db/enginestrategy.py             | 2 +-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- docs/manual/installation/requirements.rst | 5 +++--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- docs/relnotes/index.rst                   | 3 +++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- setup.py                                  | 4 ++--
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 4 files changed, 9 insertions(+), 5 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git buildbot/db/enginestrategy.py buildbot/db/enginestrategy.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index ee0cc42..4b3a57e 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/db/enginestrategy.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/db/enginestrategy.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -187,7 +187,7 @@ class BuildbotEngineStrategy(strategies.ThreadLocalEngineStrategy):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             version_digits = re.sub('[^0-9.]', '', version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             version_tup = tuple(map(int, version_digits.split('.')))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         except TypeError:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            pass
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            return  # unparseable -- oh well
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         if version_tup < (0, 6):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             raise RuntimeError("SQLAlchemy version %s is too old" % (version,))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git docs/relnotes/index.rst docs/relnotes/index.rst
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 6930aab..17bc7ab 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- docs/relnotes/index.rst
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ docs/relnotes/index.rst
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -29,6 +29,9 @@ Deprecations, Removals, and Non-Compatible Changes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- * Note that Buildbot is not yet compatible with MySQL-5.7.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-   See :bug:`3421` for status and to help out.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+* The ``buildbot`` Python dist now (finally) requires SQLAlchemy-0.8.0 or later and SQLAlchemy-Migrate-0.9.0 or later.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  While the old pinned versions (0.7.10 and 0.7.2, respectively) still work, this compatibility is no longer tested and this configuration should be considered deprecated.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- Changes for Developers
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ~~~~~~~~~~~~~~~~~~~~~~
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff -u setup.py.orig setup.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- setup.py.orig  2015-04-21 01:53:41.000000000 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ setup.py       2016-02-09 14:39:08.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -381,11 +381,8 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     setup_args['install_requires'] += [
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        # sqlalchemy-0.8 betas show issues with sqlalchemy-0.7.2, so stick to 0.7.10
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        'sqlalchemy >= 0.6, <= 0.7.10',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        # buildbot depends on sqlalchemy internals, and this is the tested
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        # version.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        'sqlalchemy-migrate==0.7.2',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        'sqlalchemy>=0.8.0',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        'sqlalchemy-migrate>=0.9',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         'python-dateutil>=1.5',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     ]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     setup_args['tests_require'] = [
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-2.6.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/patch-buildbot-status-web-console.py.diff b/devel/buildbot/files/patch-buildbot-status-web-console.py.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 4a7fa86..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/patch-buildbot-status-web-console.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,11 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/status/web/console.py.orig    2015-04-21 00:53:41.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/status/web/console.py 2016-08-05 08:59:02.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -316,7 +316,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         for tag in builderList:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             count += len(builderList[tag])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        tags = sorted(builderList.keys())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        tags = util.naturalSort(builderList.keys())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cs = []
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/patch-buildbot-status-web-grid.py.diff b/devel/buildbot/files/patch-buildbot-status-web-grid.py.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index a445b5b..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/patch-buildbot-status-web-grid.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,28 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/status/web/grid.py.orig       2015-04-21 00:53:41.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/status/web/grid.py    2016-08-05 15:42:30.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -13,6 +13,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # Copyright Buildbot Team Members
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+from buildbot import util
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- from buildbot.sourcestamp import SourceStamp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- from buildbot.status.web.base import HtmlResource
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- from buildbot.status.web.base import build_get_class
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -204,7 +205,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                     'stamps': [map(SourceStamp.asDict, sstamp) for sstamp in stamps],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                     })
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        sortedBuilderNames = sorted(status.getBuilderNames())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        sortedBuilderNames = util.naturalSort(status.getBuilderNames())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cxt['builders'] = []
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -273,7 +274,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                     'stamps': [map(SourceStamp.asDict, sstamp) for sstamp in stamps],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                     })
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        sortedBuilderNames = sorted(status.getBuilderNames())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        sortedBuilderNames = util.naturalSort(status.getBuilderNames())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cxt['sorted_builder_names'] = sortedBuilderNames
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cxt['builder_builds'] = builder_builds = []
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/patch-buildbot-status-web-waterfall.py.diff b/devel/buildbot/files/patch-buildbot-status-web-waterfall.py.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 2a14cee..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/patch-buildbot-status-web-waterfall.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,19 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/status/web/waterfall.py.orig  2015-04-21 00:53:41.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/status/web/waterfall.py       2016-08-06 11:19:40.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -325,6 +325,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         for bldr in builders:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             tags = bldr.getTags()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             allTags.update(tags or [])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        allTags = util.naturalSort(list(allTags))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cxt['show_tags'] = show_tags
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         cxt['all_tags'] = allTags
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -585,7 +586,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         for builderName in builderNames:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             builder = status.getBuilder(builderName)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             tags.update(builder.getTags() or [])
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        tags = sorted(tags)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        tags = util.naturalSort(list(tags))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         ctx['tags'] = tags
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         template = request.site.buildbot_service.templates.get_template("waterfall.html")
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot/files/patch-buildbot-steps-trigger.py.diff b/devel/buildbot/files/patch-buildbot-steps-trigger.py.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 192859b..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot/files/patch-buildbot-steps-trigger.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,36 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-https://github.com/buildbot/buildbot/pull/2052
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-https://github.com/buildbot/buildbot/commit/246df8f53945f68aa3ef8c33254ca51dd4794a8e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- buildbot/steps/trigger.py.orig
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ buildbot/steps/trigger.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -181,11 +181,11 @@ def start(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             return
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         was_exception = was_failure = False
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        brids = {}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        brids = []
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         for was_cb, results in rclist:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             if isinstance(results, tuple):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 results, some_brids = results
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                brids.update(some_brids)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                brids.extend(some_brids.items())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             if not was_cb:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 was_exception = True
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -207,7 +207,7 @@ def start(self):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             def add_links(res):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 # reverse the dictionary lookup for brid to builder name
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--                brid_to_bn = dict((_brid, _bn) for _bn, _brid in brids.iteritems())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+                brid_to_bn = dict((bt[1], bt[0]) for bt in brids)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                 for was_cb, builddicts in res:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                     if was_cb:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -218,7 +218,7 @@ def add_links(res):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                             url = master.status.getURLForBuild(bn, num)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                             self.step_status.addURL("%s #%d" % (bn, num), url)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--            builddicts = [master.db.builds.getBuildsForRequest(br) for br in brids.values()]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+            builddicts = [master.db.builds.getBuildsForRequest(br[1]) for br in brids]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             res = yield defer.DeferredList(builddicts, consumeErrors=1)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             add_links(res)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span></pre><pre style='margin:0'>

</pre>