Whilst I understand the motivation behind this, introducing a new way of doing things hurts more than helps.
     <a href="https:&#x2F;&#x2F;xkcd.com&#x2F;927&#x2F;" rel="nofollow">https:&#x2F;&#x2F;xkcd.com&#x2F;927&#x2F;</a><p>In particular, I think that the setup.py needs to stay right in the repo root. It&#x27;s an affordance thing. It is probably the single most common way of interacting with any given package, so it should advertise itself prominently and sit right where people can most easily see it.<p>Similarly, I don&#x27;t think that having the module scripts in the root of the repository is at all helpful for those who just want to use (and not actually contribute to) the library.<p>I guess it is a question of balancing the needs of different sorts of consumers. However, given that (under most circumstances) count(users) &gt;&gt; count(contributors), prioritising the needs of users over contributors is entirely justifiable.<p>One point where we agree is on the ugliness of configuration files in the repo root. After all, the following is true: 
    count(users) &gt;&gt; count(contributors) &gt;&gt; count(package-mantainers).
As a result, I would be quite happy to support a convention that places package configuration (and other tool configuration) files in a .config subdir:
       &lt;reporoot&gt;&#x2F;.config&#x2F;.&lt;toolname&gt;rc