On Friday, January 22, 2016 10:54:54 AM Donald Stufft wrote: > > On Jan 22, 2016, at 10:36 AM, Piotr Ożarowski <pi...@debian.org> wrote: > > > > to be honest, I still don't know what you're asking for. What do you > > want us to do? Patch 2.7's distutils? > > Essentially, ensure that setuptools not distutils is used in a setup.py. > There are generally three kinds of setup.py files: > > 1) Ones that use setuptools unconditionally - These ones you just leave > alone, they are already correct and you should already have a build depends > on python-setuptools. 2) Ones that conditionally use setuptools - These > ones you just need to satisfy whatever condition the setup.py uses to > enable setuptools. Typically this is just checking if setuptools is > importable but sometimes they use environment variables or similar. 3) Ones > that use distutils unconditionally - These ones you switch to making them > use setuptools instead of distutils. > > Now, that’s the high level overview, there’s an easier, more automatic way > that could maybe just be added to pybuild (Not sure exactly how pybuild > works) where instead of invoking the setup.py as: > > python setup.py install (or whatever commands/args you’re passing) > > You do it as (taken from pip): > > python -c "import setuptools, > tokenize;__file__='$PWD/setup.py';exec(compile(getattr(tokenize, 'open', > open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))” install > (or whatever commands/args you’re passing). > > The thing is kind of ugly, but that will install things using setuptools > (just like pip does) regardless of if it imports setuptools or distutils in > it’s setup.py file.
I tried this and it works, but what's the big deal? It provides a PKG-INFO file that has identical content to the old egg-info file, an empty dependency links file, and a top_level.txt file with the one line in it. Why is this better (I'm not a huge upstream developer of Python stuff, but I do do some and I don't see what this gets me)? Scott K
Description: This is a digitally signed message part.