[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Amend Debian Python Proposal to Include More Python Metadata?



On Friday, January 22, 2016 10:54:54 AM Donald Stufft wrote:
> > On Jan 22, 2016, at 10:36 AM, Piotr Ożarowski <piotr@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

Attachment: signature.asc
Description: This is a digitally signed message part.


Reply to: