[Python-Dev] Integrate lxml into the stdlib?
Terry Reedy
tjreedy at udel.edu
Fri Mar 6 20:08:33 CET 2009
Guido van Rossum wrote:
> On Fri, Mar 6, 2009 at 9:54 AM, Terry Reedy <tjreedy at udel.edu> wrote:
> No, it is expected to "just work" because sqlite3 is (presumably) very
> careful about backwards compatibility, and because the Windows DLL API
> (just like the shared library API in Linux and other systems) is
> designed to allow substitution of newer versions. The linkage
> requirements are roughly that all entry points into a DLL (or shared
> library) that are referenced by the caller (in this case the wrapper
> extension module) are supported in the new version, and have the same
> signature and semantics.
>
>> I have no idea, but my WinXP .../Python30/ install has
>>
>> DLLs/_sqlite3.pyd 52K
>
> This is the wrapper extension module.
>
>> DLLs/sqlite3.dll 557K
>
> This is sqlite3 itself. I am presuming that the phrase "replace the
> sqlite DLL" above refers to this one -- although the same argument
> actually holds for the .pyd file, which is also a DLL (despite its
> different extension).
>
>> libs/_sqlite3.lib 2K
>
> I think this is a summary of the entry points into one of the above
> DLLs for the benefit of other code wanting to link against it, but I'm
> not sure.
>
>> For whatever reason, most other things do not have all three files.
>
> You only see a .pyd and a .dll when there's a Python wrapper extension
> *and* an underlying 3rd party library.
Thanks, I understand now.
>> I do not know whether upgrades (like 3.0.0 to 3.0.1) would clobber other
>> things added here.
>
> It would, but not in a harmful way.
By 'clobber', I meant 'delete', and I do not see how that would not be
harmful ;-). I don't know whether the intaller creates a new directory
(and deletes the old), clears and reuses the old, or merely replaces
individual files.
tjr
More information about the Python-Dev
mailing list