--- /dev/null
+Check for python2 support first, then python3. This should help avoid importing
+the wrong module for python2 where the builtins module can be provided by the
+futures package.
+
+--- twine-1.11.0/tests/test_utils.py
++++ twine-1.11.0/tests/test_utils.py
+@@ -19,9 +19,9 @@
+ import textwrap
+
+ try:
+- import builtins
+-except ImportError:
+ import __builtin__ as builtins
++except ImportError:
++ import builtins
+
+ import pytest
+
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="project">
+ <email>python@gentoo.org</email>
+ <name>Python</name>
+ </maintainer>
+ <upstream>
+ <remote-id type="pypi">twine</remote-id>
+ <remote-id type="github">pypa/twine</remote-id>
+ </upstream>
+</pkgmetadata>
--- /dev/null
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
+
+inherit distutils-r1
+
+DESCRIPTION="Collection of utilities for publishing packages on PyPI"
+HOMEPAGE="https://twine.readthedocs.io/ https://github.com/pypa/twine https://pypi.python.org/pypi/twine"
+SRC_URI="https://github.com/pypa/twine/archive/${PV}.tar.gz -> ${P}.tar.gz"
+# pypi tarballs don't contain test data
+#SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="test"
+
+CDEPEND="dev-python/setuptools[${PYTHON_USEDEP}]"
+DEPEND="${CDEPEND}
+ test? (
+ dev-python/pytest[${PYTHON_USEDEP}]
+ dev-python/pretend[${PYTHON_USEDEP}]
+ )
+"
+RDEPEND="${CDEPEND}
+ >=dev-python/tqdm-4.14[${PYTHON_USEDEP}]
+ >=dev-python/pkginfo-1.4.2[${PYTHON_USEDEP}]
+ >=dev-python/requests-2.5.0[${PYTHON_USEDEP}]
+ >=dev-python/requests-toolbelt-0.8.0[${PYTHON_USEDEP}]
+ $(python_gen_cond_dep 'dev-python/pyblake2[${PYTHON_USEDEP}]' python{2_7,3_4,3_5})
+"
+
+PATCHES=( "${FILESDIR}"/${P}-tests.patch )
+
+python_test() {
+ py.test -v tests || die "tests fail with ${EPYTHON}"
+}