Python version coexistence on WIndows

Tim Peters tim at zope.com
Tue Aug 7 15:56:13 EDT 2001


[Mats Wichmann]
> Can someone give me advice on how to have several versions of Python
> coexist nicely on a Windows box?  Or to be mnore precise, how can I
> install a new experimental version of Python without messing up my
> existing working setup?
>
> I haven't felt motivated to do this on a Windows box previously and
> it's really no problem on UNIX and cousins which is where I've done
> this kind of stuff before.

The most obvious way is for you to-- just like you do on Unix --stay away
from doing anything on Windows that *relies* on registry settings.  The core
PythonLabs Windows distribution makes no use of the registry for normal
operation, so if you're doing something that does need registry info, that's
not our fault <wink>.

> But things change, so I'm working more on Win2k at the moment... I
> installed 2.2a1 and the installer updated all the registry entries to
> say that was the current version,

Well, yes -- in what sense are you testing 2.2a1 if it doesn't do that?  The
alpha strives to act as much like the final release as possible.

> and I had to go fiddle by hand to set it back so that the default
> (file associations and other things) was 2.1.

Uninstalling 2.2a1 will restore the registry to its preinstall state by
magic.  Or installing 2.1 again will overwrite what 2.2a1 did.  Or etc:  the
registry is a global shared resource here, with all the obvious problems and
workarounds that come with such a thing.

The Python 2.2a2 Windows distribution should work better for you in several
respects:

+ It has an "Advanced Options" dialog, allowing not to register file
  extensions at all, and not to create any Start Menu shortcuts.

+ Also a "non-admin install" option, which under Win2K writes nothing
  under HKLM, only under HKCU.  Since Win2K allows (for the first
  time) registering file extensions under HKCU, you can have a full
  but independent 2.2a2 install via creating a new user acct for it
  and doing a non-admin install while under that (admin installs
  continue to require Admin privs, and write under HKLM).

+ Also a new option to create copies of everything replaced under
  a BACKUP directory.  This allows the uninstaller to restore Start
  Menu entries too (although if you're mixing 2.1 with 2.2a2, by
  default they're under different Start Menu names anyway (Python 2.1
  and Python 2.2 respectively)).

So there are several ways your life can be easier starting with the next
alpha.  Whether that's enough depends on what exactly you meant by "and
other things".






More information about the Python-list mailing list