While working on the last 2 version bumps to the twisted package, I
kept getting an error in which the *egg-info/SOURCES.txt file absolute
paths for all the files found in that very same directory.  They are
required to be relative paths only.  This problem currently only affects
some pkgs depending on the setuptools pkg for install.  The source of
the change is that setuptools patches the cpython findall() with one
that returns relative paths for anything in/below the passed in base
directory.  Everything else it returns the absolute path.

Why we should apply this:

   Python upstream has merged the setuptools findall() code and will be
   included in the next releases of python, 2.7.13, 3.4.6, 3.5.4 (I
   think).  So, there is potential for many more python pkgs to be
   affected by this that are not requiring setuptools for install.
   Without the ebb-base setting, the egg-info/* files are not included
   in SOURCES.txt.  The install proceeds without error.  

   NOTE:  This first affects the python_compile_all phase, long before
          it even tries to run the tests (if enabled).


Some history:

   The egg-base settings were originally added for parallel
   testing/install purposes.  They are not used due to problems in
   parallelizing testing, etc..  (something along those lines, I
   don't want to search thru the logs, and mails to see what Michal's
   original words were about it.)

I am working on twisted-16.5.0 and 16.6.0 releases (tests are still
failing), but 16.6.0 has many improvements to the testing code, so has a
lot fewer errors to fix.  Once these are fixed and the eclass changes
are merged, I will be able to add it to the tree.

See attached patch.  NOTE: actual commit message will be
different/updated correctly.  This was just an interim patch for
testing and initial review.

-- 
Brian Dolbec <dolsen>

From 95ae3bf2c330ca3c527a6350829e3b6fc7fb9dc8 Mon Sep 17 00:00:00 2001
From: Brian Dolbec <dol...@gentoo.org>
Date: Fri, 25 Nov 2016 11:48:09 -0800
Subject: [PATCH] nuke setting egg info path

---
 eclass/distutils-r1.eclass | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/eclass/distutils-r1.eclass b/eclass/distutils-r1.eclass
index 2db3be8..68151af 100644
--- a/eclass/distutils-r1.eclass
+++ b/eclass/distutils-r1.eclass
@@ -288,8 +288,6 @@ distutils_install_for_testing() {
 	PYTHONPATH=${libdir}:${PYTHONPATH}
 
 	local add_args=(
-		egg_info
-			--egg-base="${libdir}"
 		install
 			--home="${TEST_DIR}"
 			--install-lib="${libdir}"
@@ -394,9 +392,6 @@ _distutils-r1_create_setup_cfg() {
 		# make the ebuild writer lives easier
 		build-scripts = %(build-base)s/scripts
 
-		[egg_info]
-		egg-base = ${BUILD_DIR}
-
 		# this is needed by distutils_install_for_testing since
 		# setuptools like to create .egg files for install --home.
 		[bdist_egg]
-- 
2.9.3

Reply via email to