summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-python/geopy
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-python/geopy')
-rw-r--r--dev-python/geopy/Manifest3
-rw-r--r--dev-python/geopy/files/1.1.3-formatpy3.patch15
-rw-r--r--dev-python/geopy/files/1.1.3-tests-env-vars.patch198
-rw-r--r--dev-python/geopy/files/1.1.3-version-compat.patch12
-rw-r--r--dev-python/geopy/geopy-1.10.0.ebuild63
-rw-r--r--dev-python/geopy/geopy-1.8.1.ebuild60
-rw-r--r--dev-python/geopy/geopy-1.9.1.ebuild63
-rw-r--r--dev-python/geopy/metadata.xml14
8 files changed, 428 insertions, 0 deletions
diff --git a/dev-python/geopy/Manifest b/dev-python/geopy/Manifest
new file mode 100644
index 000000000000..2900b61d4801
--- /dev/null
+++ b/dev-python/geopy/Manifest
@@ -0,0 +1,3 @@
+DIST geopy-1.10.0.tar.gz 69671 SHA256 d1445731b20762b4e1d13e98d6370ff39a58fb29bd526afe1a44d510e91ee815 SHA512 943eb188090597786d5df9d1dac652dda81dd85d8edc57d9ffd4197b8a9a89c54a01ae4d6263eae64f69dc8437234a1ca797e869856d978c367b8db4c2c82f54 WHIRLPOOL f996abff6aaab85b98267d39c9284cb45e0d5d636e8df14baa8bae8b67c97ca8472076fac5f30fae0f19a7a390ae6247afcac3afc91d14197f51d44249ce6eb2
+DIST geopy-1.8.1.tar.gz 67542 SHA256 63b805535cbe178367ee8f5e0221fab9fa691eef5797decac1e0851d16173dcf SHA512 0df2e67ed35d5cc3f796e3188df3a37d8fa101a4b6feb6b760ea08087ba44c350765a8c1032012b5e762454fa15c520f97d59ff942f07047927ef4872232a57c WHIRLPOOL 44c3f68a26ba23ca3ffae52dba5dc575a1cf54a53ea1e39d9566d97c58bcdb26b98934befc7cf012adbd266cee8a10b72d6880d1765af7f23486292b249c91a2
+DIST geopy-1.9.1.tar.gz 67158 SHA256 e95989f5baf2cc5c2cee6186355f24b3fa8ce01faabea4e2bfcb083109416462 SHA512 ad6281626a03778754bec2e776419327609b3e6e47d6641520787ed2af87106fb2842a89667da680317a6c745970ac23b66c9b0fe8e50a2d223fc3169fe013b9 WHIRLPOOL e0f6fef1a061ff2d88e6ea1a37786405b1b0cac7d0982cb7bd650582b10726a6fa682c9c6577be6cec1d90b52d3f4828d221ac07d4aff6b04b93ff95f2c69110
diff --git a/dev-python/geopy/files/1.1.3-formatpy3.patch b/dev-python/geopy/files/1.1.3-formatpy3.patch
new file mode 100644
index 000000000000..35c0b0f30c4f
--- /dev/null
+++ b/dev-python/geopy/files/1.1.3-formatpy3.patch
@@ -0,0 +1,15 @@
+https://github.com/geopy/geopy/commit/fe0cd3c6c92b7d7ac47cb2292260485c5b3791c1
+diff --git a/geopy/format.py b/geopy/format.py
+index 965a127..63b1e94 100644
+--- a/geopy/format.py
++++ b/geopy/format.py
+@@ -30,7 +30,7 @@
+ ABBR_ARCSEC = 'arcsec'
+
+ DEGREES_FORMAT = (
+- "%(degrees)d%(deg)s %(minutes)d%(arcmin)s %(seconds)s%(arcsec)s"
++ "%(degrees)d%(deg)s %(minutes)d%(arcmin)s %(seconds)g%(arcsec)s"
+ )
+
+ UNICODE_SYMBOLS = {
+
diff --git a/dev-python/geopy/files/1.1.3-tests-env-vars.patch b/dev-python/geopy/files/1.1.3-tests-env-vars.patch
new file mode 100644
index 000000000000..8c0b914e62a8
--- /dev/null
+++ b/dev-python/geopy/files/1.1.3-tests-env-vars.patch
@@ -0,0 +1,198 @@
+https://github.com/geopy/geopy/commit/6c9714c480d62dcd04d514dcad10785d5a0816c2
+diff --git a/test/geocoders/arcgis.py b/test/geocoders/arcgis.py
+index fdca58c..b154a60 100644
+--- a/test/geocoders/arcgis.py
++++ b/test/geocoders/arcgis.py
+@@ -7,6 +7,10 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('ARCGIS_USERNAME')),
++ "No ARCGIS_USERNAME env variable set"
++)
+ class ArcGISTestCase(GeocoderTestBase):
+
+ @classmethod
+diff --git a/test/geocoders/baidu.py b/test/geocoders/baidu.py
+index 8ba249c..827ab12 100644
+--- a/test/geocoders/baidu.py
++++ b/test/geocoders/baidu.py
+@@ -6,8 +6,8 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['BAIDU_KEY'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('BAIDU_KEY')),
+ "No BAIDU_KEY env variable set"
+ )
+ class BaiduTestCase(GeocoderTestBase):
+diff --git a/test/geocoders/bing.py b/test/geocoders/bing.py
+index 17b1aae..d23e99b 100644
+--- a/test/geocoders/bing.py
++++ b/test/geocoders/bing.py
+@@ -6,8 +6,8 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['BING_KEY'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('BING_KEY')),
+ "No BING_KEY env variable set"
+ )
+ class BingTestCase(GeocoderTestBase):
+diff --git a/test/geocoders/dotus.py b/test/geocoders/dotus.py
+index e777278..d2bbfa2 100644
+--- a/test/geocoders/dotus.py
++++ b/test/geocoders/dotus.py
+@@ -5,9 +5,9 @@
+ from geopy.geocoders import GeocoderDotUS
+ from test.geocoders.util import GeocoderTestBase, env
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['GEOCODERDOTUS_USERNAME'] is not None and \
+- env['GEOCODERDOTUS_PASSWORD'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('GEOCODERDOTUS_USERNAME')) and \
++ bool(env.get('GEOCODERDOTUS_PASSWORD')),
+ "No GEOCODERDOTUS_USERNAME and GEOCODERDOTUS_PASSWORD env variables set"
+ )
+ class GeocoderDotUSTestCase(GeocoderTestBase): # pylint: disable=R0904,C0111
+diff --git a/test/geocoders/geocodefarm.py b/test/geocoders/geocodefarm.py
+index 151bac6..ffa28a4 100644
+--- a/test/geocoders/geocodefarm.py
++++ b/test/geocoders/geocodefarm.py
+@@ -8,8 +8,8 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['GEOCODEFARM_KEY'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('GEOCODEFARM_KEY')),
+ "GEOCODEFARM_KEY env variable not set"
+ )
+ class GeocodeFarmTestCase(GeocoderTestBase): # pylint: disable=R0904,C0111
+diff --git a/test/geocoders/geonames.py b/test/geocoders/geonames.py
+index 7ff6f11..3dcc3b4 100644
+--- a/test/geocoders/geonames.py
++++ b/test/geocoders/geonames.py
+@@ -4,21 +4,23 @@
+ from geopy.geocoders import GeoNames
+ from test.geocoders.util import GeocoderTestBase, env
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['GEONAMES_USERNAME'] is not None,
++
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('GEONAMES_USERNAME')),
+ "No GEONAMES_USERNAME env variable set"
+ )
+ class GeoNamesTestCase(GeocoderTestBase):
+
+ @classmethod
+ def setUpClass(cls):
+- cls.geocoder = GeoNames(username=env['GEONAMES_USERNAME'])
+ cls.delta = 0.04
+
+ def test_unicode_name(self):
+ """
+ GeoNames.geocode unicode
+ """
++ # work around ConfigurationError raised in GeoNames init
++ self.geocoder = GeoNames(username=env['GEONAMES_USERNAME'])
+ self.geocode_run(
+ {"query": u"\u6545\u5bab"},
+ {"latitude": 30.90097, "longitude": 118.49436},
+diff --git a/test/geocoders/mapquest.py b/test/geocoders/mapquest.py
+index eb12781..03ba4d8 100644
+--- a/test/geocoders/mapquest.py
++++ b/test/geocoders/mapquest.py
+@@ -5,8 +5,8 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['MAPQUEST_KEY'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('MAPQUEST_KEY')),
+ "No MAPQUEST_KEY env variable set"
+ )
+ class MapQuestTestCase(GeocoderTestBase):
+diff --git a/test/geocoders/opencage.py b/test/geocoders/opencage.py
+index c00114f..eb65000 100644
+--- a/test/geocoders/opencage.py
++++ b/test/geocoders/opencage.py
+@@ -5,8 +5,8 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['OPENCAGE_KEY'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('OPENCAGE_KEY')),
+ "No OPENCAGE_KEY env variables set"
+ )
+ class OpenCageTestCase(GeocoderTestBase):
+diff --git a/test/geocoders/placefinder.py b/test/geocoders/placefinder.py
+index 3bf0a66..ed3304f 100644
+--- a/test/geocoders/placefinder.py
++++ b/test/geocoders/placefinder.py
+@@ -6,8 +6,8 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['YAHOO_KEY'] is not None and env['YAHOO_SECRET'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('YAHOO_KEY')) and bool(env.get('YAHOO_SECRET')),
+ "YAHOO_KEY and YAHOO_SECRET env variables not set"
+ )
+ class YahooPlaceFinderTestCase(GeocoderTestBase): # pylint: disable=R0904,C0111
+diff --git a/test/geocoders/smartystreets.py b/test/geocoders/smartystreets.py
+index 83f3b34..ed9e7f2 100644
+--- a/test/geocoders/smartystreets.py
++++ b/test/geocoders/smartystreets.py
+@@ -5,17 +5,19 @@
+ from test.geocoders.util import GeocoderTestBase, env
+
+
+-@unittest.skipUnless( # pylint: disable=R0904,C0111
+- env['LIVESTREETS_AUTH_KEY'] is not None,
++@unittest.skipUnless( # pylint: disable=R0904,C0111
++ bool(env.get('LIVESTREETS_AUTH_KEY')),
+ "No LIVESTREETS_AUTH_KEY env variable set"
+ )
+ class LiveAddressTestCase(GeocoderTestBase):
+- def setUp(self):
+- self.geocoder = LiveAddress(
++
++ @classmethod
++ def setUpClass(cls):
++ cls.geocoder = LiveAddress(
+ auth_token=env['LIVESTREETS_AUTH_KEY'],
+ scheme='http'
+ )
+- self.delta = 0.04
++ cls.delta = 0.04
+
+ def test_geocode(self):
+ """
+diff --git a/test/geocoders/util.py b/test/geocoders/util.py
+index 4a130f1..7de103d 100644
+--- a/test/geocoders/util.py
++++ b/test/geocoders/util.py
+@@ -12,6 +12,9 @@
+ env.update(json.loads(fp.read()))
+ except IOError:
+ keys = (
++ 'ARCGIS_USERNAME',
++ 'ARCGIS_PASSWORD',
++ 'ARCGIS_REFERER',
+ 'YAHOO_KEY',
+ 'YAHOO_SECRET',
+ 'BING_KEY',
+
diff --git a/dev-python/geopy/files/1.1.3-version-compat.patch b/dev-python/geopy/files/1.1.3-version-compat.patch
new file mode 100644
index 000000000000..78333a217c6f
--- /dev/null
+++ b/dev-python/geopy/files/1.1.3-version-compat.patch
@@ -0,0 +1,12 @@
+diff --git a/geopy/geocoders/placefinder.py b/geopy/geocoders/placefinder.py
+index 97950fe..814dbaf 100644
+--- a/geopy/geocoders/placefinder.py
++++ b/geopy/geocoders/placefinder.py
+@@ -71,7 +71,6 @@ def __init__(
+ client_secret=self.consumer_secret,
+ signature_method=u"HMAC-SHA1",
+ signature_type=u"AUTH_HEADER",
+- encoding=None # already UTF-8
+ )
+ self.api = "https://yboss.yahooapis.com/geo/placefinder"
+
diff --git a/dev-python/geopy/geopy-1.10.0.ebuild b/dev-python/geopy/geopy-1.10.0.ebuild
new file mode 100644
index 000000000000..6a1833d27ba7
--- /dev/null
+++ b/dev-python/geopy/geopy-1.10.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Geocoding Toolbox for Python"
+HOMEPAGE="http://www.geopy.org/ https://github.com/geopy/geopy"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+IUSE="test doc timezone yahoo"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="yahoo? ( >=dev-python/requests-oauthlib-0.4.0[${PYTHON_USEDEP}]
+ dev-python/placefinder[${PYTHON_USEDEP}] )
+ timezone? ( dev-python/pytz[${PYTHON_USEDEP}] )"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/nose-cover3[${PYTHON_USEDEP}]
+ dev-python/pylint[${PYTHON_USEDEP}] )
+ doc? ( $(python_gen_cond_dep 'dev-python/sphinx[${PYTHON_USEDEP}]' python2_7)
+ >=dev-python/python-docs-2.7.6-r1:2.7 )"
+
+REQUIRED_USE="test? ( yahoo timezone )"
+
+python_prepare_all() {
+ if use doc; then
+ local PYTHON_DOC_ATOM=$(best_version --host-root dev-python/python-docs:2.7)
+ local PYTHON_DOC_VERSION="${PYTHON_DOC_ATOM#dev-python/python-docs-}"
+ local PYTHON_DOC="/usr/share/doc/python-docs-${PYTHON_DOC_VERSION}/html"
+ local PYTHON_DOC_INVENTORY="${PYTHON_DOC}/objects.inv"
+ sed -i "s|'http://docs.python.org/': None|'${PYTHON_DOC}': '${PYTHON_DOC_INVENTORY}'|" docs/conf.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+
+ # prevent install of test folder to avoid file collisions
+ sed -e "s:find_packages():find_packages(exclude=['test','test.*']):" -i setup.py || die
+}
+
+python_test() {
+ # Ignore rogue class IGNFranceTestCase demanding elements beyond a normal testsuite
+ # i.e. "You should provide an api key and a username with a password"
+ # Cannot decipher how to skip or exclude this "context=IGNFranceTestCase"
+ # It appears it MAY stem from nose rather than geopy's suite
+ nosetests --verbose || die "Tests failed under ${EPYTHON}"
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/geopy/geopy-1.8.1.ebuild b/dev-python/geopy/geopy-1.8.1.ebuild
new file mode 100644
index 000000000000..3027bb2e0fc5
--- /dev/null
+++ b/dev-python/geopy/geopy-1.8.1.ebuild
@@ -0,0 +1,60 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Geocoding Toolbox for Python"
+HOMEPAGE="http://www.geopy.org/ https://github.com/geopy/geopy"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+IUSE="test doc yahoo"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="amd64 x86"
+
+RDEPEND="yahoo? ( >=dev-python/requests-oauthlib-0.4.0[${PYTHON_USEDEP}]
+ dev-python/placefinder[${PYTHON_USEDEP}] )"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/nose-cover3[${PYTHON_USEDEP}]
+ dev-python/pylint[${PYTHON_USEDEP}] )
+ doc? ( $(python_gen_cond_dep 'dev-python/sphinx[${PYTHON_USEDEP}]' python2_7)
+ >=dev-python/python-docs-2.7.6-r1:2.7 )"
+
+python_prepare_all() {
+ if use doc; then
+ local PYTHON_DOC_ATOM=$(best_version --host-root dev-python/python-docs:2.7)
+ local PYTHON_DOC_VERSION="${PYTHON_DOC_ATOM#dev-python/python-docs-}"
+ local PYTHON_DOC="/usr/share/doc/python-docs-${PYTHON_DOC_VERSION}/html"
+ local PYTHON_DOC_INVENTORY="${PYTHON_DOC}/objects.inv"
+ sed -i "s|'http://docs.python.org/': None|'${PYTHON_DOC}': '${PYTHON_DOC_INVENTORY}'|" docs/conf.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+
+ # prevent install of test folder to avoid file collisions
+ sed -e "s:find_packages():find_packages(exclude=['test','test.*']):" -i setup.py || die
+}
+
+python_test() {
+ # Ignore rogue class IGNFranceTestCase demanding elements beyond a normal testsuite
+ # i.e. "You should provide an api key and a username with a password"
+ # Cannot decipher how to skip or exclude this "context=IGNFranceTestCase"
+ # It appears it MAY stem from nose rather than geopy's suite
+ nosetests --verbose || die "Tests failed under ${EPYTHON}"
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/geopy/geopy-1.9.1.ebuild b/dev-python/geopy/geopy-1.9.1.ebuild
new file mode 100644
index 000000000000..6a1833d27ba7
--- /dev/null
+++ b/dev-python/geopy/geopy-1.9.1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+PYTHON_COMPAT=( python{2_7,3_3,3_4} )
+
+inherit distutils-r1
+
+DESCRIPTION="A Geocoding Toolbox for Python"
+HOMEPAGE="http://www.geopy.org/ https://github.com/geopy/geopy"
+SRC_URI="https://github.com/${PN}/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+IUSE="test doc timezone yahoo"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="yahoo? ( >=dev-python/requests-oauthlib-0.4.0[${PYTHON_USEDEP}]
+ dev-python/placefinder[${PYTHON_USEDEP}] )
+ timezone? ( dev-python/pytz[${PYTHON_USEDEP}] )"
+DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]
+ test? ( dev-python/nose[${PYTHON_USEDEP}]
+ dev-python/nose-cover3[${PYTHON_USEDEP}]
+ dev-python/pylint[${PYTHON_USEDEP}] )
+ doc? ( $(python_gen_cond_dep 'dev-python/sphinx[${PYTHON_USEDEP}]' python2_7)
+ >=dev-python/python-docs-2.7.6-r1:2.7 )"
+
+REQUIRED_USE="test? ( yahoo timezone )"
+
+python_prepare_all() {
+ if use doc; then
+ local PYTHON_DOC_ATOM=$(best_version --host-root dev-python/python-docs:2.7)
+ local PYTHON_DOC_VERSION="${PYTHON_DOC_ATOM#dev-python/python-docs-}"
+ local PYTHON_DOC="/usr/share/doc/python-docs-${PYTHON_DOC_VERSION}/html"
+ local PYTHON_DOC_INVENTORY="${PYTHON_DOC}/objects.inv"
+ sed -i "s|'http://docs.python.org/': None|'${PYTHON_DOC}': '${PYTHON_DOC_INVENTORY}'|" docs/conf.py || die
+ fi
+
+ distutils-r1_python_prepare_all
+
+ # prevent install of test folder to avoid file collisions
+ sed -e "s:find_packages():find_packages(exclude=['test','test.*']):" -i setup.py || die
+}
+
+python_test() {
+ # Ignore rogue class IGNFranceTestCase demanding elements beyond a normal testsuite
+ # i.e. "You should provide an api key and a username with a password"
+ # Cannot decipher how to skip or exclude this "context=IGNFranceTestCase"
+ # It appears it MAY stem from nose rather than geopy's suite
+ nosetests --verbose || die "Tests failed under ${EPYTHON}"
+}
+
+python_compile_all() {
+ use doc && emake -C docs html
+}
+
+python_install_all() {
+ use doc && local HTML_DOCS=( docs/_build/html/. )
+ distutils-r1_python_install_all
+}
diff --git a/dev-python/geopy/metadata.xml b/dev-python/geopy/metadata.xml
new file mode 100644
index 000000000000..54c8bb9d352d
--- /dev/null
+++ b/dev-python/geopy/metadata.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <herd>python</herd>
+ <upstream>
+ <remote-id type="google-code">geopy</remote-id>
+ <remote-id type="pypi">geopy</remote-id>
+ <remote-id type="github">geopy/geopy</remote-id>
+ </upstream>
+ <use>
+ <flag name="yahoo">Enables use of YahooPlaceFinder</flag>
+ <flag name="timezone">Enables localized date support</flag>
+ </use>
+</pkgmetadata>