<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/60d82b66894192b9e02a24860ef1e19bdaf4b962">https://github.com/macports/macports-ports/commit/60d82b66894192b9e02a24860ef1e19bdaf4b962</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 60d82b66894 buildbot-0.8: Update to 0.8.14
</span>60d82b66894 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 60d82b66894192b9e02a24860ef1e19bdaf4b962
</span>Author: Ryan Schmidt <ryandesign@macports.org>
AuthorDate: Wed Mar 3 04:08:35 2021 -0600

<span style='display:block; white-space:pre;color:#404040;'>    buildbot-0.8: Update to 0.8.14
</span>---
 devel/buildbot-0.8/Portfile                        |  36 ++---
 .../buildbot-0.8/files/GitHubStatus-context.patch  | 161 ---------------------
 .../files/patch-allowRecent_SQA_Migrate.diff       |  42 +-----
 .../patch-buildbot-status-web-console.py.diff      |   1 +
 .../files/patch-buildbot-status-web-grid.py.diff   |   9 +-
 .../patch-buildbot-status-web-waterfall.py.diff    |   1 +
 .../files/patch-buildbot-steps-trigger.py.diff     |  36 -----
 devel/buildbot-0.8/files/setHeader.patch           |  37 +++++
 8 files changed, 69 insertions(+), 254 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot-0.8/Portfile b/devel/buildbot-0.8/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 7a99736749a..c5623e115c6 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot-0.8/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,11 +4,11 @@ PortSystem              1.0
</span> PortGroup               python 1.0
 
 name                    buildbot-0.8
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version                 0.8.12
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision                9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums               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:#e0ffe0;'>+version                 0.8.14
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision                0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums               rmd160  24f50e94f78cbfee31448f348365e4aa86322550 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  331efd07bd7522c222a8fb258801e8d78332c88d778ee76416b9e1028676e964 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    4840110
</span> 
 set branch              [join [lrange [split ${version} .] 0 1] .]
 categories              devel python
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -17,18 +17,17 @@ supported_archs         noarch
</span> license                 GPL-2
 maintainers             {ryandesign @ryandesign} openmaintainer
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-description             buildmaster for buildbot continuous integration system
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description             buildmaster for Buildbot continuous integration system
</span> 
 long_description        Buildbot is a system to automate the compile/test \
                         cycle of most software projects to validate code \
                         changes. This port provides version 0.8.x of the \
                         master part of the system. Subsequent versions have \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        a redesigned architecture and will be available soon \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        in the buildbot port.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        a redesigned architecture and are available in the \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        buildbot port.
</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;'>-distname                buildbot-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage                https://buildbot.net
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+python.rootname         buildbot
</span> dist_subdir             buildbot
 
 python.default_version  27
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -39,12 +38,11 @@ depends_lib-append      port:py${python.version}-dateutil \
</span>                         port:py${python.version}-sqlalchemy-migrate \
                         port:py${python.version}-twisted
 
<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:#e0ffe0;'>+patchfiles-append       patch-allowRecent_SQA_Migrate.diff \
</span>                         patch-buildbot-status-web-console.py.diff \
                         patch-buildbot-status-web-grid.py.diff \
                         patch-buildbot-status-web-waterfall.py.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-buildbot-steps-trigger.py.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        setHeader.patch
</span> 
 build.env               NO_INSTALL_REQS=1
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -53,6 +51,12 @@ set docdir              ${prefix}/share/doc/${subport}
</span> set plistfile           org.macports.buildmaster.template.plist
 
 post-extract {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Copy "group" permission to "others", which is empty.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    fs-traverse item ${worksrcpath} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        set p [file attributes ${item} -permissions]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        file attributes ${item} -permissions [format {0%o} [expr {(${p} >> 3 & 7) | ${p}}]]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     file mkdir ${worksrcpath}/macports
     copy ${filespath}/${plistfile} ${worksrcpath}/macports/${plistfile}
 }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -76,9 +80,7 @@ test.env                PYTHONPATH=.
</span> test.cmd                ${prefix}/bin/trial-${python.branch}
 test.target             buildbot.test
 
<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/buildbot/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex         buildbot\/([quotemeta ${branch}](?:\\.\\d+)*)/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex         ${python.rootname}-([quotemeta ${branch}]\[0-9.\]+)[quotemeta ${extract.suffix}]
</span> 
 notes "
 An example launchd plist file is available in ${sharedir}. After you have\
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot-0.8/files/GitHubStatus-context.patch b/devel/buildbot-0.8/files/GitHubStatus-context.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 9013989613c..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/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-0.8/files/patch-allowRecent_SQA_Migrate.diff b/devel/buildbot-0.8/files/patch-allowRecent_SQA_Migrate.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index c20d3e7e70c..316ff1ce06b 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/files/patch-allowRecent_SQA_Migrate.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot-0.8/files/patch-allowRecent_SQA_Migrate.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,18 +1,6 @@
</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:#e0ffe0;'>+Support SQLAlchemy 0.8.0+ and SQLAlchemy-Migrate 0.9.0+. Backport of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+relevant bits of this commit which went into 0.9.0b7:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/buildbot/buildbot/commit/074c9fbadf169bb6cbc4fe2176be429a44170794
</span> --- buildbot/db/enginestrategy.py
 +++ buildbot/db/enginestrategy.py
 @@ -187,7 +187,7 @@ class BuildbotEngineStrategy(strategies.ThreadLocalEngineStrategy):
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -24,24 +12,9 @@ index ee0cc42..4b3a57e 100644
</span>  
          if version_tup < (0, 6):
              raise RuntimeError("SQLAlchemy version %s is too old" % (version,))
<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:#e0ffe0;'>+--- setup.py.orig  2016-08-09 03:24:15.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ setup.py       2021-03-03 01:51:32.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -387,11 +387,8 @@
</span>          ]
  
      setup_args['install_requires'] += [
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -55,6 +28,3 @@ diff -u setup.py.orig setup.py
</span>          'python-dateutil>=1.5',
      ]
      setup_args['tests_require'] = [
<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-0.8/files/patch-buildbot-status-web-console.py.diff b/devel/buildbot-0.8/files/patch-buildbot-status-web-console.py.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 4a7fa86070a..b1701454d59 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/files/patch-buildbot-status-web-console.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot-0.8/files/patch-buildbot-status-web-console.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,3 +1,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Sort tags in natural order in the console.
</span> --- buildbot/status/web/console.py.orig   2015-04-21 00:53:41.000000000 -0500
 +++ buildbot/status/web/console.py     2016-08-05 08:59:02.000000000 -0500
 @@ -316,7 +316,7 @@
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot-0.8/files/patch-buildbot-status-web-grid.py.diff b/devel/buildbot-0.8/files/patch-buildbot-status-web-grid.py.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index a445b5bcc64..f0a97adac7e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/files/patch-buildbot-status-web-grid.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot-0.8/files/patch-buildbot-status-web-grid.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,5 +1,6 @@
</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:#e0ffe0;'>+Sort builder names in natural order in the grid.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- buildbot/status/web/grid.py.orig       2016-07-15 06:42:03.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ buildbot/status/web/grid.py    2021-03-03 01:51:32.000000000 -0600
</span> @@ -13,6 +13,7 @@
  #
  # Copyright Buildbot Team Members
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -8,7 +9,7 @@
</span>  from buildbot.sourcestamp import SourceStamp
  from buildbot.status.web.base import HtmlResource
  from buildbot.status.web.base import build_get_class
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -204,7 +205,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -205,7 +206,7 @@
</span>                      'stamps': [map(SourceStamp.asDict, sstamp) for sstamp in stamps],
                      })
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -17,7 +18,7 @@
</span>  
          cxt['builders'] = []
  
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -273,7 +274,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -274,7 +275,7 @@
</span>                      'stamps': [map(SourceStamp.asDict, sstamp) for sstamp in stamps],
                      })
  
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot-0.8/files/patch-buildbot-status-web-waterfall.py.diff b/devel/buildbot-0.8/files/patch-buildbot-status-web-waterfall.py.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 2a14cee9545..8ce7509ef65 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/files/patch-buildbot-status-web-waterfall.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot-0.8/files/patch-buildbot-status-web-waterfall.py.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,3 +1,4 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Sort tags in natural order in the waterfall.
</span> --- buildbot/status/web/waterfall.py.orig 2015-04-21 00:53:41.000000000 -0500
 +++ buildbot/status/web/waterfall.py   2016-08-06 11:19:40.000000000 -0500
 @@ -325,6 +325,7 @@
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot-0.8/files/patch-buildbot-steps-trigger.py.diff b/devel/buildbot-0.8/files/patch-buildbot-steps-trigger.py.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 192859bc99e..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/buildbot-0.8/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><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/buildbot-0.8/files/setHeader.patch b/devel/buildbot-0.8/files/setHeader.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..cce69945efc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/buildbot-0.8/files/setHeader.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,37 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Always call setHeader with a string, not an int. Fixes "500 Internal
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Server Error" when performing HEAD requests to a buildmaster that uses
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Twisted 19 or later. Simplified adaptation of this commit from 0.9.11:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/buildbot/buildbot/pull/3515/commits/5be61e8df842897827cbea50349d91d63c174fd8
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- buildbot/status/web/base.py.orig       2016-07-15 06:42:03.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ buildbot/status/web/base.py    2021-03-03 01:33:41.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -398,7 +398,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 data = data.encode("utf-8")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             request.setHeader("content-type", self.contentType)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             if request.method == "HEAD":
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                request.setHeader("content-length", len(data))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                request.setHeader("content-length", str(len(data)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                 return ''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return data
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         d.addCallback(handle)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- buildbot/status/web/feeds.py.orig      2016-07-15 06:42:03.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ buildbot/status/web/feeds.py   2021-03-03 01:33:49.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -57,7 +57,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = self.content(request)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         request.setHeader("content-type", self.contentType)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if request.method == "HEAD":
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            request.setHeader("content-length", len(data))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            request.setHeader("content-length", str(len(data)))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             return ''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return data
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- buildbot/status/web/logs.py.orig       2016-07-15 06:42:03.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ buildbot/status/web/logs.py    2021-03-03 01:35:08.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -115,7 +115,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         self._setContentType(req)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         # vague approximation, ignores markup
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        req.setHeader("content-length", self.original.length)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        req.setHeader("content-length", str(self.original.length))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return ''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def render_GET(self, req):
</span></pre><pre style='margin:0'>

</pre>