diff --git a/Mac/Contrib/osam/OSAm.prj b/Mac/Contrib/osam/OSAm.prj index 87ce163394b..c7e45bf86ad 100644 Binary files a/Mac/Contrib/osam/OSAm.prj and b/Mac/Contrib/osam/OSAm.prj differ diff --git a/Mac/Distributions/(vise)/Python 2.2.vct b/Mac/Distributions/(vise)/Python 2.2.vct index 2576f380d20..e53f6f46ef6 100644 Binary files a/Mac/Distributions/(vise)/Python 2.2.vct and b/Mac/Distributions/(vise)/Python 2.2.vct differ diff --git a/Mac/Distributions/binary.exclude b/Mac/Distributions/binary.exclude index ea770a470c2..e0b3b92fd4a 100644 --- a/Mac/Distributions/binary.exclude +++ b/Mac/Distributions/binary.exclude @@ -19,6 +19,8 @@ *.orig *.prj *.prj.exp +*.pyc +*.pyo *.xSYM *.µ *.µ.exp @@ -32,5 +34,3 @@ CVS Makefile* Setup.in [(]*[)] -*.pyc -*.pyo diff --git a/Mac/Distributions/binary.include b/Mac/Distributions/binary.include index e75b325b95d..1c6f4177c0e 100644 --- a/Mac/Distributions/binary.include +++ b/Mac/Distributions/binary.include @@ -219,3 +219,5 @@ (':pystone.py', None) (':setup.py', None) (':site-packages', None) +(':Mac:ReadMe~0', None) +(':Mac:Contrib:mpwsystem', '') diff --git a/Mac/Distributions/dev.include b/Mac/Distributions/dev.include index 65e1fbb232a..e7476e6d6f8 100644 --- a/Mac/Distributions/dev.include +++ b/Mac/Distributions/dev.include @@ -263,6 +263,9 @@ (':Mac:Build:gdbm.mcp', None) (':Mac:Build:gdbm.mcp.exp', None) (':Mac:Build:gdbm.mcp.xml', None) +(':Mac:Build:hfsplus.carbon.mcp', None) +(':Mac:Build:hfsplus.carbon.mcp.exp', None) +(':Mac:Build:hfsplus.carbon.mcp.xml', None) (':Mac:Build:icglue.carbon.mcp', None) (':Mac:Build:icglue.carbon.mcp.exp', None) (':Mac:Build:icglue.carbon.mcp.xml', None) @@ -406,6 +409,7 @@ (':Mac:mwerks:mwerks_plugin_config.h', ':Mac:mwerks:') (':Mac:mwerks:mwerks_shared_config.h', ':Mac:mwerks:') (':Mac:mwerks:mwerks_shcarbon_config.h', '') +(':Mac:mwerks:mwerks_shlib_config.h', '') (':Mac:mwerks:mwerks_small_config.h', ':Mac:mwerks:') (':Mac:mwerks:mwerks_thrcarbonsm_config.h', None) (':Mac:mwerks:mwerks_threadsmall_config.h', '') @@ -596,7 +600,16 @@ (':readmefiles', None) (':setup.py', None) (':site-packages', None) -(':Mac:Build:hfsplus.carbon.mcp.xml', None) -(':Mac:Build:hfsplus.carbon.mcp.exp', None) -(':Mac:Build:hfsplus.carbon.mcp', None) -(':Mac:mwerks:mwerks_shlib_config.h', '') +(':Mac:Build:_CG.carbon.old.mcp', None) +(':Mac:Build:_CG.carbon.mcp.exp', None) +(':Mac:Build:_CG.carbon.mcp', None) +(':Mac:Build:_CarbonEvt.carbon.mcp.xml', None) +(':Mac:Build:_CarbonEvt.carbon.mcp.exp', None) +(':Mac:Build:_CarbonEvt.carbon.mcp', None) +(':Mac:ReadMe~0', None) +(':Modules:timemodule.c~1', None) +(':Modules:timemodule.c~0', None) +(':Mac:Build:PythonStandSmall.old.mcp', None) +(':Mac:Build:PythonInterpreter.old.mcp', None) +(':Mac:Build:PythonCore.axp', None) +(':Mac:Build:_dummy_tkinter.old.mcp', None) diff --git a/Mac/Include/macbuildno.h b/Mac/Include/macbuildno.h index 6eda0041459..ae377c1018b 100644 --- a/Mac/Include/macbuildno.h +++ b/Mac/Include/macbuildno.h @@ -1 +1 @@ -#define BUILD 116 +#define BUILD 121 diff --git a/Mac/ReadMe b/Mac/ReadMe index 79a94ad5d34..974509068fb 100644 --- a/Mac/ReadMe +++ b/Mac/ReadMe @@ -1,9 +1,14 @@ -How to install Python 2.2b2 on your Macintosh +How to install Python 2.2c1 on your Macintosh --------------------------------------------- +This is a release candidate for MacPython 2.2, please report any problems as +soon as possible, by email to pythonmac-sig@python.org. + This is a MacPython that can run on classic MacOS (from 8.1 onwards) and natively on MacOSX. The installer tries to work out whether you can -use the Carbon version or not. +use the Carbon version or not. For Mac OS X users: this version of Python +does not run from the command line, it is a pure "Mac only" app. Use the standard +unix Python from the commandline, the two Pythons will be merged in the future. You should definitely read the Relnotes file too, and the section below about toolbox module reorganization. You should also read :Misc:NEWS, which lists @@ -62,6 +67,11 @@ Note that although the package is called Carbon the modules work fine under classic PPC, and they are normal classic modules. Also note that some modules you may think of as toolbox modules (such as Waste) really are not, and they are not in the Carbon package. + +Also, all toolbox modules have been updated to Universal Headers 3.4, and +are (for classic PPC) weak-linked against InterfaceLib so that they should +work on all systems back to MacOS 8.1. Calling an unimplemented function will +raise an exception, not crash your interpreter. Another change related to the OSX growth path is that there is a new module macresource that you can use to easily open a resource file accompanying your @@ -161,7 +171,7 @@ Uninstalling Two items are installed in the system folder: the interpreter shared libraries PythonCore and PythonCoreCarbon lives in the Extensions -folder and the "Python 2.2b2 Preferences" file in the Python subfolder +folder and the "Python 2.2c1 Preferences" file in the Python subfolder in the Preferences folder. All the rest of Python lives in the folder you installed in. @@ -211,9 +221,9 @@ this means you can keep your older version around if you are unsure whether to upgrade. The bad news is that your old preference settings are lost and you have to set them again. -After you are satisfied that 2.2b2 works as expected you can trash +After you are satisfied that 2.2c1 works as expected you can trash anything in the system folder that has "python" in the name and not -"2.2b2". +"2.2c1". The ConfigurePython... applets will try to detect incompatible preferences files and offer to remove them. This means that re-running @@ -246,7 +256,8 @@ Corran Webster, Tony Ingraldi, Erik van Blokland, Bill Bedford, Chris Stern, Gordon Worley, Oliver Steele, M. Papillon, Steven Majewski, David Goodger, Chris Barker, Luc Lefebvre, Tattoo Mabonzo K., Russell Finn, Tom Bridgman, Russel Owen, Pascal Oberndoerfer, Dean Draayer, -Alexandre Parenteau, Donovan Preston +Alexandre Parenteau, Donovan Preston, Daniel Brotsky, Jason Harper, +Nitin Ganatra, and all the other people who provided feedback, code or both! MacPython includes waste, a TextEdit replacement which is (c) 1998 diff --git a/Mac/Relnotes b/Mac/Relnotes index 2bfe0035ed3..3d99c13e37c 100644 --- a/Mac/Relnotes +++ b/Mac/Relnotes @@ -1,8 +1,8 @@ -Changes in 2.2b2 since 2.1.1 +Changes in 2.2c1 since 2.1.1 ---------------------------- These release notes refer to Mac-specific changes only. See NEWS (in the Misc folder) -for machine-independent changes. Changes that are new in 2.2b2 are flagged as such. +for machine-independent changes. Changes that are new in 2.2c1 are flagged as such. - The main change is that all toolbox modules have moved to a package called Carbon. @@ -11,20 +11,27 @@ for machine-independent changes. Changes that are new in 2.2b2 are flagged as su some open questions and join the discussions on pythonmac-sig if you have anything to contribute. Aside from reducing clutter this change will also benefit the port to Mach-O/OSX Python later. +- All toolbox modules have been updated to Universal Headers 3.4. [2.2c1] +- Toolbox modules are weaklinked against InterfaceLib (for PPC builds) and raise + an exception when you call an unimplemented one on an old MacOS. [2.2c1] - On input MacPython now accepts either \n (unix style) or \r (mac style) newlines for text files. This behaviour can be turned off with a preference. This is an experimental feature; again: feedback is requested. +- The IDE looks better on OS X, but still not as good as on OS9. [2.2c1] - Command-dot handling has been improved a lot: scripts are now much easier to interrupt, - and they only scan for cmd-. while in the foreground. [2.2b2] -- "Copy" from the MacPython console window was always disabled. Fixed. [2.2b2] -- This release should run on MacOS 8.1 again. [2.2b2 build 116] -- A new, rather different GUSI I/O library is used. Please report any strange behaviour - with I/O to the pythonmac-sig mailing list! [2.2b2] + and they only scan for cmd-. while in the foreground. +- "Copy" from the MacPython console window was always disabled. Fixed. +- This release should run on MacOS 8.1 again. +- A new, rather different GUSI I/O library is used. +- time.time() returns positive values again. [2.2c1] - There is a new module macresource which makes it easier to open a resource file accompanying your script when the script is not (yet) converted to an applet. This module will later also do the right thing in Mach-O/OSX Python. +- (Carbon only) experimental modules Carbon.CG (CoreGraphics) and CarbonEvt have + been added. [2.2c1] - A new, experimental module hfsplus is included, which gives access to some of the - functionality of the HFS+ API. [2.2b2] + functionality of the HFS+ API. +- A new, experimental module gives access to Carbon Events. [2.2c1] - Threads had a stack that was too small for many serious Python applications (20K). They now get 64K. There is still no overflow check, though. - Garbage collection and the gc module have (finally) been enabled. @@ -48,9 +55,7 @@ for machine-independent changes. Changes that are new in 2.2b2 are flagged as su What is not in this distribution -------------------------------- -- Stackless Python/microthreads hasn't been ported to 2.2 yet. If/when it becomes available - Just will undoubtedly announce it on pythonmac-sig and the MacPython homepage. -- The toolbox modules have not been updated to Universal Header 3.4 or CarbonLib 1.4 yet. +- The toolbox modules have not all been updated to Universal Header 3.4 or CarbonLib 1.4 yet. Known problems -------------- @@ -58,13 +63,14 @@ Known problems This list is probably incomplete, more problems may be listed on the MacPython homepage, http://www.cwi.nl/~jack/macpython.html. -- MacPython 2.2b2 (and MacPython 2.1) will not run correctly on a multiprocessor MacOS X +- MacPython 2.2 (and MacPython 2.1) will not run correctly on a multiprocessor MacOS X machine, it will quickly deadlock during I/O operations. The GUSI I/O library is suspected, hints/clues/workarounds are solicited. - Tkinter does not work under Carbon. - The IDE and Tkinter do not work together. Run tkinter programs under PythonInterpreter. - Tkinter file events do not work, unless you have opened the file through Tcl (but then you cannot access it from Python). +- The IDE object and class browser look funny on OSX, but they work fine. - Aliases may not work in sys.path entries. - PythonInterpreter used interactively will eat a lot of processor cycles. You should use PythonIDE for interactive work and PythonInterpreter for scripts only. This is especially