commit:     d771aa1f0e069b2663e2e0ccbd49a532fdb07a4c
Author:     Virgil Dupras <vdupras <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 31 02:23:19 2018 +0000
Commit:     Virgil Dupras <vdupras <AT> gentoo <DOT> org>
CommitDate: Tue Jul 31 02:23:59 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d771aa1f

dev-python/fabric: Bump to 2.2.1

The jump for 1.x to 2.x upstream is a major change so I've added a new
slot "2" for it along with a new "fab2" USE flag to decide whether we
install in "side-by-side" mode.

I didn't go for an eselect script because this side-by-side thing is a
transition measure that shouldn't last very long. I also went with the
"fab2" USE flag because it was what was the closest to upstream's
transition strategy[1]. Also:

* EAPI 7
* Python 3.6
* Temporarily drop ~arm64 because of new "invoke" dep
* Remove broken bash completions

In addition to not being able to make bash completions work under 1.x,
the completion situation changed with fab 2.x with invoke being able to
generate them automatically but I haven't been able to make it work for
fabric yet.

[1]: http://www.fabfile.org/installing.html

Closes: https://bugs.gentoo.org/657392
Package-Manager: Portage-2.3.43, Repoman-2.3.10

 dev-python/fabric/Manifest            |  1 +
 dev-python/fabric/fabric-2.2.1.ebuild | 61 +++++++++++++++++++++++++++++++++++
 dev-python/fabric/metadata.xml        |  7 ++++
 3 files changed, 69 insertions(+)

diff --git a/dev-python/fabric/Manifest b/dev-python/fabric/Manifest
index be3209cc837..2b5d632e8d2 100644
--- a/dev-python/fabric/Manifest
+++ b/dev-python/fabric/Manifest
@@ -1,2 +1,3 @@
 DIST Fabric-1.14.0.tar.gz 219294 BLAKE2B 
e4f8512fd5f84dacccdafbde51ed109fd7128954635ea67ed7461f686769c107cfa6bf0181921aea5db214ffb9fb52c7f0de88c5edbbdd63258e8c280e37c70d
 SHA512 
3bb90597356ac033e5a9bba668ec8b080ee10cac31f54b1e89b6e2e21550ba5f2341e774ed9ff52c3a4ecbc3bae3206d155c6bfe6678576caca8e439c7810ed9
 DIST fabric-1.14.0-completion.bash 4266 BLAKE2B 
b691b34d3a62ab8a70d184fe89150d50a0817df0619cfcb4a82dcda485b0a77bb33b5f7e548b1c50ddf8c9c9ae48721c9621e0ca6ed4396dea2f9a0e1ae61931
 SHA512 
2303e3b6a71ac8f6a61ce3bd464f3c950db8374b61a6375ccc6fbb2dc815a4a44509a034788862bd361ace7c0f401533cd5cee0fb6fca8d9ff7e0ffd143706a3
+DIST fabric-2.2.1.tar.gz 145848 BLAKE2B 
8717a2df6d6bac41db3923e85045e1248e4376784ecf35ef3c0dc4e44a6698266305463f535d8998e489e056a158835597ae9117af2de7e6a22e2437c21217dc
 SHA512 
51e570f1a94131e59c0e2b28c7d56e92e3230acdcb5be7c9e1ef96031988aff853ab7f91082ba468f75bf8eaa83ba826372f522ee336dcf1f2665e8222831d87

diff --git a/dev-python/fabric/fabric-2.2.1.ebuild 
b/dev-python/fabric/fabric-2.2.1.ebuild
new file mode 100644
index 00000000000..dddf7851f84
--- /dev/null
+++ b/dev-python/fabric/fabric-2.2.1.ebuild
@@ -0,0 +1,61 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python2_7 python3_6 )
+
+inherit distutils-r1
+
+DESCRIPTION="A simple pythonic tool for remote execution and deployment"
+HOMEPAGE="http://fabfile.org https://pypi.org/project/Fabric/";
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="2"
+KEYWORDS="~amd64 ~x86"
+IUSE="doc fab2 test"
+
+RDEPEND="
+       !fab2? ( !dev-python/fabric:0 )
+       >=dev-python/cryptography-1.1[${PYTHON_USEDEP}]
+       >=dev-python/invoke-1.0[${PYTHON_USEDEP}]
+       <dev-python/invoke-2.0
+       >=dev-python/paramiko-2.4[${PYTHON_USEDEP}]"
+
+BDEPEND="
+       dev-python/setuptools[${PYTHON_USEDEP}]
+       doc? (
+               >=dev-python/alabaster-0.7[${PYTHON_USEDEP}]
+               <dev-python/alabaster-2.0[${PYTHON_USEDEP}]
+               >=dev-python/sphinx-1.4[${PYTHON_USEDEP}]
+               <dev-python/sphinx-1.7[${PYTHON_USEDEP}]
+       )
+       test? (
+               dev-python/mock[${PYTHON_USEDEP}]
+               dev-python/pytest[${PYTHON_USEDEP}]
+               dev-python/pytest-relaxed[${PYTHON_USEDEP}]
+       )"
+
+python_compile() {
+       if use fab2; then
+               export PACKAGE_AS_FABRIC2=1
+               ln -s fabric fabric2 || die
+       fi
+       distutils-r1_python_compile
+}
+
+python_compile_all() {
+       if use doc; then
+               sphinx-build -b html -c sites/docs/ sites/docs/ sites/docs/html 
|| die
+       fi
+}
+
+python_test() {
+       ${EPYTHON} -m pytest -s -v || die "Tests failed"
+}
+
+python_install_all() {
+       use doc && local HTML_DOCS=( sites/docs/html/. )
+       distutils-r1_python_install_all
+}

diff --git a/dev-python/fabric/metadata.xml b/dev-python/fabric/metadata.xml
index 0ed9470ac42..38953b49950 100644
--- a/dev-python/fabric/metadata.xml
+++ b/dev-python/fabric/metadata.xml
@@ -1,10 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd";>
 <pkgmetadata>
+       <maintainer type="person">
+               <email>vdup...@gentoo.org</email>
+               <name>Virgil Dupras</name>
+       </maintainer>
        <maintainer type="project">
                <email>pyt...@gentoo.org</email>
                <name>Python</name>
        </maintainer>
+       <use>
+               <flag name="fab2">Install as "fab2", allowing side-by-side 
install with fabric 1.x</flag>
+       </use>
        <upstream>
                <remote-id type="pypi">Fabric</remote-id>
        </upstream>

Reply via email to