Skip to content

Commit

Permalink
dev-python/txtorcon: New pkg, new dep of net-misc/crossbar-17.9.1
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.6, Repoman-2.3.3
  • Loading branch information
dol-sen committed Sep 20, 2017
1 parent b3ecede commit 703510d
Show file tree
Hide file tree
Showing 7 changed files with 340 additions and 0 deletions.
1 change: 1 addition & 0 deletions dev-python/txtorcon/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST txtorcon-0.19.3.tar.gz 265716 SHA256 f73396667909a3c7a98f4dd865edf4ed6a2518ee5a935d92e18b8a479ec244fd SHA512 748e23c25c0b287467e0fa7db6ad69a8af7010957a846141b9360b71af0d279153ff401b85d135e7e66171e81117ebc56406e64e660aeda7dde8cd430d0a7254 WHIRLPOOL 0077f6ba0194cd9da21d3b148418774785e1a79ab4b40ba58a733c14d6f0d1c85afe7797821b84630b7177cfebb361adcde399b84c87cf981a12da7988526462
Original file line number Diff line number Diff line change
@@ -0,0 +1,147 @@
From d9f0e2ea76cb54e3647fd16f3be0a8f0224505fd Mon Sep 17 00:00:00 2001
From: Brian Dolbec <[email protected]>
Date: Tue, 19 Sep 2017 11:59:08 -0700
Subject: [PATCH] test: Move tests under the txtorcon namespace

---
MANIFEST.in | 1 -
{test => txtorcon/test}/__init__.py | 0
{test => txtorcon/test}/py3_torstate.py | 0
{test => txtorcon/test}/test_addrmap.py | 0
{test => txtorcon/test}/test_attacher.py | 0
{test => txtorcon/test}/test_circuit.py | 0
{test => txtorcon/test}/test_controller.py | 0
{test => txtorcon/test}/test_endpoints.py | 0
{test => txtorcon/test}/test_fsm.py | 0
{test => txtorcon/test}/test_log.py | 0
{test => txtorcon/test}/test_microdesc.py | 0
{test => txtorcon/test}/test_router.py | 0
{test => txtorcon/test}/test_socks.py | 0
{test => txtorcon/test}/test_stream.py | 0
{test => txtorcon/test}/test_torconfig.py | 0
{test => txtorcon/test}/test_torcontrolprotocol.py | 0
{test => txtorcon/test}/test_torinfo.py | 0
{test => txtorcon/test}/test_torstate.py | 0
{test => txtorcon/test}/test_util.py | 0
{test => txtorcon/test}/test_util_imports.py | 0
{test => txtorcon/test}/test_web.py | 0
{test => txtorcon/test}/util.py | 0
22 files changed, 1 deletion(-)
rename {test => txtorcon/test}/__init__.py (100%)
rename {test => txtorcon/test}/py3_torstate.py (100%)
rename {test => txtorcon/test}/test_addrmap.py (100%)
rename {test => txtorcon/test}/test_attacher.py (100%)
rename {test => txtorcon/test}/test_circuit.py (100%)
rename {test => txtorcon/test}/test_controller.py (100%)
rename {test => txtorcon/test}/test_endpoints.py (100%)
rename {test => txtorcon/test}/test_fsm.py (100%)
rename {test => txtorcon/test}/test_log.py (100%)
rename {test => txtorcon/test}/test_microdesc.py (100%)
rename {test => txtorcon/test}/test_router.py (100%)
rename {test => txtorcon/test}/test_socks.py (100%)
rename {test => txtorcon/test}/test_stream.py (100%)
rename {test => txtorcon/test}/test_torconfig.py (100%)
rename {test => txtorcon/test}/test_torcontrolprotocol.py (100%)
rename {test => txtorcon/test}/test_torinfo.py (100%)
rename {test => txtorcon/test}/test_torstate.py (100%)
rename {test => txtorcon/test}/test_util.py (100%)
rename {test => txtorcon/test}/test_util_imports.py (100%)
rename {test => txtorcon/test}/test_web.py (100%)
rename {test => txtorcon/test}/util.py (100%)

diff --git a/MANIFEST.in b/MANIFEST.in
index 13dc4e2..7b8184a 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -22,4 +22,3 @@ include examples/*
exclude examples/*~
include requirements.txt
include dev-requirements.txt
-include test/*.py
diff --git a/test/__init__.py b/txtorcon/test/__init__.py
similarity index 100%
rename from test/__init__.py
rename to txtorcon/test/__init__.py
diff --git a/test/py3_torstate.py b/txtorcon/test/py3_torstate.py
similarity index 100%
rename from test/py3_torstate.py
rename to txtorcon/test/py3_torstate.py
diff --git a/test/test_addrmap.py b/txtorcon/test/test_addrmap.py
similarity index 100%
rename from test/test_addrmap.py
rename to txtorcon/test/test_addrmap.py
diff --git a/test/test_attacher.py b/txtorcon/test/test_attacher.py
similarity index 100%
rename from test/test_attacher.py
rename to txtorcon/test/test_attacher.py
diff --git a/test/test_circuit.py b/txtorcon/test/test_circuit.py
similarity index 100%
rename from test/test_circuit.py
rename to txtorcon/test/test_circuit.py
diff --git a/test/test_controller.py b/txtorcon/test/test_controller.py
similarity index 100%
rename from test/test_controller.py
rename to txtorcon/test/test_controller.py
diff --git a/test/test_endpoints.py b/txtorcon/test/test_endpoints.py
similarity index 100%
rename from test/test_endpoints.py
rename to txtorcon/test/test_endpoints.py
diff --git a/test/test_fsm.py b/txtorcon/test/test_fsm.py
similarity index 100%
rename from test/test_fsm.py
rename to txtorcon/test/test_fsm.py
diff --git a/test/test_log.py b/txtorcon/test/test_log.py
similarity index 100%
rename from test/test_log.py
rename to txtorcon/test/test_log.py
diff --git a/test/test_microdesc.py b/txtorcon/test/test_microdesc.py
similarity index 100%
rename from test/test_microdesc.py
rename to txtorcon/test/test_microdesc.py
diff --git a/test/test_router.py b/txtorcon/test/test_router.py
similarity index 100%
rename from test/test_router.py
rename to txtorcon/test/test_router.py
diff --git a/test/test_socks.py b/txtorcon/test/test_socks.py
similarity index 100%
rename from test/test_socks.py
rename to txtorcon/test/test_socks.py
diff --git a/test/test_stream.py b/txtorcon/test/test_stream.py
similarity index 100%
rename from test/test_stream.py
rename to txtorcon/test/test_stream.py
diff --git a/test/test_torconfig.py b/txtorcon/test/test_torconfig.py
similarity index 100%
rename from test/test_torconfig.py
rename to txtorcon/test/test_torconfig.py
diff --git a/test/test_torcontrolprotocol.py b/txtorcon/test/test_torcontrolprotocol.py
similarity index 100%
rename from test/test_torcontrolprotocol.py
rename to txtorcon/test/test_torcontrolprotocol.py
diff --git a/test/test_torinfo.py b/txtorcon/test/test_torinfo.py
similarity index 100%
rename from test/test_torinfo.py
rename to txtorcon/test/test_torinfo.py
diff --git a/test/test_torstate.py b/txtorcon/test/test_torstate.py
similarity index 100%
rename from test/test_torstate.py
rename to txtorcon/test/test_torstate.py
diff --git a/test/test_util.py b/txtorcon/test/test_util.py
similarity index 100%
rename from test/test_util.py
rename to txtorcon/test/test_util.py
diff --git a/test/test_util_imports.py b/txtorcon/test/test_util_imports.py
similarity index 100%
rename from test/test_util_imports.py
rename to txtorcon/test/test_util_imports.py
diff --git a/test/test_web.py b/txtorcon/test/test_web.py
similarity index 100%
rename from test/test_web.py
rename to txtorcon/test/test_web.py
diff --git a/test/util.py b/txtorcon/test/util.py
similarity index 100%
rename from test/util.py
rename to txtorcon/test/util.py
--
2.14.1

53 changes: 53 additions & 0 deletions dev-python/txtorcon/files/txtorcon-0.19.3-Removeinstalldocs.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
From c2ddddde8570793f646c96038afc97fef4a809c0 Mon Sep 17 00:00:00 2001
From: Brian Dolbec <[email protected]>
Date: Tue, 19 Sep 2017 15:12:43 -0700
Subject: [PATCH] setup.py: Remove remaining docs from data_files install

These are better handled by distro package managers, don't belong on production installs.
Please make these conditionally installed instead. Preferrably optionally add a build_docs
extension to install the built sphinx docs if that option was passed to setup.py.
---
setup.py | 22 ----------------------
1 file changed, 22 deletions(-)

diff --git a/setup.py b/setup.py
index 3020112..a9f3993 100644
--- a/setup.py
+++ b/setup.py
@@ -26,10 +26,6 @@ description = '''
https://github.com/meejah/txtorcon
'''

-sphinx_rst_files = [x for x in listdir('docs') if x[-3:] == 'rst']
-sphinx_docs = [join('docs', x) for x in sphinx_rst_files]
-sphinx_docs += [join('docs/_static', x) for x in listdir('docs/_static')]
-
setup(
name='txtorcon',
version=__version__,
@@ -66,22 +62,4 @@ setup(
"txtorcon",
"twisted.plugins",
],
-
- # I'm a little unclear if I'm doing this "properly", especially
- # the documentation etc. Do we really want "share/txtorcon" for
- # the first member of the tuple? Why does it seem I need to
- # duplicate this in MANIFEST.in?
-
- data_files=[
- ('share/txtorcon', ['INSTALL', 'README.rst', 'TODO', 'meejah.asc']),
-
- # this includes the Sphinx source for the
- # docs. The "map+filter" construct grabs all .rst
- # files and re-maps the path
- ('share/txtorcon', [
- 'docs/apilinks_sphinxext.py',
- 'docs/conf.py',
- 'docs/Makefile',
- ] + sphinx_docs),
- ],
)
--
2.14.1

Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
From 3e7f764b18b1f630a23e71db9ca8f7c2e6e8210b Mon Sep 17 00:00:00 2001
From: Brian Dolbec <[email protected]>
Date: Tue, 19 Sep 2017 15:06:28 -0700
Subject: [PATCH] setup.py: Remove unconditional examples from data files
install

---
setup.py | 4 ----
1 file changed, 4 deletions(-)

diff --git a/setup.py b/setup.py
index d5f8016..3020112 100644
--- a/setup.py
+++ b/setup.py
@@ -29,7 +29,6 @@ description = '''
sphinx_rst_files = [x for x in listdir('docs') if x[-3:] == 'rst']
sphinx_docs = [join('docs', x) for x in sphinx_rst_files]
sphinx_docs += [join('docs/_static', x) for x in listdir('docs/_static')]
-examples = [x for x in listdir('examples') if x[-3:] == '.py']

setup(
name='txtorcon',
@@ -84,8 +83,5 @@ setup(
'docs/conf.py',
'docs/Makefile',
] + sphinx_docs),
-
- # include all the examples
- ('share/txtorcon/examples', [join('examples', x) for x in examples])
],
)
--
2.14.1

Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
From f407d11f3d4951c301fd47df211f0d93d107b8d1 Mon Sep 17 00:00:00 2001
From: Brian Dolbec <[email protected]>
Date: Tue, 19 Sep 2017 11:49:14 -0700
Subject: [PATCH] setup.py: Don't install the tests

This was installing the tests to its own namespace, not under the txtorcon namespace.
If you want the tests installed, then move them under the txtorcon namespace.
---
setup.py | 1 -
1 file changed, 1 deletion(-)

diff --git a/setup.py b/setup.py
index 38c6421..d5f8016 100644
--- a/setup.py
+++ b/setup.py
@@ -64,7 +64,6 @@ setup(
url=__url__,
license=__license__,
packages=[
- "test",
"txtorcon",
"twisted.plugins",
],
--
2.14.1

20 changes: 20 additions & 0 deletions dev-python/txtorcon/metadata.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="person">
<email>[email protected]</email>
<description>maintainer</description>
</maintainer>
<upstream>
<maintainer>
<email>[email protected]</email>
<name>meejah</name>
</maintainer>
<remote-id type="pypi">txtorcon</remote-id>
<remote-id type="github">meejah/txtorcon</remote-id>
</upstream>
<longdescription>
txtorcon is an implementation of the control-spec for Tor using the
Twisted networking library for Python.
</longdescription>
</pkgmetadata>
59 changes: 59 additions & 0 deletions dev-python/txtorcon/txtorcon-0.19.3.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Copyright 1999-2017 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6
PYTHON_COMPAT=( python2_7 python3_{4,5,6} )

inherit distutils-r1

DESCRIPTION="Twisted-based Tor controller client, with state-tracking and config abstractions"
HOMEPAGE="https://github.com/meejah/txtorcon https://pypi.python.org/pypi/txtorcon https://txtorcon.readthedocs.org"
SRC_URI="mirror://pypi/${P:0:1}/${PN}/${P}.tar.gz"

LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="doc examples test"

RDEPEND="
dev-python/automat[${PYTHON_USEDEP}]
dev-python/incremental[${PYTHON_USEDEP}]
$(python_gen_cond_dep '>=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]' python2_7)
dev-python/setuptools[${PYTHON_USEDEP}]
>=dev-python/twisted-16.0.0[${PYTHON_USEDEP},crypt]
>=dev-python/zope-interface-3.6.1[${PYTHON_USEDEP}]
doc? (
dev-python/automat[${PYTHON_USEDEP}]
$(python_gen_cond_dep '>=dev-python/ipaddress-1.0.16[${PYTHON_USEDEP}]' python2_7)
dev-python/sphinx[${PYTHON_USEDEP}]
dev-python/repoze-sphinx-autointerface[${PYTHON_USEDEP}]
>=dev-python/zope-interface-3.6.1[${PYTHON_USEDEP}]
)
"
DEPEND="
${RDEPEND}
test? ( dev-python/mock[${PYTHON_USEDEP}] )
"

PATCHES=(
"${FILESDIR}/txtorcon-0.19.3-setup.py-Dontinstallthetests.patch"
"${FILESDIR}/txtorcon-0.19.3-Movetestsunderthetxtorconnamespace.patch"
"${FILESDIR}/txtorcon-0.19.3-Removeunconditionalexamples.patch"
"${FILESDIR}/txtorcon-0.19.3-Removeinstalldocs.patch"
)

python_test() {
pushd "${TEST_DIR}" > /dev/null || die
/usr/bin/trial txtorcon || die "Tests failed with ${EPYTHON}"
popd > /dev/null || die
}

python_compile_all() {
use doc && emake -C "${S}/docs" html
}

python_install_all() {
use doc && dohtml -r "${S}/docs/_build/html/"*
use examples && dodoc -r "${S}/examples/"
distutils-r1_python_install_all
}

0 comments on commit 703510d

Please sign in to comment.