Panda and Python 2.5

In principle, you can compile Panda to work with any version of Python. However, there is a particular fundamental incompatibility with Python 2.5 on Windows.

The problem is that the Python team changed the rule for importing extension modules in Python 2.5. Previously, you could import a .dll or a .pyd file as a Python module (the files are the same except for the extension). Beginning in Python 2.5, for some reason they decided to specifically disallow importing a .dll file; all Python modules must now be named .pyd. The problem is that Panda is compiled to a number of .dll files that serve both as standard Windows dll’s and as Python modules. We cannot name them .pyd, because then Windows will not be able to import them as dll’s. We cannot name them .dll, because then Python will not be able to import them. So we have a problem.

Eventually, we will have to solve this by creating two files: a standard Windows .dll file, as we have now, and a stub .pyd file that can be imported into Python and simply loads in the .dll. Until then, you may have trouble building Panda for Python 2.5.

This problem is specific to Windows. There are no changes to the import rules for non-Windows platforms.

David