Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 10 Feb 2017 01:03:47 +0000
From:      bugzilla-noreply@freebsd.org
To:        python@FreeBSD.org
Subject:   maintainer-feedback requested: [Bug 216953] devel/py-setuptools: egg_info fails under python 3.4.6 on nonexistent MANIFEST graft
Message-ID:  <bug-216953-21822-fE1RjRWXdx@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-216953-21822@https.bugs.freebsd.org/bugzilla/>
References:  <bug-216953-21822@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
John W. O'Brien <john@saltant.com> has reassigned Bugzilla Automation
<bugzilla@FreeBSD.org>'s request for maintainer-feedback to FreeBSD Python
<python@FreeBSD.org>:
Bug 216953: devel/py-setuptools: egg_info fails under python 3.4.6 on
nonexistent MANIFEST graft
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D216953



--- Description ---
Created attachment 179814
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D179814&action=
=3Dedit
Terminal capture showing passing and failing examples

When the MANIFEST.in file contains a graft statement that refers to a direc=
tory
that does not exist, the egg_info command will fail when run under python
3.4.6.

Expected behavior:

    setuptools warns on the nonexistent directory

Observed behavior:

    setuptools exits with an error on the nonexistent directory due to an
unhandled `FileNotFoundError` exception

How to reproduce:

    export DISTUTILS_DEBUG=3Dyes
    echo "graft nope" > MANIFEST.in
    python3.4 \
	-c "from setuptools import setup; setup(name=3D'x', version=3D'0.1.0')" \
	sdist

See the attached sample output comparing output between `distutils.core.set=
up`
and `setuptools.setup` across all versions of python currently supported on
FreeBSD. Only the combination of `setuptools` with python 3.4.6 exhibit this
problem.

N.B. I believe the underlying problem is where `setuptools.commands.egg_inf=
o`
uses `distutils.filelist.findall`. I chose to demonstrate the problem with =
the
sdist command because that is the only `distutils` command that uses
`distutils.filelist.findall`.

See some background on this bug on the freebsd-python list [0].

[0] https://lists.freebsd.org/pipermail/freebsd-python/2017-January/011524.=
html



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-216953-21822-fE1RjRWXdx>