Gentoo Archives: gentoo-commits

From: "Michał Górny" <mgorny@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-python/twisted/
Date: Mon, 16 Jul 2018 14:42:15
Message-Id: 1531752123.9e4f768978c3145f3135f18748bb4e65b68c1c11.mgorny@gentoo
1 commit: 9e4f768978c3145f3135f18748bb4e65b68c1c11
2 Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
3 AuthorDate: Mon Jul 16 13:21:44 2018 +0000
4 Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
5 CommitDate: Mon Jul 16 14:42:03 2018 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e4f7689
7
8 dev-python/twisted: Bump to 18.7.0
9
10 dev-python/twisted/Manifest | 1 +
11 dev-python/twisted/twisted-18.7.0.ebuild | 190 +++++++++++++++++++++++++++++++
12 2 files changed, 191 insertions(+)
13
14 diff --git a/dev-python/twisted/Manifest b/dev-python/twisted/Manifest
15 index 015a3c4b13e..7a2a32c890b 100644
16 --- a/dev-python/twisted/Manifest
17 +++ b/dev-python/twisted/Manifest
18 @@ -2,4 +2,5 @@ DIST Twisted-16.6.0.tar.bz2 2979747 BLAKE2B 898e0a0fa3ae8547a801b09118423ec8ad80
19 DIST Twisted-17.1.0.tar.bz2 2997334 BLAKE2B 54bd9813fb265f3561be7bc42a3ca6fc36aa5f8553ff0f40fd4ba7939947015632ef91c011a088b511d9f3f262aa0a785467ad3e4fab00cc97cb85bdbd93a726 SHA512 e5eedc9a70b7e4d0ec18dddaa82aa9a784e96fd517db65c278d822d15e8bdc65a35307a5a0474eb68dcb73fcd5508086bec605580a9f2f767bcbe27d714b4966
20 DIST Twisted-17.9.0.tar.bz2 3019243 BLAKE2B a79fade6c84a99303df803ad80f02c63562e7064d5b79db39c08bd0ac9a62d61f1388932b36348aa106aa409a51b2d49dc0eb5b1007ce10f196a34c2f963b8e5 SHA512 0fb854db1044bfdb208594a379a0f8df0193326a9974e193266e82113488d49220648d4a50b323fa144654e94976f5848e1d60efed13ab2668b02cc795720345
21 DIST Twisted-18.4.0.tar.bz2 3037019 BLAKE2B 6fc32f7591493ccc4fe03233307b566899b82cd035ba3329b3faaf950339a6653de697ba3873b37b22f9d7f8a66109694b80496917bf61e79c56eeb7e351ac87 SHA512 3733a6df0196ea580187da3576f5fd08f287437528a4e19813056d019cca213c61b62d879d80a12eef38661d3505ba33aac9a4fc956b19afa6da7d37a6465c83
22 +DIST Twisted-18.7.0.tar.bz2 3063847 BLAKE2B a71e7f0f2888eab2849b90405350194091731730e8507172744212b9af73ba440a0c21d5c5a45ae987752c813c07c4dbb06e0e27a8c8e436d7ea6f7c3026137e SHA512 feefa578bc1787648df07e4a53bd6fe29b43c4357472e4fba37526f075be9263e8c671b6781ce6ad3569c1b1666cb702efbee903f597714a749971695018f826
23 DIST twisted-regen-cache.gz 911 BLAKE2B ffd3fcda6c67ffe6fd3ef581c8d507548396b66ed0708e9a5c790095e579c0d5f0f71596acf05712989da2ddef2b8d437eca973bc4d80ef8a9fa852915f38305 SHA512 95a9b931c73017d16d1b5e6b41345dddffe62b6af1a8e93b5e40d06d3d15be17b0dd0181c767ffeeb791534d463764ef9e066fa6c2ee2ac4b53c86d1da8fce03
24
25 diff --git a/dev-python/twisted/twisted-18.7.0.ebuild b/dev-python/twisted/twisted-18.7.0.ebuild
26 new file mode 100644
27 index 00000000000..2e8c447605b
28 --- /dev/null
29 +++ b/dev-python/twisted/twisted-18.7.0.ebuild
30 @@ -0,0 +1,190 @@
31 +# Copyright 1999-2018 Gentoo Foundation
32 +# Distributed under the terms of the GNU General Public License v2
33 +
34 +EAPI=7
35 +PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
36 +PYTHON_REQ_USE="threads(+)"
37 +
38 +inherit distutils-r1
39 +
40 +TWISTED_PN="Twisted"
41 +TWISTED_P="${TWISTED_PN}-${PV}"
42 +TWISTED_RELEASE=$(ver_cut 1-2)
43 +
44 +DESCRIPTION="An asynchronous networking framework written in Python"
45 +HOMEPAGE="https://www.twistedmatrix.com/trac/"
46 +SRC_URI="https://twistedmatrix.com/Releases/${TWISTED_PN}"
47 +SRC_URI="${SRC_URI}/${TWISTED_RELEASE}/${TWISTED_P}.tar.bz2
48 + https://dev.gentoo.org/~mgorny/dist/twisted-regen-cache.gz"
49 +
50 +# Dropped keywords due to new deps not keyworded
51 +#KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~s390 ~sh ~x86 ~x86-fbsd ~ia64-hpux ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
52 +KEYWORDS="~amd64"
53 +
54 +LICENSE="MIT"
55 +SLOT="0"
56 +IUSE="conch crypt http2 serial +soap test"
57 +
58 +# openssh-7.6_p1 test failures: bug https://twistedmatrix.com/trac/ticket/9311
59 +RDEPEND="
60 + >=dev-python/attrs-17.4.0[${PYTHON_USEDEP}]
61 + >=dev-python/automat-0.3.0[${PYTHON_USEDEP}]
62 + >=dev-python/constantly-15.1.0[${PYTHON_USEDEP}]
63 + >=dev-python/hyperlink-17.1.1[${PYTHON_USEDEP}]
64 + >=dev-python/incremental-16.10.1[${PYTHON_USEDEP}]
65 + >=dev-python/pyhamcrest-1.9.0[${PYTHON_USEDEP}]
66 + >=dev-python/zope-interface-4.4.2[${PYTHON_USEDEP}]
67 + conch? (
68 + dev-python/pyasn1[${PYTHON_USEDEP}]
69 + >=dev-python/cryptography-1.5.0[${PYTHON_USEDEP}]
70 + >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
71 + )
72 + crypt? (
73 + >=dev-python/pyopenssl-16.0.0[${PYTHON_USEDEP}]
74 + dev-python/service_identity[${PYTHON_USEDEP}]
75 + >=dev-python/idna-0.6[${PYTHON_USEDEP}]
76 + )
77 + serial? ( >=dev-python/pyserial-3.0[${PYTHON_USEDEP}] )
78 + soap? ( $(python_gen_cond_dep 'dev-python/soappy[${PYTHON_USEDEP}]' python2_7) )
79 + http2? (
80 + >=dev-python/hyper-h2-3.0.0[${PYTHON_USEDEP}]
81 + <dev-python/hyper-h2-4.0.0[${PYTHON_USEDEP}]
82 + >=dev-python/priority-1.1.0[${PYTHON_USEDEP}]
83 + <dev-python/priority-2.0[${PYTHON_USEDEP}]
84 + )
85 + !dev-python/twisted-core
86 + !dev-python/twisted-conch
87 + !dev-python/twisted-lore
88 + !dev-python/twisted-mail
89 + !dev-python/twisted-names
90 + !dev-python/twisted-news
91 + !dev-python/twisted-pair
92 + !dev-python/twisted-runner
93 + !dev-python/twisted-words
94 + !dev-python/twisted-web
95 +"
96 +DEPEND="
97 + >=dev-python/incremental-16.10.1[${PYTHON_USEDEP}]
98 + test? (
99 + dev-python/gmpy[${PYTHON_USEDEP}]
100 + dev-python/pyasn1[${PYTHON_USEDEP}]
101 + >=dev-python/cryptography-0.9.1[${PYTHON_USEDEP}]
102 + >=dev-python/appdirs-1.4.0[${PYTHON_USEDEP}]
103 + >=dev-python/pyopenssl-0.13[${PYTHON_USEDEP}]
104 + dev-python/service_identity[${PYTHON_USEDEP}]
105 + dev-python/idna[${PYTHON_USEDEP}]
106 + dev-python/pyserial[${PYTHON_USEDEP}]
107 + >=dev-python/constantly-15.1.0[${PYTHON_USEDEP}]
108 + <net-misc/openssh-7.6
109 + )
110 +"
111 +
112 +PATCHES=(
113 + # ${PN}-17.9.0-Fix-test-on-Python-363.patch" <== version specific from upstream
114 + # Respect TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE variable.
115 + "${FILESDIR}/${PN}-18.4.0-Disable-writing-of-plugin-cache.patch"
116 + "${FILESDIR}/test_main.patch"
117 + "${FILESDIR}/utf8_overrides.patch"
118 + "${FILESDIR}/${PN}-16.6.0-test-fixes.patch"
119 + "${FILESDIR}/${PN}-17.9.0-python-27-utf-8-fix.patch"
120 +)
121 +
122 +S=${WORKDIR}/${TWISTED_P}
123 +
124 +python_prepare_all() {
125 + # disable tests that don't work in our sandbox
126 + # and other test failures due to our conditions
127 + if use test ; then
128 + # Remove since this is an upstream distribution test for making releases
129 + rm src/twisted/python/test/test_release.py || die "rm src/twisted/python/test/test_release.py FAILED"
130 + fi
131 + distutils-r1_python_prepare_all
132 +}
133 +
134 +python_compile() {
135 + if ! python_is_python3; then
136 + # Needed to make the sendmsg extension work
137 + # (see https://twistedmatrix.com/trac/ticket/5701 )
138 + local -x CFLAGS="${CFLAGS} -fno-strict-aliasing"
139 + local -x CXXFLAGS="${CXXFLAGS} -fno-strict-aliasing"
140 + fi
141 +
142 + distutils-r1_python_compile
143 +}
144 +
145 +python_test() {
146 + distutils_install_for_testing
147 +
148 + export EMERGE_TEST_OVERRIDE=1
149 + export UTF8_OVERRIDES=1
150 + unset TWISTED_DISABLE_WRITING_OF_PLUGIN_CACHE
151 + # workaround for the eclass not installing the entry points
152 + # in the test environment. copy the old 16.3.2 start script
153 + # to run the tests with
154 + cp "${FILESDIR}"/trial "${TEST_DIR}"
155 +
156 + pushd "${TEST_DIR}" > /dev/null || die
157 +
158 + if ! "${TEST_DIR}"/trial twisted; then
159 + die "Tests failed with ${EPYTHON}"
160 + fi
161 + # due to an anomoly in the tests, python doesn't return the correct form
162 + # of the escape sequence. So run those test separately with a clean python interpreter
163 + export UTF8_OVERRIDES=0
164 + if ! "${TEST_DIR}"/trial twisted.test.test_twistd.DaemonizeTests; then
165 + die "DaemonizeTests failed with ${EPYTHON}"
166 + fi
167 + if ! "${TEST_DIR}"/trial twisted.test.test_reflect.SafeStrTests; then
168 + die "SafeStrTests failed with ${EPYTHON}"
169 + fi
170 +
171 + popd > /dev/null || die
172 +}
173 +
174 +python_install() {
175 + distutils-r1_python_install
176 +
177 + cd "${D%/}$(python_get_sitedir)" || die
178 +
179 + # own the dropin.cache so we don't leave orphans
180 + touch twisted/plugins/dropin.cache || die
181 +
182 + python_doscript "${WORKDIR}"/twisted-regen-cache
183 +}
184 +
185 +python_install_all() {
186 + distutils-r1_python_install_all
187 +
188 + newconfd "${FILESDIR}/twistd.conf" twistd
189 + newinitd "${FILESDIR}/twistd.init" twistd
190 +}
191 +
192 +python_postinst() {
193 + twisted-regen-cache || die
194 +}
195 +
196 +pkg_postinst() {
197 + python_foreach_impl python_postinst
198 +
199 + einfo "Install complete"
200 + if use test ; then
201 + einfo ""
202 + einfo "Some tests have been disabled during testing due to"
203 + einfo "known incompatibilities with the emerge sandboxes and/or"
204 + einfo "not runnable as the root user."
205 + einfo "For a complete test suite run on the code."
206 + einfo "Run the tests as a normal user for each python it is installed to."
207 + einfo " ie: $ python3.6 /usr/bin/trial twisted"
208 + fi
209 +}
210 +
211 +python_postrm() {
212 + rm -f "${ROOT%/}$(python_get_sitedir)/twisted/plugins/dropin.cache" || die
213 +}
214 +
215 +pkg_postrm(){
216 + # if we're removing the last version, remove the cache file
217 + if [[ ! ${REPLACING_VERSIONS} ]]; then
218 + python_foreach_impl python_postrm
219 + fi
220 +}