Go to QuArK Web Site
Python Interpreters & Versions
Updated 05 Apr 2018
Upper levels:
QuArK Information Base
4. The Source Code
4.4. Specific Topics

 4.4.7. Python Interpreters & Versions

 [ Prev - Up - Next ] 

Python support and versioning is implemented in 'source/python/Python.pas' and 'source/python/PyVersions.inc'.

QuArK first looks for the 'dlls/Python.dll', and if that is not found, it looks for the appropriate DLL using the default Windows search behaviour. The following versions are supported with the appropriate defines set.

  • Python 2.7: 'PYTHON27' (python27.dll) (not supported)
  • Python 2.6: 'PYTHON26' (python26.dll) (not supported)
  • Python 2.5: 'PYTHON25' (python25.dll) (not supported)
  • Python 2.4: 'PYTHON24' (python24.dll) - this is the default
  • Python 2.3: 'PYTHON23' (python23.dll)
  • Python 2.2: 'PYTHON22' (python22.dll)
  • Python 2.1: 'PYTHON21' (python21.dll)
  • Python 2.0: 'PYTHON20' (python20.dll)
  • Python 1.x: Not supported anymore

Note that if you downloaded a source distribution of QuArK, the appropriate 'python.dll' should be included in the archive.

The bundled Python support is to get around the fact that the version of Python supported can only be set at compile time. It substantially simplifies the installation process for the end user, and makes only one download necessary. It also ensures that all end users are running the same version of Python, removing a possible source of bugs (people using the wrong version of Python for the QuArK binary they have). It also allows us to go ahead with writing code that requires features only available in more recent versions of Python.

Even though Python 2.4 is outdated and Python 2.6 runs QuArK just fine, Python 2.5 and later have dropped Windows 95 support. Dropping support for an entire operating system just because you're updating some internally used library without a real benefit is not a smart idea, so the current branch of QuArK will probably remain Python 2.4 forever.


Copyright (c) 2022, GNU General Public License by The QuArK (Quake Army Knife) Community - https://quark.sourceforge.io/

 [ Prev - Top - Next ]