Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 657080 - app-portage/gemato-13.0: breaks portage update: error in gemato setup command: 'extras_require' must be a dictionary whose values are strings or lists of strings containing valid project/version requirement specifiers.
Summary: app-portage/gemato-13.0: breaks portage update: error in gemato setup command...
Status: RESOLVED INVALID
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Unclassified (show other bugs)
Hardware: AMD64 Linux
: Lowest minor (vote)
Assignee: Michał Górny
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-06-02 07:21 UTC by Marcel Schilling
Modified: 2018-06-02 10:55 UTC (History)
2 users (show)

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


Attachments
emerge --info (emerge.info,5.68 KB, text/plain)
2018-06-02 07:24 UTC, Marcel Schilling
Details
build log (build.log,3.14 KB, text/plain)
2018-06-02 07:27 UTC, Marcel Schilling
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Marcel Schilling 2018-06-02 07:21:54 UTC
After an emerge --sync I was notfied about a new portage version being available.
I ran emerge -1 portage which pulled in app-portage/gemato-13.0.
This failed during setup with mentioned error.

Reproducible: Always

Steps to Reproduce:
sudo emerge -1 '=app-portage/gemato-13.0'
Actual Results:  
python2.7 setup.py build
error in gemato setup command: 'extras_require' must be a dictionary whose values are strings or lists of strings containing valid project/version requirement specifiers.
 * ERROR: app-portage/gemato-13.0::gentoo failed (compile phase):
 *   (no error message)
 *
 * Call stack:
 *     ebuild.sh, line  124:  Called src_compile
 *   environment, line 2576:  Called distutils-r1_src_compile
 *   environment, line  780:  Called _distutils-r1_run_foreach_impl 'distutils-r1_python_compile'
 *   environment, line  311:  Called python_foreach_impl 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line 2119:  Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line 1494:  Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line 1492:  Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'distutils-r1_python_compile'
 *   environment, line  514:  Called distutils-r1_run_phase 'distutils-r1_python_compile'
 *   environment, line  771:  Called distutils-r1_python_compile
 *   environment, line  646:  Called esetup.py 'build'
 *   environment, line 1039:  Called die
 * The specific snippet of code:
 *       "${@}" || die "${die_args[@]}";
 *
 * If you need support, post the output of `emerge --info '=app-portage/gemato-13.0::gentoo'`,
 * the complete build log and the output of `emerge -pqv '=app-portage/gemato-13.0::gentoo'`.
 * The complete build log is located at '/var/tmp/portage/app-portage/gemato-13.0/temp/build.log'.
 * The ebuild environment file is located at '/var/tmp/portage/app-portage/gemato-13.0/temp/environment'.
 * Working directory: '/var/tmp/portage/app-portage/gemato-13.0/work/gemato-13.0'
 * S: '/var/tmp/portage/app-portage/gemato-13.0/work/gemato-13.0'
Comment 1 Marcel Schilling 2018-06-02 07:24:34 UTC
Created attachment 534442 [details]
emerge --info

emerge --info '=app-portage/gemato-13.0::gentoo'
Comment 2 Marcel Schilling 2018-06-02 07:26:22 UTC
emerge -pqv '=app-portage/gemato-13.0::gentoo'

[ebuild  N    ] app-portage/gemato-13.0  USE="blake2 bzip2 gpg -lzma -sha3 {-test} -tools" PYTHON_TARGETS="python2_7 python3_5 (-pypy) -python3_4 -python3_6"
Comment 3 Marcel Schilling 2018-06-02 07:27:44 UTC
Created attachment 534444 [details]
build log

/var/tmp/portage/app-portage/gemato-13.0/temp/build.log
Comment 4 Zac Medico gentoo-dev 2018-06-02 07:39:00 UTC
Please upgrade to a newer version of dev-python/setuptools and if that works then we just need to update the dependency thin the gemato ebuild.
Comment 5 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-06-02 07:59:30 UTC
I've just tested gemato against the oldest version in ::gentoo, and it works.  I will update the dep.  However, please start upgrading your @world deeply because leaving stray ancient packages is going to make stuff un-upgradeable at some point.
Comment 6 Larry the Git Cow gentoo-dev 2018-06-02 08:01:04 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f86d74a6a4f1490f1cf6075f656b7404e00a05b2

commit f86d74a6a4f1490f1cf6075f656b7404e00a05b2
Author:     Michał Górny <mgorny@gentoo.org>
AuthorDate: 2018-06-02 07:59:50 +0000
Commit:     Michał Górny <mgorny@gentoo.org>
CommitDate: 2018-06-02 08:00:54 +0000

    app-portage/gemato: Bump dep on setuptools
    
    Closes: https://bugs.gentoo.org/657080

 app-portage/gemato/gemato-12.2.ebuild | 2 +-
 app-portage/gemato/gemato-13.0.ebuild | 2 +-
 app-portage/gemato/gemato-9999.ebuild | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)
Comment 7 Marcel Schilling 2018-06-02 09:06:09 UTC
I am still experiencing this error.

Also, I am using setuptools 37 already:

equery keywords setuptools

Keywords for dev-python/setuptools:
             |                             |   u   |
             | a a       p   a           s |   n   |
             | l m   i   p   r h m m s   p | e u s | r
             | p d a a p c x m p 6 i 3   a | a s l | e
             | h 6 r 6 p 6 8 6 p 8 p 9 s r | p e o | p
             | a 4 m 4 c 4 6 4 a k s 0 h c | i d t | o
-------------+-----------------------------+-------+-------
   34.0.2-r1 | + + + + + + + + + + ~ + + + | 6 o 0 | gentoo
   36.0.1    | ~ ~ ~ ~ ~ ~ ~ ~ ~ ~ o ~ ~ o | 6 o   | gentoo
[I]36.7.2    | + + + + + + + + + o ~ o o ~ | 6 o   | gentoo
   38.5.1    | ~ ~ ~ ~ ~ ~ ~ ~ ~ o ~ o o ~ | 6 o   | gentoo
     9999    | o o o o o o o o o o o o o o | 6 o   | gentoo
Comment 8 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-06-02 09:19:16 UTC
Did you ever run pip as root?
Comment 9 Marcel Schilling 2018-06-02 09:28:50 UTC
I hope not and not as far as my shell history goes back but the system is many years old and I'm not sure how I could check.
Comment 10 Marcel Schilling 2018-06-02 09:31:46 UTC
I just ran sudo emerge -1 setuptools to re-install it just in case but the error persits.
Comment 11 Marcel Schilling 2018-06-02 09:35:56 UTC
I tried `sudo pip list` but it turns out I don't even have pip installed. Still possible I used to have it at some point and screwed things up without ever realizing.
Comment 12 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-06-02 09:40:54 UTC
python2.7 -c 'import setuptools; print(setuptools.__version__)'
Comment 13 Marcel Schilling 2018-06-02 09:47:35 UTC
python2.7 -c 'import setuptools; print(setuptools.__version__)'

0.6
Comment 14 Marcel Schilling 2018-06-02 09:50:05 UTC
python2.7 -c 'import setuptools; print(setuptools.__file__)'

/usr/lib64/python2.7/site-packages/distribute-0.6.49-py2.7.egg/setuptools/__init__.pyc
Comment 15 Marcel Schilling 2018-06-02 09:58:52 UTC
I tried emerge -1 pip to uninstall this egg but (not surprisingly) hit

ImportError: <module 'setuptools.dist' from '/usr/lib64/python2.7/site-packages/distribute-0.6.49-py2.7.egg/setuptools/dist.pyc'> has no 'check_specifier' attribute
Comment 16 Marcel Schilling 2018-06-02 10:04:14 UTC
I temporarily moved away /usr/lib64/python2.7/site-packages/distribute-0.6.49-py2.7.egg, installed pip via

sudo emerge -1 pip

and moved back the module.

sudo pip list

shows setuptools (36.7.2) but does not mention distribute at all.
Comment 17 Marcel Schilling 2018-06-02 10:13:48 UTC
cat /usr/lib64/python2.7/site-packages/easy-install.pth

import sys; sys.__plen = len(sys.path)
./distribute-0.6.49-py2.7.egg
import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:]; p=getattr(sys,'__egginsert',0); sys.path[p:p]=new; sys.__egginsert = p+len(new)
Comment 18 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-06-02 10:21:44 UTC
Don't use pip.  You'll need to find all the extraneous files and remove them manually.  That .pth file and distribute* directories are good candidates but you may want to look for more.  You can try using 'qlist -a | grep /usr/lib64/python' to get all files that should be there, and then use it to determine what you have in extra.

Closing as user error.
Comment 19 Marcel Schilling 2018-06-02 10:24:02 UTC
I now just 'fixed' it by running

sudo easy_install -m distribute
sudo rm -r /usr/lib64/python2.7/site-packages/distribute-0.6.49-py2.7.egg
sudo rm /usr/lib64/python2.7/site-packages/easy-install.pth

Apologies for wasting your time.
Comment 20 Michał Górny archtester Gentoo Infrastructure gentoo-dev Security 2018-06-02 10:55:59 UTC
No problem.  We're here to help.