Commit Graph

279 Commits

Author SHA1 Message Date
Jack Jansen 18452a4bf2 MacPython-OS9 has its own copy of the interrupt handling code. Added PyErr_SetInterrupt() here too. 2003-07-23 11:39:28 +00:00
Jack Jansen 3e82872eca Merging the various tweaks for MacPython-OS9 2.3a1 back into the trunk. 2003-01-08 16:27:44 +00:00
Jack Jansen 65cbf93fce Get rid of support for Universal Headers older than 3.4 and various other
outdated things.
2002-12-13 15:02:02 +00:00
Jack Jansen 55309a31df Get rid of 2.2 "poor mans universal newlines" now that the real thing
is implemented.
2002-12-13 13:57:35 +00:00
Jack Jansen 5e13951ad7 Very outdated: this is a 68K support file. 2002-12-13 13:33:34 +00:00
Jack Jansen 6c7e326eaa Getting rid of pre-Carbon (MacOS8) support. All code depending on
TARGET_API_MAC_OS8 (or !TARGET_API_MAC_CARBON) is gone. Also some
TARGET_API_MAC_OSX conditional code is gone, because it is no longer
used on OSX-only Python (only in MacPython-OS9).
2002-12-12 10:31:54 +00:00
Jack Jansen 82a9b60b86 Use PyString_CHECK_INTERNED. 2002-09-06 20:42:27 +00:00
Jack Jansen ace9d955b0 Renamed Py_Main to PyMac_Main as it has a different signature than the "normal" Py_Main, and that signature has appeared in a .h file. 2002-08-05 14:13:31 +00:00
Jack Jansen 603e76e882 Fixed potential refcount problems with interned strings, adapted comments, added a bit more trace output if verbose > 1. 2002-07-22 12:35:22 +00:00
Jeremy Hylton 938ace69a0 staticforward bites the dust.
The staticforward define was needed to support certain broken C
compilers (notably SCO ODT 3.0, perhaps early AIX as well) botched the
static keyword when it was used with a forward declaration of a static
initialized structure.  Standard C allows the forward declaration with
static, and we've decided to stop catering to broken C compilers.  (In
fact, we expect that the compilers are all fixed eight years later.)

I'm leaving staticforward and statichere defined in object.h as
static.  This is only for backwards compatibility with C extensions
that might still use it.

XXX I haven't updated the documentation.
2002-07-17 16:30:39 +00:00
Jack Jansen 059ed83cc3 - Got rid if WITH_CYCLE_GC
- Cleaned up Python banner string, so the normal build for MacPython 2.3
  will have a short banner.
2002-07-07 20:54:44 +00:00
Jack Jansen 027f6722c4 Changed some prototypes to match the exact definition in some faraway Apple
header files. If we're building with precompiled headers these are in scope.
2002-06-26 20:37:40 +00:00
Jack Jansen a7f4ded436 Allow the script to have not only a TEXT filetype but also a null filetype (to enable files to be created from the Unix side of OSX to be droppable on the MacPython interpreter). 2002-05-22 15:02:08 +00:00
Jack Jansen 7b8c7546eb Mass checkin of universal newline support.
Highlights: import and friends will understand any of \r, \n and \r\n
as end of line. Python file input will do the same if you use mode 'U'.
Everything can be disabled by configuring with --without-universal-newlines.

See PEP278 for details.
2002-04-14 20:12:41 +00:00
Jack Jansen b19444feca Got rid of ifdefs for long-obsolete GUSI versions and other stuff that is now standard (appearance, interned strings) 2002-04-11 20:48:25 +00:00
Jack Jansen 8ab04b4d65 Got rid of ifdefs for long-obsolete GUSI versions. 2002-04-11 20:46:23 +00:00
Jack Jansen 3cef721b61 Allow .pyc files as applets as well as .py files. .py files have
priority, for safety reasons.
2002-03-29 14:43:50 +00:00
Jack Jansen 0035fb27f4 In MachoPython print "Pythonw" in banner to distinguish from command-line
python.
Removed debug output.
2002-03-29 14:27:06 +00:00
Jack Jansen 00638bd4f9 Don't call PyMac_OutputSeen if we have a custom console. Fix by Alexandre Parenteau. 2002-01-11 10:24:23 +00:00
Jack Jansen 4b517854d0 In MachoPython, don't simulate argc/argv unless we have argc=1 and argv[1]
starts with "-psn_". This means the drag-and-drop continues to work as
expected, but we can now also do
/Applications/Python.app/Contents/MacOS/python script.py
from the command line, which is a lot easier with debugging. Pressing <option>
at this point also has the expected effect of opening the options dialog!
2002-01-02 22:53:38 +00:00
Jack Jansen b9526515b7 Merging changes from release22-branch. 2001-12-27 23:01:18 +00:00
Jack Jansen 031b779d43 Use getcwd(), not silly old getwd(). 2001-12-14 22:57:34 +00:00
Jack Jansen 52306a780b The new menu initialization code would also add the SIOUX menus if a (frozen) Python program had installed its own menubar previously. We now guard against this, with a bit of a hack: FrameWork uses the same Menu ID as Sioux, and the init code checks that the text in the menu is "About SIOUX" before replacing it. 2001-12-10 16:08:14 +00:00
Jack Jansen 101de912d3 Replace sprintf() with PyOS_snprintf(). 2001-12-05 23:27:58 +00:00
Jack Jansen b3be216b41 Merged changes made on r22b2-branch between r22b2 and r22b2-mac (the
changes from start of branch upto r22b2 were already merged, of course).
2001-11-30 14:16:36 +00:00
Jack Jansen 439eaa9f74 Fixed various problems with command-dot handling (some very old):
- Don't scan for cmd-. unless in the foreground
- Scan before switching out to other processes, not after
- don't scan if SchedParams.check_interrupt is false (!)
  - But: do scan if we're blocked on I/O

One problem remains: in the last case KeyboardInterrupt is raised
too late.
2001-11-10 00:41:43 +00:00
Jack Jansen 80c85d80c4 MacPython -vv equivalent printed incorrect filenames, fixed. Also
removed some outdated code.
2001-11-05 14:36:32 +00:00
Jack Jansen 95837f1973 We always install the Sioux menubar, in stead of only when no menubar
was installed previously. This fixes bug #476904, but I'm not 100%
sure it doesn't break anything else. But if it does I'll notice tomorrow
when I try to build GRiNS:-)
2001-11-01 23:17:35 +00:00
Just van Rossum ab57c7dcfc Moved macfsn hackery from macmain.c to macfsmodule.c so it loads
on demand instead of at startup.
2001-10-31 22:55:08 +00:00
Jack Jansen 5ded1bf5c7 Mod by Donovan Preston to allow MacPython to live in a Python.app bundle and understand the __main__.py convention used there for applets. This gives us applets that work on both OS9 and OSX! (Although "applet" may not be the correct word for something that is going to be multimegabyte:-).
But: the code is currently disabled, as it requires CodeWarrior 7 and I'm still using 6.
2001-10-30 22:48:36 +00:00
Jack Jansen a0472f73e6 Mods by Alexandre Parenteau to allow embedding programs to disable the MacPython console window completely, and optionally route console output (and input) to routines provided by the embedding app.
Things don't fully work yet, but at least it doesn't break anything.
2001-10-08 15:35:38 +00:00
Jack Jansen 998a40a6d4 Mods by Donovan Preston (with changes by me to make them "go with the flow")
that will detect an __main__.py or __rawmain__.py in the application bundle.
This file is then exectued as the main script. We now have applets in
MachO Python!!!

The difference between __main__ and __rawmain__ is that the former gets a
complete simulated argv (so you can drop files on the applet and the script
sees them in sys.argv) while the latter skips the argv simulation and the
<option>key dialog. This keeps the AppleEvent that started the app intact,
as well as the funny "-psn_xxxx" argv[1] argument, so the script can do
with these what it wants.
2001-09-11 13:08:10 +00:00
Jack Jansen 6438e1d280 Failing to import macfsn is not a fatal error. 2001-09-11 11:29:31 +00:00
Jack Jansen cf0319326a Implemented PyMac_GetFullPathname for MacPython. 2001-09-11 09:22:19 +00:00
Jack Jansen 697842f58c Replaced PyMac_FullPath by PyMac_FullPathname, which has an extra 'length'
parameter for the return string (as unix pathnames are not limited
by the 255 char pstring limit).
Implemented the function for MachO-Python, where it returns unix pathnames.
2001-09-10 22:00:39 +00:00
Jack Jansen dff7770b7f Changes to make these work under OSX as the main program for a
fullblown drag and drop application. To my surprise it is starting
to work already: Python actually executes a script dropped on it.

To be done:
- Make sure this still works in MacPython
- Don't lose argv[0] in the process
- Applet support
2001-09-05 22:07:52 +00:00
Jack Jansen ff5d8aaa28 Added preferences/startup options for division warning
and accepting unix-style newlines on input.

Also (finally) added a startup option to get -vv behaviour.

Moved __convert_to_newlines to main.c because that's easier with the newline option.
2001-09-01 22:37:54 +00:00
Jack Jansen 3070ee6b37 Experimental feature: allow \n as well as \r as newline for text files, by breaking in to the lowlevel I/O system. Can be disabled by defining WITHOUT_UNIX_NEWLINES. 2001-08-27 23:16:34 +00:00
Jack Jansen f60edf861c PATCHLEVEL is outdated, use PY_VERSION. 2001-08-19 22:32:27 +00:00
Jack Jansen 94bebc0381 Split macglue.c into two: a new mactoolboxglue.c (in ./Python)
with functionality needed for both unix-Python and MacPython and a
new smaller ./Mac/Python/macglue.c which contains MacPython stuff only.

pymactoolbox.h has moved to ./Include from ./Mac/Include and now also
contains the relevant stuff from macglue.h.

The net effect of this is that the ./Mac subdirectory is not needed
anymore for building the unix-Python core on MacOSX (it is needed
for building the extension modules).
2001-08-08 13:17:31 +00:00
Jack Jansen b760923b20 Got rid of 68k-Mac and other outdated ifdefs. 2001-08-07 15:30:23 +00:00
Jack Jansen 59c14e2254 Bit the bullet and enabled garbage collection (finally).
Also updated pyconfig.h to the current state of pyconfig.h.in.
2001-08-07 12:33:32 +00:00
Jack Jansen a5bca579fd PyMac_GetFSSpec must be called via the dylib glue code on OSX. 2001-08-03 15:39:27 +00:00
Jack Jansen cbed91b4db Merging appropriate 2.1.1 fixes back into the main trunk. 2001-08-03 13:31:36 +00:00
Jack Jansen b4a7db7736 config.h renamed to pyconfig.h 2001-07-27 09:22:03 +00:00
Jack Jansen 2c278ed4a5 Fixed another case of the PyArg_Parse 'h' semantic change problem, sigh... 2001-07-12 21:48:10 +00:00
Jack Jansen 4e566ab904 Implemented minimal FSRef support, plus conversion between FSRefs, FSSpecs and pathnames where applicable.
PyMac_GetFSSpec and PyMac_BuildFSSpec have moved to macfsmodule from macglue.

These mods are untested on OSX.
2001-07-08 22:07:23 +00:00
unknown d1054ef31a Set the default 8-bit encoding based on the system script and language. 2001-07-04 22:37:19 +00:00
unknown f428aef3b2 Don't promise mac-japanese encoding as we don't have a codec for it.
Return a reasonable name for the general macos exception (MacOS.Error).
2001-07-04 22:36:27 +00:00
Just van Rossum 0297dca941 Fixed bug that prevented shared libs that are submodules of a
package to be loaded from a PYD resource.
2001-06-26 06:54:33 +00:00