On Thu, 4 May 2006 13:19:46 -0400, "Tim Peters" <[EMAIL PROTECTED]>
wrote:

>[David C.Ullrich]
>> Would there be issues (registry settings, environment
>> variables, whatever) if a person tried to install
>> versions 1.x and 2.x simultaneously on one Windows
>> system? Windows 98, if it matters.
>>
>> (I can handle the file associations with no problem.)
>
>There are generally no issues 

One more thing you Python guys got right.

Just curious: How does pythonxx.dll determine things
like where to find the standard library? That's the
sort of thing I'd feared might cause confusion...

>beyond file associations. 

Which is no problem. Either you add "Run 1.x" and "Run 2.x"
to the context menu or you associate .py with a tiny
windowless .exe that emulates the UNIX thing, reading
the first line of the file and then running the
appropriate python.exe.

(Before I tried it I thought that second might slow
down startup, but evidently even Windows is willing
to load a program quickly if it's small enough - I've
never noticed any delay.)

> On Windows,
>Python versions i.j.k and i'.j'.k' coexist happily so long as i != i'
>or j != j'.  For example, I currently have the python.org-released
>Pythons 2.2.3, 2.3.5, and 2.4.3 installed on my Windows box. 

I wouldn't have bothered explaining why I cared except that
I was under the impression that the official line was that
if I wanted to use two versions I must be doing something
wrong. I guess not, fine.

> It would
>be a challenge only if I wanted, say, 2.4.2 and 2.4.3 installed
>simultaneously.
>
>Another possible issue is that whenever the major or minor version
>numbers (i or j) change on Windows, you also need to install matching
>versions of any 3rd party extensions you want.  The major and minor
>version numbers appear in the _name_ of the core Python DLL (like
>python23.dll and python24.dll), and extensions with C code must be
>compiled to link with the correct version of the Python DLL.

No problem with the one emedding I want to use - no recompile
needed, it requires that I simply set the name of the dll as
a "property" of the "engine".

(But simply setting dllname = "python2whatever.dll" gives
errors about functions not found. Is this just me doing
something wrong or did functions with certain names
actually disappear? Not a complaint, just curious.)

>> If anyone feels like pointing out that there's simply
>> no reason to want to keep 1.x after installing the
>> current version: By all means talk me into that!
>
>If you've been using extensions with 1.j.k, then as above they have no
>chance of working with 2.j'.k' bejore you install 2.j' versions of
>those extensions.  That's a good reason to keep an old version.
>
>There have been thousands of bugfixes and language enhancements since
>1.j.k too, and not all are 100% backward-compatible.
>
>In all, best advice is to keep the old version around until you're
>sure you no longer need it.
>
>> The problem is not that I'm concerned about backwards
>> compatibility of Python code. The problem is that I
>> use Python embedded in various Delphi programs,
>> including a "DIDE" that I use really a lot, via
>> a certain set of Delphi "components". These components
>> don't seem to work with 2.x. Presumably the PyDelphi
>> people have new versions of the components that do
>> work with Python 2.x. These presumably use much
>> newer versions of Delphi than what I have. A new
>> version of Delphi is not free... If I could use
>> Python 2.x when I need to while continuing to
>> use 1.x the way I have been for things that
>> don't need 2.x that would be convenient.
>
>That should work fine.  I don't know about PyDelphi, but found what
>appears to be a still-active discussion list:
>
>    http://groups.yahoo.com/group/pythonfordelphi/
>
>The theoretical joy of open source is that if they _don't_ support the
>Python+Delphi combo you have, you can fix that yourself ;-)

Crossed my mind, but only briefly - "theoretically" seems right.
(One of the big improvements in later versions of Delphi is
reference-counted/garbage-colleted dynamically sized arrays.
Taking code using them and converting it to code with manual
memory management seems like it would be a fairly major pain.
Especially if a person wanted to get it right...)

But thanks, theoretically.

************************

David C. Ullrich
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to