[openstack-dev] Blueprint proposal: Drop setuptools_git for including data/config files

Monty Taylor mordred at inaugust.com
Tue Dec 4 17:29:08 UTC 2012



On 12/04/2012 07:04 AM, Mark McLoughlin wrote:
> On Tue, 2012-12-04 at 15:43 +0100, Thierry Carrez wrote:
>> Ionuț Arțăriși wrote:
>>> On 12/04/2012 02:06 PM, Thierry Carrez wrote:
>>>> In summary, I would hate it if we went back to the previous situation.
>>>> I'm not personally attached to setuptools_git, but any proposed
>>>> replacement solution should keep its simplicity.
>>>
>>> Maybe a solution could be to add a Jenkins hook for re-generating the
>>> MANIFEST.in file after each commit? Just like we currently have for
>>> updating the contributors email list?
>>
>> I suppose that could work, although I'd wait on Monty's opinion before
>> moving on that :)
>>
>> Note that it's not just MANIFEST.in that needs updating, but also the
>> "scripts" entry in setup.py. Most developers just forgot to update it
>> when they added a new executable under bin/... and it needs updating
>> unless you rely on setuptools_git to handle that for you.
>>
>> Makes regenerating as a commit hook a bit more tricky (mix autogenerated
>> with authored content in a single file).
> 
> (Excuse the hand-waving)
> 
> If setuptools_git generates a bunch of info from git when creating a
> tarball, you'd think it would include that info in the tarball itself.
> 
> i.e. if setuptools_git replaces the need for MANIFEST.in to be kept up
> to date, you'd expect that a generated MANIFEST.in would be included in
> the generated tarball.

Ok - I'm just going to respond down here instead of trying to respond to
each of the suggestions (all of which I appreciate, btw)

ttx is right, we did this INSTEAD of a job that did a tarball build and
then compared the results of the tarball with the tree. You might think
that people should care when they add stuff, but you'd be amazed at how
wrong you would be.

What markmc says is almost correct, except that it supplements
MANIFEST.in to produce MANIFEST.

The suggestion about the jenkins job is problematic because we would
like for anyone to be able to re-build a tarball who isn't the openstack
jenkins. We don't actually generate AUTHORS with Jenkins, it's done in
setup.py directly.

There are two potential bugs here. One is that we should probably not
setup_requires setuptools_git. Lemme think about that one a bit more.

For the other one, assuming that we can still meet our current usage
patterns without injecting setuptools_git into setup_requires, can you
please explain in more detail exactly what you are doing that is running
in to problems? setuptools_git should only be affecting the manifest of
things that go into the dist tarball. It should not have any effect on
the build or install commands. So if you can explain a little bit more
about your environment and exactly what you do so that I can reproduce
it, I would be more than thrilled to work with you to help find a
solution that works for all of us.

thanks!
Monty



More information about the OpenStack-dev mailing list