aboutsummaryrefslogtreecommitdiffstats
path: root/community
diff options
context:
space:
mode:
authorLeo <thinkabit.ukim@gmail.com>2019-11-02 10:32:32 -0300
committerLeo <thinkabit.ukim@gmail.com>2019-11-02 11:10:17 -0300
commit11fb43514049ea2907412767273c1473343e6f92 (patch)
tree952a3d6759523f31609898eb3b5d509a8a07eb1f /community
parent955e379151f059e8b6dc84758ebaa75b082ce6cb (diff)
downloadaports-11fb43514049ea2907412767273c1473343e6f92.tar.bz2
aports-11fb43514049ea2907412767273c1473343e6f92.tar.xz
community/py3-twisted: upgrade to 19.7.0
Diffstat (limited to 'community')
-rw-r--r--community/py3-twisted/APKBUILD26
-rw-r--r--community/py3-twisted/disable-failing-test.patch23
-rw-r--r--community/py3-twisted/remove-locale-dependent-tests.patch164
3 files changed, 209 insertions, 4 deletions
diff --git a/community/py3-twisted/APKBUILD b/community/py3-twisted/APKBUILD
index f17f4c4a99..3cf5a86036 100644
--- a/community/py3-twisted/APKBUILD
+++ b/community/py3-twisted/APKBUILD
@@ -1,8 +1,8 @@
# Maintainer: Natanael Copa <ncopa@alpinelinux.org>
pkgname=py3-twisted
_pkgname=Twisted
-pkgver=19.2.1
-pkgrel=3
+pkgver=19.7.0
+pkgrel=0
pkgdesc="Asynchronous networking framework written in Python3"
url="http://twistedmatrix.com/"
arch="all"
@@ -10,17 +10,33 @@ license="MIT"
depends="python3 py3-crypto py3-zope-interface py3-constantly py3-incremental py3-attrs
py3-pyhamcrest py3-hyperlink py3-automat"
makedepends="libtirpc-dev py3-setuptools python3-dev"
+checkdepends="xvfb-run py3-appdirs tzdata"
subpackages="$pkgname-doc"
-source="https://twistedmatrix.com/Releases/$_pkgname/${pkgver%.*}/$_pkgname-$pkgver.tar.bz2"
+source="https://twistedmatrix.com/Releases/$_pkgname/${pkgver%.*}/$_pkgname-$pkgver.tar.bz2
+ remove-locale-dependent-tests.patch
+ disable-failing-test.patch
+ "
builddir="$srcdir"/"$_pkgname"-$pkgver
replaces="py-twisted" # Backwards compatibility
provides="py-twisted=$pkgver-r$pkgrel" # Backwards compatibility
+prepare() {
+ default_prepare
+ # Remove tests that always fail due to our not-upstream testing procedure
+ # these tests if invoking the Twisted binary and twisted.trial tests work
+ rm -f src/twisted/test/test_main.py
+}
+
build() {
CFLAGS="$CFLAGS $(pkgconf --cflags libtirpc)" python3 setup.py build
}
+check() {
+ PYTHONPATH="$(echo $PWD/build/lib.*)" xvfb-run python3 \
+ -c 'from twisted.scripts.trial import run; run()' twisted
+}
+
package() {
python3 setup.py install --prefix=/usr --root="$pkgdir"
@@ -36,4 +52,6 @@ doc() {
default_doc
}
-sha512sums="b358c3082a9005f7065da182cec3561d77aa34f21fc1bb20b1acdb1ad3ac7e8b0793c5f7189baec7cfa79dd19a97c3ded9381e4e376a770108f7f6b318bec5f3 Twisted-19.2.1.tar.bz2"
+sha512sums="46588008f0be63f9ec8cfb88bb81f4268e59e8dead8256c36144b521eb3e58726f4d8c9016b7157365b26929e39a3fa6ff2cc2a9f83e8cfa7f1acc43d31297c4 Twisted-19.7.0.tar.bz2
+b8532d6ad572c7f13cddce35e2aa03d28b7e2b22ace7976e92e617aa26f15ea518f8cbd5efd560f841a585356323815d39257a49b39c9caae505ceff44c4435c remove-locale-dependent-tests.patch
+2bacc91852875fa0b090e0a685204846485b32e3c41a4b0b933c90cf6736ba1a34bd04c3151dae256a1b2046c757985952bb050565b8dcd428199a9f7ddbcfca disable-failing-test.patch"
diff --git a/community/py3-twisted/disable-failing-test.patch b/community/py3-twisted/disable-failing-test.patch
new file mode 100644
index 0000000000..274a0601de
--- /dev/null
+++ b/community/py3-twisted/disable-failing-test.patch
@@ -0,0 +1,23 @@
+diff --git a/src/twisted/words/test/test_domish.py b/src/twisted/words/test/test_domish.py
+index a8f8fa7..cfa3143 100644
+--- a/src/twisted/words/test/test_domish.py
++++ b/src/twisted/words/test/test_domish.py
+@@ -194,17 +194,6 @@ class ElementTests(unittest.TestCase):
+ "Bytes behavior of addContent only provided on Python 3.")
+
+
+- def test_addContentBytesNonASCII(self):
+- """
+- Non-ASCII byte strings passed to C{addContent} yield L{UnicodeError}.
+- """
+- element = domish.Element((u"testns", u"foo"))
+- self.assertRaises(UnicodeError, element.addContent, b'\xe2\x98\x83')
+- if _PY3:
+- test_addContentBytesNonASCII.skip = (
+- "Bytes behavior of addContent only provided on Python 2.")
+-
+-
+ def test_addElementContent(self):
+ """
+ Content passed to addElement becomes character data on the new child.
+
diff --git a/community/py3-twisted/remove-locale-dependent-tests.patch b/community/py3-twisted/remove-locale-dependent-tests.patch
new file mode 100644
index 0000000000..5fcf91224b
--- /dev/null
+++ b/community/py3-twisted/remove-locale-dependent-tests.patch
@@ -0,0 +1,164 @@
+diff --git a/src/twisted/conch/test/test_cftp.py b/src/twisted/conch/test/test_cftp.py
+index 58eb5cc..62e8a8b 100644
+--- a/src/twisted/conch/test/test_cftp.py
++++ b/src/twisted/conch/test/test_cftp.py
+@@ -64,158 +64,6 @@ class SSHSessionTests(TestCase):
+
+
+
+-class ListingTests(TestCase):
+- """
+- Tests for L{lsLine}, the function which generates an entry for a file or
+- directory in an SFTP I{ls} command's output.
+- """
+- if getattr(time, 'tzset', None) is None:
+- skip = "Cannot test timestamp formatting code without time.tzset"
+-
+-
+- def setUp(self):
+- """
+- Patch the L{ls} module's time function so the results of L{lsLine} are
+- deterministic.
+- """
+- self.now = 123456789
+- def fakeTime():
+- return self.now
+- self.patch(ls, 'time', fakeTime)
+-
+- # Make sure that the timezone ends up the same after these tests as
+- # it was before.
+- if 'TZ' in os.environ:
+- self.addCleanup(operator.setitem, os.environ, 'TZ', os.environ['TZ'])
+- self.addCleanup(time.tzset)
+- else:
+- def cleanup():
+- # os.environ.pop is broken! Don't use it! Ever! Or die!
+- try:
+- del os.environ['TZ']
+- except KeyError:
+- pass
+- time.tzset()
+- self.addCleanup(cleanup)
+-
+-
+- def _lsInTimezone(self, timezone, stat):
+- """
+- Call L{ls.lsLine} after setting the timezone to C{timezone} and return
+- the result.
+- """
+- # Set the timezone to a well-known value so the timestamps are
+- # predictable.
+- os.environ['TZ'] = timezone
+- time.tzset()
+- return ls.lsLine('foo', stat)
+-
+-
+- def test_oldFile(self):
+- """
+- A file with an mtime six months (approximately) or more in the past has
+- a listing including a low-resolution timestamp.
+- """
+- # Go with 7 months. That's more than 6 months.
+- then = self.now - (60 * 60 * 24 * 31 * 7)
+- stat = os.stat_result((0, 0, 0, 0, 0, 0, 0, 0, then, 0))
+-
+- self.assertEqual(
+- self._lsInTimezone('America/New_York', stat),
+- '!--------- 0 0 0 0 Apr 26 1973 foo')
+- self.assertEqual(
+- self._lsInTimezone('Pacific/Auckland', stat),
+- '!--------- 0 0 0 0 Apr 27 1973 foo')
+-
+-
+- def test_oldSingleDigitDayOfMonth(self):
+- """
+- A file with a high-resolution timestamp which falls on a day of the
+- month which can be represented by one decimal digit is formatted with
+- one padding 0 to preserve the columns which come after it.
+- """
+- # A point about 7 months in the past, tweaked to fall on the first of a
+- # month so we test the case we want to test.
+- then = self.now - (60 * 60 * 24 * 31 * 7) + (60 * 60 * 24 * 5)
+- stat = os.stat_result((0, 0, 0, 0, 0, 0, 0, 0, then, 0))
+-
+- self.assertEqual(
+- self._lsInTimezone('America/New_York', stat),
+- '!--------- 0 0 0 0 May 01 1973 foo')
+- self.assertEqual(
+- self._lsInTimezone('Pacific/Auckland', stat),
+- '!--------- 0 0 0 0 May 02 1973 foo')
+-
+-
+- def test_newFile(self):
+- """
+- A file with an mtime fewer than six months (approximately) in the past
+- has a listing including a high-resolution timestamp excluding the year.
+- """
+- # A point about three months in the past.
+- then = self.now - (60 * 60 * 24 * 31 * 3)
+- stat = os.stat_result((0, 0, 0, 0, 0, 0, 0, 0, then, 0))
+-
+- self.assertEqual(
+- self._lsInTimezone('America/New_York', stat),
+- '!--------- 0 0 0 0 Aug 28 17:33 foo')
+- self.assertEqual(
+- self._lsInTimezone('Pacific/Auckland', stat),
+- '!--------- 0 0 0 0 Aug 29 09:33 foo')
+-
+-
+- def test_localeIndependent(self):
+- """
+- The month name in the date is locale independent.
+- """
+- # A point about three months in the past.
+- then = self.now - (60 * 60 * 24 * 31 * 3)
+- stat = os.stat_result((0, 0, 0, 0, 0, 0, 0, 0, then, 0))
+-
+- # Fake that we're in a language where August is not Aug (e.g.: Spanish)
+- currentLocale = locale.getlocale()
+- locale.setlocale(locale.LC_ALL, "es_AR.UTF8")
+- self.addCleanup(locale.setlocale, locale.LC_ALL, currentLocale)
+-
+- self.assertEqual(
+- self._lsInTimezone('America/New_York', stat),
+- '!--------- 0 0 0 0 Aug 28 17:33 foo')
+- self.assertEqual(
+- self._lsInTimezone('Pacific/Auckland', stat),
+- '!--------- 0 0 0 0 Aug 29 09:33 foo')
+-
+- # If alternate locale is not available, the previous test will be
+- # skipped, please install this locale for it to run
+- currentLocale = locale.getlocale()
+- try:
+- try:
+- locale.setlocale(locale.LC_ALL, "es_AR.UTF8")
+- except locale.Error:
+- test_localeIndependent.skip = "The es_AR.UTF8 locale is not installed."
+- finally:
+- locale.setlocale(locale.LC_ALL, currentLocale)
+-
+-
+- def test_newSingleDigitDayOfMonth(self):
+- """
+- A file with a high-resolution timestamp which falls on a day of the
+- month which can be represented by one decimal digit is formatted with
+- one padding 0 to preserve the columns which come after it.
+- """
+- # A point about three months in the past, tweaked to fall on the first
+- # of a month so we test the case we want to test.
+- then = self.now - (60 * 60 * 24 * 31 * 3) + (60 * 60 * 24 * 4)
+- stat = os.stat_result((0, 0, 0, 0, 0, 0, 0, 0, then, 0))
+-
+- self.assertEqual(
+- self._lsInTimezone('America/New_York', stat),
+- '!--------- 0 0 0 0 Sep 01 17:33 foo')
+- self.assertEqual(
+- self._lsInTimezone('Pacific/Auckland', stat),
+- '!--------- 0 0 0 0 Sep 02 09:33 foo')
+-
+-
+-
+ class InMemorySSHChannel(StringTransport, object):
+ """
+ Minimal implementation of a L{SSHChannel} like class which only reads and
+