I suspect what's happening is that the install keeps the distribution
dates on the .py files, but that the people who see the problems have
installed (or at least recompiled) the older versions more recently, so
the interpreter doesn't require an overwrite of the 0.96 files.
I've just done an install of 1.0 on my Python 2.6 alpha2 distribution
and I see, for example, that .../django/views/static.py is dated
12/17/2007. In this case there wasn't a previous installation, so I
can't verify that the compilation won't take place if there's an
existing .pyc file. However I *did* verify that a clean re-install
(after deletion of the appropriate build subdirectories) did *not*
change the creation time of the .py file.
So the answer is to put another step in the build process that touches
all files before bundling them up for distribution. Obviously this is
best done outside the version control system.
regards
Steve
Sorry, that should have been ".pyc file".
>
regards
Steve
--
Steve Holden +1 571 484 6266 +1 800 494 3119
Holden Web LLC http://www.holdenweb.com/
> We've had at least three people run into a problem (#9090) after
> installing 1.0 over an old level. Now, we do document that before
> installing you should remove any old level. But I find the results when
> you don't rather odd. It's not just old files renamed/deleted in the new
> level that wind up being 'leftover' in the site-packages directory.
> Rather, some files that exist in both levels, and changed between the
> two, are not updated by install. So you wind up with a mixture of
> 0.96.x and 1.0 level files, which is pretty confusing and subject to odd
> failures.
does that apply to PY files, or is it just that you may have PYC files
from 0.96.x but PY files from 1.0? (Python only looks at the timestamp
when deciding whether to recompile a PY file, so if your PYC files for
0.96.x were created later than the corresponding 1.0 file, Python will
pick up the wrong file).
is the installer you're referring to here "setup.py", or something else?
</F>
regards
Steve