MacPython on Mac OS X 10.3

Apple have included the complete MacPython 2.3 ``engine'' in Mac OS X 10.3, basically everything except the IDE and Package Manager. So the only thing the MacPython distribution for 10.3 contains are the IDE, the Package Manager and the waste module on which they depend. You can get this distribution from the download page.

The downside of Apple including 2.3 is that running MacPython 2.3.3 on Mac OS X 10.3 is a bit of a problem: when you install the full MacPython 2.3.3 distribution (the one labelled here as MacPython 2.3.3 for 10.2) the two installations may get confused when you build extension modules. We hope to solve this for 2.3.4, and in the mean time you can visit the FAQ for some workarounds if you really need 2.3.3.

MacPython on Mac OS X 10.2

MacPython-OSX 2.3.3 is a distribution of Python that contains a complete unix-Python plus a number of Mac-specific extras. It is available in both source and binary form for Mac OS X 10.2 or later (but see the caveat above if you want to run this on 10.2).

When compared to a standard unix Python MacPython includes the following additional features:

  • an Integrated Development Environment, PythonIDE, containing an editor, debugger, class browser and more.
  • A Package Manager that allows easy download and installation of Python extension packages, all tested and tried on Mac OS X.
  • Interfaces for all sorts of Macintosh-specific functionality such as AppleScript, QuickTime, Carbon, Cocoa (through the Package Manager), etc.
  • A PythonLauncher program that runs Python scripts when you double-click them, and allows customization of the way they are run.
  • The ability to create applets and droplets, tiny applications that allow Python scripts to behave as normal applications, and even create fullblown standalone applications in Python without need for the Apple Developer Tools.

Package Manager

The Python Package Manager helps you install additional packages that enhance Python. It determines the exact MacOS version and Python version you have and uses that information to download a database that has packages that are test and tried on that combination. In other words: if something is in your Package Manager window but does not work you are free to blame the database maintainer.

The standard Package Manager database includes a relatively small number of packages, including:

  • PyObjC, which is a full bidirectional bridge between Python and ObjC, thereby allowing you to create Cocoa applications in Python, extend ObjC applications with Python, and much more.
  • Packages that are under development for MacPython 2.4, as they become available.
  • Cross-platform GUI and graphical toolkits like wxWindows, Tkinter and PyOpenGL.
  • PIL for image processing.
  • Numeric for scientific computing.
Depending on demand packages will be added. The PythonMac-SIG mailing list, listed on the community page, is where you should go with your wishes.

In addition to the official database there is an experimental database, with packages still under test, and there are third-party databases. All these are listed on the Package Manager page on the main Python website.

More information

For more information on MacPython see the documentation page. For more information on Python in general see the main Python website. To download MacPython visit the download page.

What about Mac OS X 10.1?

There is one showstopper bug: MacPython applets don't work on 10.1, and the IDE and others are applets. If someone with enough interest in fixing this wants to have a look: the relevant information is in Python bug #781445. We may also have a solution, but we are not sure we can use it for Python 2.3 because of backward-compatibility. Speak up on the mailing list if you are interested in this subject.