Date: Wednesday, December 8, 2021 @ 02:28:46 Author: foutrelis Revision: 1065584
Fix tests for Python 3.10 Added: python-daemon/trunk/python310.patch python-daemon/trunk/testtools-2.5.0.patch Modified: python-daemon/trunk/PKGBUILD Deleted: python-daemon/trunk/python-daemon-2.3.0-fix-py3.10.patch --------------------------------------+ PKGBUILD | 15 - python-daemon-2.3.0-fix-py3.10.patch | 285 --------------------------------- python310.patch | 31 +++ testtools-2.5.0.patch | 22 ++ 4 files changed, 60 insertions(+), 293 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2021-12-08 02:20:23 UTC (rev 1065583) +++ PKGBUILD 2021-12-08 02:28:46 UTC (rev 1065584) @@ -13,13 +13,16 @@ makedepends=('python-setuptools' 'python-docutils' 'python-lockfile' 'python-pip') checkdepends=('python-mock' 'python-testscenarios' 'python-wheel') source=(https://files.pythonhosted.org/packages/source/p/$pkgname/$pkgname-$pkgver.tar.gz - python-daemon-2.3.0-fix-py3.10.patch) + testtools-2.5.0.patch + python310.patch) sha256sums=('bda993f1623b1197699716d68d983bb580043cf2b8a66a01274d9b8297b0aeaf' - '3e6091f4eea62ec738c424867766e2755155b807fb58622e07e565ae7b97c1b6') + '7f8dfbe9e01edcb19ebede5580d448a995b721ee3b56ca1d353f58c36416c980' + '1777e34936ed5d45001e9994f563fdf8c9e2045b667223f1eebf896031627ddc') -build() { +prepare() { cd "${srcdir}"/python-daemon-$pkgver - patch -Np1 -i ${srcdir}/python-daemon-2.3.0-fix-py3.10.patch + patch -Np1 -i ../testtools-2.5.0.patch + patch -Np1 -i ../python310.patch } build() { @@ -29,10 +32,6 @@ check() { cd python-daemon-$pkgver - # fix for >=testtools-2.5.0 - sed -e 's/testtools.helpers.safe_hasattr/hasattr/' \ - -i test/test_metadata.py || die - python setup.py test } Deleted: python-daemon-2.3.0-fix-py3.10.patch =================================================================== --- python-daemon-2.3.0-fix-py3.10.patch 2021-12-08 02:20:23 UTC (rev 1065583) +++ python-daemon-2.3.0-fix-py3.10.patch 2021-12-08 02:28:46 UTC (rev 1065584) @@ -1,285 +0,0 @@ -<!DOCTYPE html> -<html lang='en'> -<head> -<title>python-daemon-2.3.0-fix-py3.10.patch « files « python-daemon « dev-python - repo/gentoo.git - Official Gentoo ebuild repository</title> -<meta name='generator' content='cgit v1.2.3-18-g5258'/> -<meta name='robots' content='index,follow'/> -<link rel='stylesheet' type='text/css' href='/cgit.css'/> -<link rel='shortcut icon' href='//www.gentoo.org/favicon.ico'/> -<link rel='alternate' title='Atom feed' href='https://gitweb.gentoo.org/repo/gentoo.git/atom/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch?h=master' type='application/atom+xml'/> -<link rel='vcs-git' href='https://anongit.gentoo.org/git/repo/gentoo.git' title='repo/gentoo.git Git repository'/> -<link rel='vcs-git' href='git+ssh://g...@git.gentoo.org/repo/gentoo.git' title='repo/gentoo.git Git repository'/> -<meta name="viewport" content="width=device-width, initial-scale=1.0"> -<meta name="theme-color" content="#54487a"> -<meta name="description" content="Browse the Gentoo Git repositories"> -<link href="https://assets.gentoo.org/tyrian/v2/tyrian.min.css" rel="stylesheet" media="screen"> -</head> -<body> -<header> - <div class="site-title"> - <div class="container"> - <div class="row justify-content-between"> - <div class="logo"> - <a href="/" title="Back to the homepage" class="site-logo"> - <img src="https://assets.gentoo.org/tyrian/v2/site-logo.png" alt="Gentoo" srcset="https://assets.gentoo.org/tyrian/v2/site-logo.svg"> - </a> - <span class="site-label">GitWeb</span> - </div> - <div class="site-title-buttons"> - <div class="btn-group btn-group-sm"> - <a href="https://get.gentoo.org/" role="button" class="btn get-gentoo"><span class="fa fa-fw fa-download"></span> - <strong>Get Gentoo!</strong></a> - <div class="btn-group btn-group-sm"> - <a class="btn gentoo-org-sites dropdown-toggle" data-toggle="dropdown" data-target="#" href="#"> - <span class="fa fa-fw fa-map-o"></span> <span class="d-none d-sm-inline">gentoo.org sites</span> - <span class="caret"></span> - </a> - <div class="dropdown-menu dropdown-menu-right"> - <a class="dropdown-item" href="https://www.gentoo.org/" title="Main Gentoo website"><span class="fa fa-home fa-fw"></span> - gentoo.org</a> - <a class="dropdown-item" href="https://wiki.gentoo.org/" title="Find and contribute documentation"><span class="fa fa-file-text-o fa-fw"></span> - Wiki</a> - <a class="dropdown-item" href="https://bugs.gentoo.org/" title="Report issues and find common issues"><span class="fa fa-bug fa-fw"></span> - Bugs</a> - <a class="dropdown-item" href="https://forums.gentoo.org/" title="Discuss with the community"><span class="fa fa-comments-o fa-fw"></span> - Forums</a> - <a class="dropdown-item" href="https://packages.gentoo.org/" title="Find software for your Gentoo"><span class="fa fa-hdd-o fa-fw"></span> - Packages</a> - <div class="dropdown-divider"></div> - <a class="dropdown-item" href="https://planet.gentoo.org/" title="Find out what's going on in the developer community"><span class="fa fa-rss fa-fw"></span> - Planet</a> - <a class="dropdown-item" href="https://archives.gentoo.org/" title="Read up on past discussions"><span class="fa fa-archive fa-fw"></span> - Archives</a> - <a class="dropdown-item" href="https://sources.gentoo.org/" title="Browse our source code"><span class="fa fa-code fa-fw"></span> - Sources</a> - <div class="dropdown-divider"></div> - <a class="dropdown-item" href="https://infra-status.gentoo.org/" title="Get updates on the services provided by Gentoo"><span class="fa fa-server fa-fw"></span> - Infra Status</a> - </div> - </div> - </div> - </div> - </div> - </div> - </div> - <nav class="tyrian-navbar navbar navbar-dark navbar-expand-lg bg-primary" role="navigation"> - <div class="container"> - <div class="navbar-header"> - <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbar-main-collapse" aria-controls="navbar-main-collapse" aria-expanded="false" aria-label="Toggle navigation"> - <span class="navbar-toggler-icon"></span> - </button> - </div> - <div class="collapse navbar-collapse navbar-main-collapse" id="navbar-main-collapse"> - <ul class="navbar-nav mr-auto"> - <li class="nav-item"><a class="nav-link" href="/">Home</a></li> - <li class="nav-item"><a class="nav-link" href="/repo/gentoo.git">Gentoo Repository</a></li> - <li class="nav-item"><a class="nav-link" href="/repo/">Repositories</a></li> - <li class="nav-item"><a class="nav-link" href="/proj/">Projects</a></li> - <li class="nav-item"><a class="nav-link" href="/dev/">Developer Overlays</a></li> - <li class="nav-item"><a class="nav-link" href="/user/">User Overlays</a></li> - <li class="nav-item"><a class="nav-link" href="/data/">Data</a></li> - <li class="nav-item"><a class="nav-link" href="/sites/">Websites</a></li> - </ul> - </div> - </div> - </nav> -</header> - -<div class="container pb-5"> - <div class="row"> - <div class="col-md-12"> -<div id='cgit'><table id='header'> -<tr> -<td class='logo' rowspan='2'><a href='/'><img src='/cgit.png' alt='cgit logo'/></a></td> -<td class='main'><a href='/'>index</a> : <a title='repo/gentoo.git' href='/repo/gentoo.git/'>repo/gentoo.git</a></td><td class='form'><form method='get'> -<select name='h' onchange='this.form.submit();'> -<option value='master' selected='selected'>master</option> -</select> <input type='submit' value='switch'/></form></td></tr> -<tr><td class='sub'>Official Gentoo ebuild repository</td><td class='sub right'>Infrastructure team <infrastruct...@gentoo.org></td></tr></table> -<table class='tabs'><tr><td> -<a href='/repo/gentoo.git/'>summary</a><a href='/repo/gentoo.git/refs/'>refs</a><a href='/repo/gentoo.git/log/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'>log</a><a class='active' href='/repo/gentoo.git/tree/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'>tree</a><a href='/repo/gentoo.git/commit/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'>commit</a><a href='/repo/gentoo.git/diff/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'>diff</a></td><td class='form'><form class='right' method='get' action='/repo/gentoo.git/log/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'> -<select name='qt'> -<option value='grep'>log msg</option> -<option value='author'>author</option> -<option value='committer'>committer</option> -<option value='range'>range</option> -</select> -<input class='txt' type='search' size='10' name='q' value=''/> -<input type='submit' value='search'/> -</form> -</td></tr></table> -<div class='path'>path: <a href='/repo/gentoo.git/tree/'>root</a>/<a href='/repo/gentoo.git/tree/dev-python'>dev-python</a>/<a href='/repo/gentoo.git/tree/dev-python/python-daemon'>python-daemon</a>/<a href='/repo/gentoo.git/tree/dev-python/python-daemon/files'>files</a>/<a href='/repo/gentoo.git/tree/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'>python-daemon-2.3.0-fix-py3.10.patch</a></div><div class='content'>blob: 4fd082dc8f775219daebd98c0fcc76ec8e553478 (<a href='/repo/gentoo.git/plain/dev-python/python-daemon/files/python-daemon-2.3.0-fix-py3.10.patch'>plain</a>) -<table summary='blob content' class='blob'> -<tr><td class='linenumbers'><pre><a id='n1' href='#n1'>1</a> -<a id='n2' href='#n2'>2</a> -<a id='n3' href='#n3'>3</a> -<a id='n4' href='#n4'>4</a> -<a id='n5' href='#n5'>5</a> -<a id='n6' href='#n6'>6</a> -<a id='n7' href='#n7'>7</a> -<a id='n8' href='#n8'>8</a> -<a id='n9' href='#n9'>9</a> -<a id='n10' href='#n10'>10</a> -<a id='n11' href='#n11'>11</a> -<a id='n12' href='#n12'>12</a> -<a id='n13' href='#n13'>13</a> -<a id='n14' href='#n14'>14</a> -<a id='n15' href='#n15'>15</a> -<a id='n16' href='#n16'>16</a> -<a id='n17' href='#n17'>17</a> -<a id='n18' href='#n18'>18</a> -<a id='n19' href='#n19'>19</a> -<a id='n20' href='#n20'>20</a> -<a id='n21' href='#n21'>21</a> -<a id='n22' href='#n22'>22</a> -<a id='n23' href='#n23'>23</a> -<a id='n24' href='#n24'>24</a> -<a id='n25' href='#n25'>25</a> -<a id='n26' href='#n26'>26</a> -<a id='n27' href='#n27'>27</a> -<a id='n28' href='#n28'>28</a> -</pre></td> -<td class='lines'><pre><code><style>pre { line-height: 125%; } -td.linenos .normal { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } -span.linenos { color: inherit; background-color: transparent; padding-left: 5px; padding-right: 5px; } -td.linenos .special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } -span.linenos.special { color: #000000; background-color: #ffffc0; padding-left: 5px; padding-right: 5px; } -.highlight .hll { background-color: #ffffcc } -.highlight .c { color: #888888 } /* Comment */ -.highlight .err { color: #a61717; background-color: #e3d2d2 } /* Error */ -.highlight .k { color: #008800; font-weight: bold } /* Keyword */ -.highlight .ch { color: #888888 } /* Comment.Hashbang */ -.highlight .cm { color: #888888 } /* Comment.Multiline */ -.highlight .cp { color: #cc0000; font-weight: bold } /* Comment.Preproc */ -.highlight .cpf { color: #888888 } /* Comment.PreprocFile */ -.highlight .c1 { color: #888888 } /* Comment.Single */ -.highlight .cs { color: #cc0000; font-weight: bold; background-color: #fff0f0 } /* Comment.Special */ -.highlight .gd { color: #000000; background-color: #ffdddd } /* Generic.Deleted */ -.highlight .ge { font-style: italic } /* Generic.Emph */ -.highlight .gr { color: #aa0000 } /* Generic.Error */ -.highlight .gh { color: #333333 } /* Generic.Heading */ -.highlight .gi { color: #000000; background-color: #ddffdd } /* Generic.Inserted */ -.highlight .go { color: #888888 } /* Generic.Output */ -.highlight .gp { color: #555555 } /* Generic.Prompt */ -.highlight .gs { font-weight: bold } /* Generic.Strong */ -.highlight .gu { color: #666666 } /* Generic.Subheading */ -.highlight .gt { color: #aa0000 } /* Generic.Traceback */ -.highlight .kc { color: #008800; font-weight: bold } /* Keyword.Constant */ -.highlight .kd { color: #008800; font-weight: bold } /* Keyword.Declaration */ -.highlight .kn { color: #008800; font-weight: bold } /* Keyword.Namespace */ -.highlight .kp { color: #008800 } /* Keyword.Pseudo */ -.highlight .kr { color: #008800; font-weight: bold } /* Keyword.Reserved */ -.highlight .kt { color: #888888; font-weight: bold } /* Keyword.Type */ -.highlight .m { color: #0000DD; font-weight: bold } /* Literal.Number */ -.highlight .s { color: #dd2200; background-color: #fff0f0 } /* Literal.String */ -.highlight .na { color: #336699 } /* Name.Attribute */ -.highlight .nb { color: #003388 } /* Name.Builtin */ -.highlight .nc { color: #bb0066; font-weight: bold } /* Name.Class */ -.highlight .no { color: #003366; font-weight: bold } /* Name.Constant */ -.highlight .nd { color: #555555 } /* Name.Decorator */ -.highlight .ne { color: #bb0066; font-weight: bold } /* Name.Exception */ -.highlight .nf { color: #0066bb; font-weight: bold } /* Name.Function */ -.highlight .nl { color: #336699; font-style: italic } /* Name.Label */ -.highlight .nn { color: #bb0066; font-weight: bold } /* Name.Namespace */ -.highlight .py { color: #336699; font-weight: bold } /* Name.Property */ -.highlight .nt { color: #bb0066; font-weight: bold } /* Name.Tag */ -.highlight .nv { color: #336699 } /* Name.Variable */ -.highlight .ow { color: #008800 } /* Operator.Word */ -.highlight .w { color: #bbbbbb } /* Text.Whitespace */ -.highlight .mb { color: #0000DD; font-weight: bold } /* Literal.Number.Bin */ -.highlight .mf { color: #0000DD; font-weight: bold } /* Literal.Number.Float */ -.highlight .mh { color: #0000DD; font-weight: bold } /* Literal.Number.Hex */ -.highlight .mi { color: #0000DD; font-weight: bold } /* Literal.Number.Integer */ -.highlight .mo { color: #0000DD; font-weight: bold } /* Literal.Number.Oct */ -.highlight .sa { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Affix */ -.highlight .sb { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Backtick */ -.highlight .sc { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Char */ -.highlight .dl { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Delimiter */ -.highlight .sd { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Doc */ -.highlight .s2 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Double */ -.highlight .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ -.highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ -.highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ -.highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ -.highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ -.highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ -.highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ -.highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ -.highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ -.highlight .vc { color: #336699 } /* Name.Variable.Class */ -.highlight .vg { color: #dd7700 } /* Name.Variable.Global */ -.highlight .vi { color: #3333bb } /* Name.Variable.Instance */ -.highlight .vm { color: #336699 } /* Name.Variable.Magic */ -.highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */</style><div class="highlight"><pre><span></span>https://pagure.io/python-daemon/c/0c67a3c6407fbf4483ccfc94a7a0d78cf3379296 - -From: Miro Hrončok <m...@hroncok.cz> -Date: Sep 29 2021 10:05:27 +0000 -Subject: Remove incorrect double-patch of objects in test cases. - -The specific test cases relying on the patches, already are decorated -to patch the specific attributes needed. We don't need a general patch -of the attributes in the test case setup. - -Signed-off-by: Ben Finney <ben+pyt...@benfinney.id.au> - -<span class="gd">--- a/test/test_pidfile.py</span> -<span class="gi">+++ b/test/test_pidfile.py</span> -<span class="gu">@@ -367,12 +367,6 @@ class TimeoutPIDLockFile_TestCase(scaffold.TestCase):</span> - pidlockfile_scenarios = make_pidlockfile_scenarios() - self.pidlockfile_scenario = pidlockfile_scenarios['simple'] - -<span class="gd">- for func_name in ['__init__', 'acquire']:</span> -<span class="gd">- func_patcher = unittest.mock.patch.object(</span> -<span class="gd">- lockfile.pidlockfile.PIDLockFile, func_name)</span> -<span class="gd">- func_patcher.start()</span> -<span class="gd">- self.addCleanup(func_patcher.stop)</span> -<span class="gd">-</span> - self.scenario = { - 'pidfile_path': self.pidlockfile_scenario['pidfile_path'], - 'acquire_timeout': self.getUniqueInteger(), -</pre></div> -</code></pre></td></tr></table> -</div> <!-- class=content --> - </div> - </div> - </div> - </div> - - <footer> - <div class="container"> - <div class="row"> - <div class="col-12 offset-md-2 col-md-7"> - - </div> - <div class="col-12 col-md-3"> - <h3 class="footerhead">Questions or comments?</h3> - Please feel free to <a href="https://www.gentoo.org/inside-gentoo/contact/">contact us</a>. - </div> - </div> - <div class="row"> - <div class="col-2 col-sm-3 col-md-2"> - <ul class="footerlinks three-icons"> - <li><a href="https://twitter.com/gentoo" title="@Gentoo on Twitter"><span class="fa fa-twitter fa-fw"></span></a></li> - <li><a href="https://www.facebook.com/gentoo.org" title="Gentoo on Facebook"><span class="fa fa-facebook fa-fw"></span></a></li> - <li></li> - </ul> - </div> - <div class="col-10 col-sm-9 col-md-10"> - <strong>© 2001–2021 Gentoo Foundation, Inc.</strong><br> - <small> - Gentoo is a trademark of the Gentoo Foundation, Inc. - The contents of this document, unless otherwise expressly stated, are licensed under the - <a href="https://creativecommons.org/licenses/by-sa/4.0/" rel="license">CC-BY-SA-4.0</a> license. - The <a href="https://www.gentoo.org/inside-gentoo/foundation/name-logo-guidelines.html">Gentoo Name and Logo Usage Guidelines</a> apply. - </small> - </div> - </div> - </div> - </footer> - - <script src="https://assets.gentoo.org/tyrian/v2/jquery-3.3.slim.js"></script> - <script src="https://assets.gentoo.org/tyrian/v2/popper.min.js"></script> - <script src="https://assets.gentoo.org/tyrian/v2/bootstrap.min.js"></script> -</div> <!-- id=cgit --> -</body> -</html> Added: python310.patch =================================================================== --- python310.patch (rev 0) +++ python310.patch 2021-12-08 02:28:46 UTC (rev 1065584) @@ -0,0 +1,31 @@ +From 0c67a3c6407fbf4483ccfc94a7a0d78cf3379296 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= <m...@hroncok.cz> +Date: Wed, 29 Sep 2021 19:59:30 +1000 +Subject: [PATCH] Remove incorrect double-patch of objects in test cases. + +The specific test cases relying on the patches, already are decorated +to patch the specific attributes needed. We don't need a general patch +of the attributes in the test case setup. + +Signed-off-by: Ben Finney <ben+pyt...@benfinney.id.au> +--- + test/test_pidfile.py | 6 ------ + 1 file changed, 6 deletions(-) + +diff --git a/test/test_pidfile.py b/test/test_pidfile.py +index 2448855..1d0dd93 100644 +--- a/test/test_pidfile.py ++++ b/test/test_pidfile.py +@@ -367,12 +367,6 @@ class TimeoutPIDLockFile_TestCase(scaffold.TestCase): + pidlockfile_scenarios = make_pidlockfile_scenarios() + self.pidlockfile_scenario = pidlockfile_scenarios['simple'] + +- for func_name in ['__init__', 'acquire']: +- func_patcher = unittest.mock.patch.object( +- lockfile.pidlockfile.PIDLockFile, func_name) +- func_patcher.start() +- self.addCleanup(func_patcher.stop) +- + self.scenario = { + 'pidfile_path': self.pidlockfile_scenario['pidfile_path'], + 'acquire_timeout': self.getUniqueInteger(), Added: testtools-2.5.0.patch =================================================================== --- testtools-2.5.0.patch (rev 0) +++ testtools-2.5.0.patch 2021-12-08 02:28:46 UTC (rev 1065584) @@ -0,0 +1,22 @@ +From bacc1774e8ff7504092a0612197c36153731cd70 Mon Sep 17 00:00:00 2001 +From: Ben Finney <ben+pyt...@benfinney.id.au> +Date: Mon, 27 Sep 2021 21:17:57 +1000 +Subject: [PATCH] Drop a helper for obsolete bugs in `hasattr`. + +--- + test/test_metadata.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/test/test_metadata.py b/test/test_metadata.py +index 3bb1e3a..77e6464 100644 +--- a/test/test_metadata.py ++++ b/test/test_metadata.py +@@ -39,7 +39,7 @@ class HasAttribute(testtools.matchers.Matcher): + def match(self, instance): + """ Assert the object `instance` has an attribute named `name`. """ + result = None +- if not testtools.helpers.safe_hasattr(instance, self.attribute_name): ++ if not hasattr(instance, self.attribute_name): + result = AttributeNotFoundMismatch(instance, self.attribute_name) + return result +