This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author eric.araujo
Recipients alexis, eric.araujo, fberger, tarek
Date 2011-07-19.14:33:02
SpamBayes Score 1.2404855e-07
Marked as misclassified No
Message-id <1311085983.29.0.922616032511.issue12585@psf.upfronthosting.co.za>
In-reply-to
Content
Thanks for such a good report.  Symlinks handling in distutils is under-specified; this question showed up a few months ago on the distutils-sig mailing list, with no good answer.

distutils is a special part of the standard library: as it spent a long time without dedicated maintainer, people used to rely on undocumented behavior and bugs, so when Tarek took over maintenance and started to improve and fix things, a lot of third-party code was broken.  That’s why it was decided to put distutils under a feature freeze, fixing only clear bugs, and moving efforts for new development and cleanups into the distutils2 fork (also called packaging in the Python 3.3 standard library).

Because of the fragility of distutils, we have to be careful when dealing with bug reports.  Our process is that a bug is a behavior that contradicts the documentation, otherwise it’s classified as a new feature.  For this report, I’ve found only two mentions of symlinks in the distutils docs, the first one in a support function (Doc/distutils/apiref.rst) and the second one in the docs about the MANIFEST file (Doc/distutils/sourcedist.rst).  So the only promise that the docs make is that MANIFEST entries that are symlinks are supported, but nothing is said about what will end up in the sdist.

I hope that this explanation will let you see why I’m reluctant to change distutils: we don’t know what code we will break if we improve symlink handling.  So, do you think adding a warning about symlink handling issues in the docs would be enough?

For distutils2 however, compatibility concerns do not apply yet, so we’re free to fix and document symlink handling.  If you would like to work on a patch, here are some guidelines: <http://wiki.python.org/moin/Distutils/Contributing>.  If you can’t, then thanks again for your report, which will be a good starting point.
History
Date User Action Args
2011-07-19 14:33:03eric.araujosetrecipients: + eric.araujo, tarek, alexis, fberger
2011-07-19 14:33:03eric.araujosetmessageid: <1311085983.29.0.922616032511.issue12585@psf.upfronthosting.co.za>
2011-07-19 14:33:02eric.araujolinkissue12585 messages
2011-07-19 14:33:02eric.araujocreate