On 4 January 2013 09:37, Chris McDonough <chrism@plope.com> wrote:
I've never really understood the idea that mere installation of a distribution should need to write to completely arbitrary locations on the filesystem. Personally, if the software in my distribution needs things to be put in places that aren't circumscribed by the install machinery (console scripts are an example of things that *are* circumscribed by the install machinery) I'll ship the distribution with a script (often a console script) that people can run that does the needful, but this never runs during installation.
I agree - on Windows, I would generally consider a package that installed anything outside of the Python installation to be pretty much broken (it wouldn't work properly in a virtualenv, for example). The problem seems to be that Unix/Linux packaging experts seem to have differing views (in particular around FHS-related concerns). I don't understand these issues well enough to comment, other than to say that even among the Unix community there does not seem to be consensus that there is a need for installation to write outside of site-packages. I do - very occasionally - take a Python installation and move it (for example onto a pen drive). It's no longer a "properly installed" Python, agreed, but for pretty much all practical purposes it still works and I wouldn't like to see that change as a result of absolute paths being mandated in a standard. I'm -1 on absolute paths. Sure, there's an issue with installing files no locations outside the Python installation, but I'd suggest (1) deprecating such usage, and (2) using absolute paths there. An install-time warning might be useful, if it's easy to do. Vinay - does your analysis of PyPI give any indication of what proportion of packages actually use the ability to install to arbitrary locations? I.e., how much of a real world issue is this? Paul.