[PATCH] distutils: Add MANIFEST.in file to include all files in 'python setup.py sdist'

Mads Kiilerich mads at kiilerich.com
Thu Jun 2 07:22:36 CDT 2011


Thorne, Stephen wrote, On 06/02/2011 02:24 AM:
> On Thu, Jun 2, 2011 at 10:17 AM, Thorne, Stephen<stephen at thorne.id.au>  wrote:
>> On Thu, Jun 2, 2011 at 8:35 AM, Matt Mackall<mpm at selenic.com>  wrote:
>>> $ rm MANIFEST
>>> $ make MANIFEST>  /dev/null
>>> $ grep util.h MANIFEST
>>> mercurial/util.h
>>> $ grep pure MANIFEST
>>> mercurial/pure/base85.py
>>> mercurial/pure/bdiff.py
>>> mercurial/pure/diffhelpers.py
>>> mercurial/pure/mpatch.py
>>> mercurial/pure/osutil.py
>>> mercurial/pure/parsers.py
>> Yep. I see those in the MANIFEST that's generated by the Makefile.
>> Follow those commands with these commands:
>>
>> $ rm -rf dist
>> $ python setup.py sdist>  /dev/null
>> warning: sdist: manifest template 'MANIFEST.in' does not exist (using
>> default file list)
>>
>> $ tar -tvf dist/mercurial*.tar.gz | grep util.h
>> $
>>
>> And  you see where the problem is.

It would help if you pointed out that this problem also causes "make 
dist" to generate bad tar files.

> Further to this, I believe this is actually a python2.7 regression.
> MANIFEST from the makefile works fine on python2.6, this bug in the
> python bug tracker is relevent: http://bugs.python.org/issue11104

So now we have some more information. Can you come up with a patch that 
makes it work as intended both in 2.6 and buggy 2.7 and 2.7.x with 
whatever fix upstream might implement?

It would perhaps also be nice to have a patch that verifies that the 
"make dist" tar content actually matches the list generated by Makefile.

/Mads


More information about the Mercurial-devel mailing list