Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 475636 - dev-python/kiwi-1.9.38 migrate -> distutils-r1 issues, tests failures
Summary: dev-python/kiwi-1.9.38 migrate -> distutils-r1 issues, tests failures
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL: http://bugs.async.com.br/show_bug.cgi...
Whiteboard:
Keywords: EBUILD, TESTED, TESTFAILURE
Depends on:
Blocks:
 
Reported: 2013-07-03 14:51 UTC by Ian Delaney (RETIRED)
Modified: 2013-07-05 04:47 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
tail of a build log displaying failures of test_pyflakes.py (kiwi-1.9.38_build.log,45.70 KB, text/x-log)
2013-07-03 14:51 UTC, Ian Delaney (RETIRED)
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ian Delaney (RETIRED) gentoo-dev 2013-07-03 14:51:27 UTC
Created attachment 352532 [details]
tail of a build log displaying failures of test_pyflakes.py

This package makes twisted look like a walk in the park.
I actually made 2 distinct versions of this given there are so many issues need cleaning up.

Here is a diff of 
dev-python/kiwi $ diff -u kiwi-1.9.38.ebuild kiwi-1.9.38-r2.ebuild

--- kiwi-1.9.38.ebuild	2013-04-16 17:24:53.000000000 +0800
+++ kiwi-1.9.38-r2.ebuild	2013-07-03 21:59:59.867179651 +0800
@@ -1,59 +1,53 @@
 # Copyright 1999-2013 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-python/kiwi/kiwi-1.9.38.ebuild,v 1.1 2013/04/16 09:24:53 patrick Exp $
+# $Header: $
 
-EAPI="4"
-PYTHON_DEPEND="2:2.6"
-SUPPORT_PYTHON_ABIS="1"
-RESTRICT_PYTHON_ABIS="2.4 2.5 3.* *-jython *-pypy-*"
+EAPI=5
+PYTHON_COMPAT=( python{2_6,2_7} )
 
-inherit distutils versionator virtualx
+inherit distutils-r1 versionator virtualx
 
 DESCRIPTION="Kiwi is a pure Python framework and set of enhanced PyGTK widgets"
 HOMEPAGE="http://www.async.com.br/projects/kiwi/
-	https://launchpad.net/kiwi
+	https://github.com/stoq/kiwi/
 	http://pypi.python.org/pypi/kiwi-gtk"
-MY_PN="${PN}-gtk"
-MY_P="${MY_PN}-${PV}"
-SRC_URI="mirror://pypi/${MY_P:0:1}/${MY_PN}/${MY_P}.tar.gz"
+SRC_URI="http://dev.gentoo.org/~idella4/tarballs/${P}-20130703.tar.gz -> ${P}.tar.gz"
 
 LICENSE="LGPL-2.1"
 SLOT="0"
-KEYWORDS="~amd64 ~ppc ~ppc64 ~x86 ~x86-interix ~amd64-linux ~x86-linux"
+KEYWORDS="~amd64 ~ppc ~x86 ~x86-interix ~amd64-linux ~x86-linux"
 IUSE="examples test"
 
-RDEPEND="dev-python/pygtk"
+RDEPEND=">=dev-python/pygtk-2.24[${PYTHON_USEDEP}]
+	>dev-python/sqlobject-0.6.0[${PYTHON_USEDEP}]"
 DEPEND="${RDEPEND}
 	test? (
-		dev-python/pep8
-		dev-python/pyflakes
+		dev-python/mock[${PYTHON_USEDEP}]
+		dev-python/pep8[${PYTHON_USEDEP}]
+		dev-python/pyflakes[${PYTHON_USEDEP}]
+		dev-python/pygobject[${PYTHON_USEDEP}]
 		dev-python/twisted
-	)
-"
+	)"
+DISTUTILS_IN_SOURCE_BUILD=1
 
-S="${WORKDIR}/${MY_P}"
-
-src_prepare() {
-	distutils_src_prepare
+python_prepare_all() {
 	sed -e "s:share/doc/kiwi:share/doc/${PF}:g" -i setup.py || die "sed failed"
+	sed -e 's:^from .utils:from utils:' -i tests/test_interfaces.py || die
+	distutils-r1_python_prepare_all
 }
 
-src_test() {
-	# Tarballs are missing files.
-	# https://code.launchpad.net/~floppym/kiwi/testfiles/+merge/106505
-	rm tests/test_ui.py tests/test_Delegate.py
-
+python_test() {
+	rm tests/{test_ui.py}
+	#  test_ui.py test_pyflakes.py
+	pushd "${BUILD_DIR}"/../ > /dev/null
 	testing() {
-		"$(PYTHON)" tests/run_all_tests.py
+		PYTHONPATH="${PYTHONPATH}":tests "${PYTHON}" tests/run_all_tests.py
 	}
-	VIRTUALX_COMMAND=python_execute_function virtualmake testing
+	VIRTUALX_COMMAND=virtualmake testing
 }
 
-src_install() {
-	distutils_src_install
-
-	if use examples; then
-		insinto /usr/share/doc/${PF}
-		doins -r examples
-	fi
+python_install_all() {
+	use examples && local EXAMPLES=( examples/. )
+	distutils-r1_python_install_all
+	rmdir "${D}"/usr/share/doc/${PF}/{api,howto} || die
 }

Firstly; 
-	# Tarballs are missing files.
-	# https://code.launchpad.net/~floppym/kiwi/testfiles/+merge/106505
lodged; Proposed by Mike Gilbert on 2012-05-19 which takes back to the bumping of *kiwi-1.9.34, and they STILL haven't added the missing source files, and they number a good few.

Secondly.
-SRC_URI="mirror://pypi/${MY_P:0:1}/${MY_PN}/${MY_P}.tar.gz"
+SRC_URI="http://dev.gentoo.org/~idella4/tarballs/${P}-20130703.tar.gz -> ${P}.tar.gz"
Do we await another Christmas to pass for upstream to make a proper tarball, or do we get the msg that they likely never will and make a snapshot of the 1.9.38 version which HAS THE FULL SOURCE and move forward??

Thirdly;
+	sed -e 's:^from .utils:from utils:' -i tests/test_interfaces.py
A simple fix due to the testsuite not co-operating with this relative path in test_interfaces.py.

Fourthly; Now the troublesome hard part, testsuite.
To pass, the testsuite requires removal of tests/{test_pyflakes.py,test_pep8.py,test_ui.py} using the partially complete tarball.  Using the complete tarball, test_pep8.py goes from failing everything to passing all, test_Delegate.py passes in this version.  It would not be possible to attain this without the COMPLETE tarball.  Testsuite then yields 3 fails from test_ui.py and test_pyflakes.py moves from 1 fail from 203 tests to FAILED (failures=15) from 410 tests. 
See the $URL, pending whether an account in async bugzilla is needed.

Fifthly; 
  KEYWORDS.dropped              4
   dev-python/kiwi/kiwi-1.9.34.ebuild: ppc ppc64
   dev-python/kiwi/kiwi-1.9.35.ebuild: ppc ppc64
   dev-python/kiwi/kiwi-1.9.38-r1.ebuild: ppc64
   dev-python/kiwi/kiwi-1.9.38-r2.ebuild: ppc64

Note ppc64 was dropped @ 1.9.34, another instance of a dropped keyword creeping back in.  A decision need be made whether to request re-keywording of ppc, ppc64
Comment 1 Dirkjan Ochtman (RETIRED) gentoo-dev 2013-07-04 14:06:11 UTC
FWIW, it seems most recent development is done here: https://github.com/stoq/kiwi, but they have no active issue tracker. It might be worth joining #pygtk on irc.gnome.org to see if we can engage the maintainers a little more.

For now, I think we should just disable the test suite. I think this probably has very few users on Gentoo anyway. There are just two rdeps, dev-util/gazpacho (the Kiwi homepage says "Gazpacho support has been removed in version 1.9.29") and media-video/flumotion (latest maintenance in Gentoo is from March 2011). So we could just ask ikelos to remove the kiwi dep from gazpacho and ask the gstreamer team if they'd mind getting rid of flumotion, then lastrite all of it together.
Comment 2 Ian Delaney (RETIRED) gentoo-dev 2013-07-05 04:47:29 UTC
right thanks Dirkjan.
Hmm;  you mean look to lastriting kiwi once those rdeps are sorted yes?
The issue tracker appears to be a bugzilla @ http://bugs.async.com.br/ where I finally filed.

*kiwi-1.9.38-r1 (05 Jul 2013)

  05 Jul 2013; Ian Delaney <idella4@gentoo.org> +kiwi-1.9.38-r1.ebuild:
  revbump, migrate -> distutils-r1 according to guides from Bug #475636, closes
  said Bug