[Numpy-discussion] Numpy 1.4.0 rc1 released
Wed Dec 2 06:01:42 CST 2009
On Wed, Dec 2, 2009 at 11:51 AM, David Cournapeau
> René Dudfield wrote:
>> We put in some hacks into pygame distutils for removing old files
>> (with msi installer, and for setup.py installer). However I think the
>> long term solution they are thinking of is to allow distutils to
>> uninstall correctly.
> I think this is just wishful thinking from people who try to improve
> distutils - it is near impossible to implement this correctly with
> distutils, because of how install works (i.e. just dumping whatever
> happens to be in build directory, hope that the list of files is
> correctly handled - which is almost never the case in my experience).
Ugly, but safe hacks to distutils trump breaking installs for me.
There's another bug report about how moving the new install directory
in is better. Then you have very little chance of having a broken
install, and you do not need to worry about over writing files/new
files old files.
'distutils race condition': http://bugs.python.org/issue7412
> That's one of the major flaw of distutils which I hope to fix with my
> project toydist, by being very explicit at each step. In particular, the
> install steps are described from a file generated at build time, and all
> binary installers and eggs will be based on this generated file.
Agreed. Separate steps are needed.
>> I could submit a patch for numpy if you are interested? It would
>> require a list of old files from previous versions of numpy (like
> Do you mean that the files to remove have to be tracked manually ? You
> can always submit a patch to trac, though,
yeah, tracking files between releases manually. If there isn't
already a list of files installed for each numpy release that is. If
there is a file list, then it would be simple to figure out which
files have been removed from each release. There is a new pep being
worked on for making this file list in a specified place I believe.
Actually, we have three sets of files... py_to_remove and
ext_to_remove. Since oldfile.dll is different to oldfile.so etc.
Also there are different .py files... eg, pyc, pyo and others. The
third set is an explicit file, eg 'data/bla.png'
I'll attach a patch to Trac with just with the
'numpy/core/test_defmatrix.py*' to be removed.
Or you can view the pygame setup.py here: look for 'def
remove_old_files', and also "msilib.add_data(self.db, "RemoveFile",
More information about the NumPy-Discussion