Commit Graph

2633 Commits

Author SHA1 Message Date
Jack Jansen 4b5c7a4f47 Allow access to the returned value(s) as FSRefs. Unfortunately for some
reason getting at saveFileName doesn't work, so it currently only really
works for opening files for reading.
2002-11-22 23:39:52 +00:00
Jack Jansen d0e59fb68d Added the alias manager too. The interface isn't perfect yet: the alias
manager doesn't always have the alias as the first argument, so things
become functions in stead of methods.
2002-11-22 15:53:32 +00:00
Jack Jansen e2ba87396c Got angry and added support for pretty much the whole file and folder
manager. This should allow us the get rid of most of the FSSpecs, only
navigation services remains to be done.
2002-11-22 14:58:35 +00:00
Just van Rossum 62a103b2fc workaround so the (otherwise still broken) IDE can at least quit in the Python 2.2 Jaguar addon install 2002-11-22 12:48:47 +00:00
Just van Rossum db2a0f6778 changed to use Lib/bundlebuilder.py instead of scripts/buildappbundle.py 2002-11-22 11:52:15 +00:00
Just van Rossum e6de56e81c make the --link option match the original: just symlink the executable 2002-11-22 11:45:42 +00:00
Just van Rossum 16aebf77c7 Added --link-exec option: make a symlink for the executable only, copy all other files. 2002-11-22 11:43:10 +00:00
Just van Rossum 224405fcfd Replaced the bundle building code with calls to the new bundlebuilder
module.
Jack: I've compared the .app output of the orginal with the new and I
can't find any significant differences. However, bundlebuilder.py
contains its' own command line interface and I think we should use
that instead. I'll have a look to see whether I can patch
Mac/OSX/Makefile.jaguar to this effect.
2002-11-22 11:10:49 +00:00
Just van Rossum f7aba23644 fixed error in cmd line doc; moved funny self.name line once more 2002-11-22 00:31:50 +00:00
Just van Rossum 7fd69ad2f1 fixed stupid bug 2002-11-22 00:08:47 +00:00
Just van Rossum ceeb9627c1 added command line interface; refactored a bit; little things. 2002-11-21 23:19:37 +00:00
Just van Rossum 3e554d7b8a name kwargs kwargs 2002-11-21 10:29:57 +00:00
Just van Rossum ad33d72361 Tools to create MacOS X (application) bundles.
Todo:
- command line parsing
- main program
- modulefinder(-like ;-) support to build standalone apps.
2002-11-21 10:23:04 +00:00
Just van Rossum 10263d6e6b - cleaned up example/test code
- don't encode/escape elements
- fixed typo in doc string
- provide our own copy function for the Dict class
2002-11-20 20:47:55 +00:00
Jack Jansen 1b99896944 dded cvsignores. 2002-11-20 14:14:14 +00:00
Jack Jansen d8d7bbe3b9 Minimal instructions on building a MacPython-OSX addon for Apple's
/usr/bin/python.
2002-11-20 14:07:57 +00:00
Jack Jansen 1ebcc4427a Build PythonLauncher for MacPython-OSX 2.2 as well. 2002-11-20 14:06:16 +00:00
Jack Jansen e37469297c This file is now generated dynamically. 2002-11-20 14:05:41 +00:00
Just van Rossum db951c34e3 removed a redundant .strip(); made a doc string more or less tell the truth 2002-11-19 23:11:49 +00:00
Just van Rossum 247e16ef80 No need to import __builtin__, spotted by Skip. 2002-11-19 23:01:20 +00:00
Just van Rossum 0ec2744fb8 Pure Python implementation of a plist generator/parser. 2002-11-19 22:01:02 +00:00
Jack Jansen 293fdeb31e Another workaround, to find the IDE directory when we're in MacPython-OSX
on Jaguar.

Ceteram censeam W era packagendam esse.
2002-11-18 15:29:02 +00:00
Jack Jansen 972573553e Define PyDoc_STR if it isn't defined. This makes these modules compile
for Python 2.2.
2002-11-18 15:26:43 +00:00
Jack Jansen 5efbbcd793 Build waste, _Help and _Scrap too. 2002-11-18 13:48:18 +00:00
Jack Jansen 26e6be3572 First stab at a Makefile that will create a MacPython that uses the
Apple-installed Python 2.2 from /usr/bin as it's underlying engine.
All the MacPython stuff is installed into /Applications/MacPython-OSX,
and .pth files and other magic are used to tie everything together.

So far only the raw windowing interpreter and BuildApplet work.
2002-11-15 00:13:33 +00:00
Jack Jansen 4ea1f455d7 Go from filename to FSSpec via FSRefs, to work around outdated macfs module
in python 2.2.
2002-11-15 00:08:29 +00:00
Jack Jansen d892d4e1c0 Make the Resources directory if needed. 2002-11-15 00:07:31 +00:00
Jack Jansen 180ceedc09 Python 2.2 as installed by Apple has a version of _Res that is too old. We
attempt to load an override version in this case.
2002-11-15 00:06:52 +00:00
Jack Jansen 25e61d9e0a Added a hack so we can build applets with a MacPython that uses the
OSX 10.2 apple-supplied Python as its base: if we've copied a symlink
as the executable we remove it and install appletrunner in stead.
2002-11-15 00:05:47 +00:00
Jack Jansen b54a6ce154 A script to run applets. Originally by Just, slightly modified by me. 2002-11-15 00:04:09 +00:00
Jack Jansen eb342298de - Use imp to find appletrawmain.py in stead of hand-crafting the path
to it.
- Allow for symlinks in the applet template.
2002-11-11 00:06:14 +00:00
Jack Jansen 7d996a2bb7 - Building IDE is optional on waste being available, similar to building
IDLE (it was a fatal error before)
- Shuffled a few things around to facilitate the experimental building
  of MacPython for Jaguar's pre-installed python.
2002-11-11 00:05:00 +00:00
Jack Jansen dde800ec4e Got rid of the python.rsrc resource file. The error message strings and
dialogs are now stored in Mac/Lib, and loaded on demand through macresource.
Not only does this simplify a MacPython based on Apple's Python, but
it also makes Mac error codes come out symbolically when running command
line python (if you have Mac/Lib in your path).

The resource files are copied from Mac/Resources. The old ones will disappear
after the OS9 build procedure has been adjusted.
2002-11-07 23:07:05 +00:00
Jack Jansen 65fe8dda15 Script to create .app bundles. Largely untested. 2002-11-06 23:15:51 +00:00
Jack Jansen 37e477216b Forward port of 1.12.14.3 (which has an incorrect log message):
if SetDates() in touched() returns an error ignore it: the user may not have
permission to change the parent folder. This is a non-serious problem,
the only function of touched() is to speed up the finder seeing the
change.
2002-10-29 22:48:43 +00:00
Jack Jansen b1248ceb90 Under Jaguar it seems that 'errn' return value keyword parameters don't
(or don't always?) show up with missed(). I think this is a bug in
Jaguar, but as it is a potential dangerous problem (the OSA event has
failed, but the Python code isn't told about this and happily continues)
this is a quick workaround.

Bugfix candidate, I'll add it to 2.2.2 as a last second fix.
2002-10-25 20:06:29 +00:00
Just van Rossum 7b0255153f 'Replace all' in the find dialog didn't properly update the text view (it used to, though...). Fixed. 2002-10-24 20:03:29 +00:00
Just van Rossum 7aa7f2eb0d cd to users home dir if no current dir has been set. Fixes bug #625734 2002-10-20 17:14:28 +00:00
Just van Rossum 3c4dee4ca7 make sure the object browser can't crash because when the list data gets bigger than 32kB 2002-09-16 21:18:49 +00:00
Just van Rossum b7dd49453c add ./ to configure command so it actually works verbatim 2002-09-16 20:18:27 +00:00
Jack Jansen 89841bda65 Shut up FutureWarnings about hex constants. 2002-09-12 22:35:45 +00:00
Jack Jansen 76a6ab661b Patch by Tony Lownds: build an IDLE applet too, if _tkinter is available.
I modified the patch to make it a non-fatal error if IDLE isn't built.
2002-09-12 22:19:23 +00:00
Jack Jansen e87ed57ea6 Patch by Tony Lownds: add the Resources directory to sys.path. 2002-09-12 21:58:47 +00:00
Jack Jansen 10c6eda070 Mode rU for universal newlines, not rT. Spotted by Guido. 2002-09-12 19:41:28 +00:00
Jack Jansen ec694c32a7 Pass None to AHGotoPage(). 2002-09-11 22:05:59 +00:00
Jack Jansen f6b3fddfc3 The debugger source view only understood mac-style linefeeds. Fixed. 2002-09-11 22:05:02 +00:00
Jack Jansen 93ad6a7a3b Converted to Vise 8. 2002-09-11 00:55:48 +00:00
Jack Jansen 17d67f07cd All set for 2.3 installer, except for upgrade of Vise version. 2002-09-10 21:15:44 +00:00
Jack Jansen a0d1833639 Fixed typo spotted by Whomas Touters. 2002-09-10 20:07:34 +00:00
Jack Jansen 47ec141963 Added include guards and C++ extern "C" {} constructs. Partial fix for #607253.
Bugfix candidate.
2002-09-10 12:32:47 +00:00
Jack Jansen 2575022aef Reverted previous change, I was confused. 2002-09-10 12:22:32 +00:00
Jack Jansen 796e5f75e2 Next few steps towards a 2.3 installer. 2002-09-07 00:10:31 +00:00
Jack Jansen 481fddfc46 First steps towards a 2.3 installer. 2002-09-06 23:37:07 +00:00
Jack Jansen 277fc7efce Enable _AH module. 2002-09-06 23:33:40 +00:00
Jack Jansen bc603547ae Import Carbon.AH, not Carbon.Help 2002-09-06 23:33:31 +00:00
Jack Jansen 7f677f49ea Reorganized order of help menu, and don't show Carbon documentation
entries on OS9 (where they are never available, and simply disabling
them might lead people to think otherwise).
2002-09-06 23:03:32 +00:00
Jack Jansen 25a8f0d5f8 Silly me, I enabled the old help module. Fixed. 2002-09-06 22:59:00 +00:00
Jack Jansen b34101162d Added carbon Help module. 2002-09-06 22:41:03 +00:00
Jack Jansen 521dd9f231 Upped the stack size to 256KB. test_class ran afoul of the 64K limit, and this is probably a better fix than lowering the recursion limit. 2002-09-06 21:59:21 +00:00
Jack Jansen fdf427f584 Updated the notes on building a binary installer. 2002-09-06 21:55:47 +00:00
Jack Jansen 997429a5f4 The script was very sloppy about which variables held source pathnames
and which held destination pathnames. Fixed.
2002-09-06 21:55:13 +00:00
Jack Jansen 1f74ed8c4c Fixed a typo in the binary install notes
rewrapped: as usual with my files everything was far wider than 80 chars.
2002-09-06 21:00:55 +00:00
Jack Jansen 3a70e3f9ef Get rid of non-ascii characters. 2002-09-06 20:43:28 +00:00
Jack Jansen 82a9b60b86 Use PyString_CHECK_INTERNED. 2002-09-06 20:42:27 +00:00
Jack Jansen 8ba4220637 Started on documentation for building a MacOSX binary installer.
Unfinished.
2002-09-06 20:24:51 +00:00
Jack Jansen 3337ea731b Remove .pyo files too. 2002-09-06 20:23:09 +00:00
Jack Jansen a6db44f169 Script to generate .pkg packages, donated by Dinu Gherman. This is his
original code, it still needs fiddling to make it work in general
circumstances.
2002-09-06 19:47:49 +00:00
Jack Jansen 94fab762de Generate pythonw.sh on the fly.
Use the build python for as many things as possible.
2002-09-02 12:29:11 +00:00
Jack Jansen e3d9f405e9 Pass -x badsyntax to compileall.
Tweaks to make builds work for non-standard dstroot.
2002-09-02 12:16:00 +00:00
Jack Jansen b2d2bc9a55 Implemented the Help menu. The Python manual can be viewed (if installed)
and the selection can be looked up, and so can the Carbon manual. From the
help menu you can also get to the online documentation, the Python website
and the MacPython page.

Untested in MacPython-OS9.
2002-08-31 01:25:17 +00:00
Jack Jansen 6be89564cc If there's an environment variable PYTHONIDEPATH it points to the IDE
folder. This allows running the IDE from the source tree on OSX.
2002-08-31 01:22:37 +00:00
Jack Jansen f94cadf456 MenuID's are signed. 2002-08-31 01:20:53 +00:00
Jack Jansen fe9acdea8a Typecode for AHTOCType was wrong. Fixed. 2002-08-30 23:02:09 +00:00
Jack Jansen 4e39949d87 Initialize self._helpmenu earlier, so we can use gethelpmenu() while
building the user menus.
2002-08-30 23:01:28 +00:00
Jack Jansen bdbff73feb Fix for Jaguar: use ln for installing symlinks, install no longer works.
Fix for sh: use : in stead of an empty then clause in an if.
2002-08-30 15:14:02 +00:00
Jack Jansen b05e056e9f On Jaguar the default mode for files in the installed product is 444 (or 555)
in stead of 644 (755). This makes a subsequent install fail. Changed
the INSTALL_MODE_FLAG to fix this.
2002-08-30 12:56:08 +00:00
Jack Jansen f21b7063d3 Added support for the help menu. Application.gethelpmenu() will return
it.

Also fixed menu IDs to be signed in do_menudispatch. this is an incompatible
change, but I don't think it'll hurt anyone.
2002-08-29 22:04:15 +00:00
Jack Jansen 983258ed7e Revived the Carbon.Help module, but implementing the MacHelp API in stead
of the defunct Balloons API. Help tags are TBD, but at least this gives
us access to the help menu.
2002-08-29 21:09:00 +00:00
Jack Jansen afb76320ab Don't copy the documentation when using Python.app as an applet template. 2002-08-29 20:20:24 +00:00
Jack Jansen 278a3a22d7 Distutils-based script by Bill Fancher to download the Python documentation
HTML tarball and use it to create a documentation tree readable and
searchable with Apple Help Viewer. The documentation also shows up in
Project Builder (if you add Python.framework to your project).
2002-08-28 22:22:10 +00:00
Jack Jansen 4684a09fc5 - Install a symlink to the documentation (which lives in the framework)
in Python.app, and refer to it in Info.plist. This makes Apple Help
  Viewer recognize the Python documentation.
- Changed the externally visible name of Python.app to "Python" (was PythonW).
2002-08-28 21:27:02 +00:00
Jack Jansen f90367c6d4 This file never made it to the repository, somehow. 2002-08-28 21:19:26 +00:00
Jack Jansen 5472376f0d These were regenerated some time ago (with ascii chars only and
fully qualified imports) but somehow not checked in yet.
2002-08-28 21:18:37 +00:00
Jack Jansen 4f2d89f1f8 Interface to Apple Help Viewer. 2002-08-28 21:16:53 +00:00
Jack Jansen fd372aa8e9 Don't build ConfigurePythonCarbon and ConfigurePythonClassic any longer,
classic Python is gone.
2002-08-22 23:37:00 +00:00
Jack Jansen 5fd945895e For MacPython-OS9 verbose is the default. 2002-08-22 23:36:11 +00:00
Jack Jansen d59f8d0691 Interface to Apple Help Manager. 2002-08-22 23:31:37 +00:00
Jack Jansen f34a8bced2 Moved CoreFoundation type support to bgen/macsupport. 2002-08-22 23:30:49 +00:00
Jack Jansen 286e838f22 Added PyDoc_STR's. 2002-08-22 23:29:45 +00:00
Jack Jansen 0281512b87 Merged the MacPython thanks list into the general acknowledgements.
There's really no point in a separate list of thank-you notes.
2002-08-19 13:17:39 +00:00
Jack Jansen 58ba80a6a6 Refuse to run if the last bit of the destination path contains a # character.
This is a silly workaround for a rather serious bug in MacOSX: if you take
a long filename and convert it to an FSSpec the fsspec gets a magic
cooky (containing a #, indeed). If you then massage the extension of this
fsspec and convert back to a pathname you may end up referring to the
same file. This could destroy your sourcefile. The problem only occcurs
in MacPython-OS9, not MacPython-OSX (I think).

Closes bug #505562.
2002-08-18 21:57:09 +00:00
Jack Jansen 49931887d7 Regenerated with PyDoc_STR() around docstrings. 2002-08-16 09:09:31 +00:00
Jack Jansen 7ca993ed37 Fixed the bugs in the constant definitions, and in the code to test
them.
The FutureWarnings are still there, until a way has been found to
say "I know what I'm doing here when I say 0xff000000".
2002-08-15 22:05:58 +00:00
Jack Jansen 87eea88b5a After generating the Python file with definitions try to run it, so
we catch errors during the build process in stead of later during runtime.
2002-08-15 21:48:16 +00:00
Jack Jansen 81204152d4 Try to cater for a source tree checked out with MacCVS in stead of
unix cvs. In this case the resource files are actual resource files
in stead of AppleSingle encoded files.
2002-08-15 21:31:18 +00:00
Jack Jansen 7a1703d8cb Updated for the current state of affairs. 2002-08-12 20:46:18 +00:00
Jack Jansen 45c8e92728 - Precompile py files in Mac subtree after installing
- Pre-cache .rsrc files in Mac subtree after installing
- Fixed nameclash in Make variables
2002-08-09 14:15:46 +00:00
Jack Jansen ccd8e8d741 - Check not only that cache file exists, but also that it is newer than
the applesingle file.
- Added optional verbose option for cachersrc tool.
2002-08-09 13:44:03 +00:00
Jack Jansen b8da8d7761 Tool to pre-created cached .rsrc.df.rsrc files in the Lib directories,
similar to compileall.py.
2002-08-09 13:42:55 +00:00
Jack Jansen d77f93ad81 Obsolete now that there's a python implementation of strptime in the
standard lib.
2002-08-09 10:22:11 +00:00
Jack Jansen f1148f0bb3 Patch by Russel Owen: if we have command line arguments zap pyc files
in the directories given.
2002-08-09 10:17:28 +00:00
Jack Jansen a70ab8cd4f Depracated some non-carbon modules. 2002-08-09 09:03:31 +00:00
Jack Jansen 9536bcbfd8 This file should have gone long ago. 2002-08-09 09:02:01 +00:00
Jack Jansen cb4321eb17 By popular demand the frameworkinstall target now installs everything:
the framework, the MacOSX apps and the unix tools.
Most of the hard work is done by Mac/OSX/Makefile.

Also, it should now be possible to install in a different directory,
such as /tmp/dist/Library/Frameworks, for building binary installers.
The fink crowd wanted this.
2002-08-09 00:18:21 +00:00
Jack Jansen 617e2305ee Use hex escape for non-ascii chars, now that the parser wants that.
Good thing, too: some of the characters had been mangled by OS9->CVS->OSX
roundtrips.
2002-08-08 21:16:56 +00:00
Jack Jansen 295105f3aa Regenerated with OSA class inheritance and fix for non-ascii chars. 2002-08-07 15:53:42 +00:00
Jack Jansen 7ff034b65b Fixed incorrect logic in determining whether we should initialize
the classes' attribute list.
2002-08-07 15:52:44 +00:00
Jack Jansen 21f675826e - If an OSA identifier is a Python reserved word we now append an _
in stead of prepending it, which messes up "import * from".
- A few ascii()s added again.
- Changed the getbaseclasses a little, but it still isn't perfect.
2002-08-07 15:44:53 +00:00
Jack Jansen 2f7f8c4a64 Don't be over-enthusiastic with the ascii() calls: we don't need it if
the result passes through backticks.
2002-08-07 15:05:42 +00:00
Jack Jansen 8b77767094 Donovan Preston's patch #538395, with some mods by me.
This patch makes inheritance for OSA classes work. The implementation is a
bit convoluted, but I don't immedeately see a simpler way of doing it.

I added calls to ascii() everywhere we output strings that may contain
non-ascii characters (Python has gotten very picky since the encoding
patch:-).

I also removed Donovan's different way of opening resource files: I don't
seem to need it.
2002-08-07 14:49:00 +00:00
Jack Jansen b2bb87300b Quote the arguments, they may contain strings. 2002-08-07 14:05:58 +00:00
Jack Jansen 9c5b61b21b Patch #567296 by Pim Buurman, slightly modified by me so it can be disabled
at compile time: use PBGetCatInfoSync() to get FInfo data in stead of
GetFInfo. The latter doesn't work for folders. The former does, at
least on OSX, and insofar the info makes sense for a folder.
2002-08-06 12:59:44 +00:00
Jack Jansen 137d8c5667 Wrapper around _IBCarbon. 2002-08-06 09:32:57 +00:00
Jack Jansen 94caa78ebf Patch by Ronald Oussoren: if there's a .lproj in the extras list also
check whether it contains a .nib, and do the Cocoa song and dance if
it does.
2002-08-05 22:06:29 +00:00
Jack Jansen 0a9d7559e8 In copy() don't try to obtain an FSSpec until we know the destination
exists. Partial fix for #585923.
2002-08-05 21:53:57 +00:00
Jack Jansen 20417bcd18 Better output for errors, and some progress reports.
Handle the two modules with non-standard scanner module names.
2002-08-05 21:14:16 +00:00
Jack Jansen c4ff194bdd Fixed the last two bgen-based modules to be buildable on OSX. 2002-08-05 21:13:07 +00:00
Jack Jansen aaebdd6a02 Enable building of Carbon toolbox modules with unix-Python. 2002-08-05 15:39:30 +00:00
Jack Jansen ff8dec7427 Got rid of staticforward. 2002-08-05 15:36:57 +00:00
Jack Jansen a4741ffe63 This can now run under unix-Python too. You have to pass the folder
to search on the command line in that case.
2002-08-05 15:33:44 +00:00
Jack Jansen 6573f31874 Moved bgenlocations to the Mac/Lib directory. Not perfect, but better than
where it was: it is really a configuration file, not a normal module.

By moving it into Mac/Lib we can now also store the location of bgen
itself in there, which is needed because bgen isn't installed.
2002-08-05 14:56:04 +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 3bd3fedeca Added _IBCarbon module. 2002-08-05 14:12:24 +00:00
Jack Jansen 83f5c38403 The definitions for IBCarbonRuntime.h 2002-08-04 22:03:36 +00:00
Jack Jansen acbaefd796 Updated to something that works on my system, and regenerated module. 2002-08-04 21:59:37 +00:00
Jack Jansen 0c069924e5 Donovan Preston's interface to IBCarbon, allowing you to use Interface
Builder carbon NIB files from Python. As-is, I may need to twiddle a few
things as he donated this long ago.

Donovan is now one of the four people in the world who know how to drive
bgen!
2002-08-04 21:34:24 +00:00
Jack Jansen d64845dbbe Mkdirs() failed when provided with unix pathnames. Fixed. 2002-08-03 20:49:10 +00:00
Jack Jansen 0e0a479821 Added an icon for .pyw files. 2002-08-02 22:32:41 +00:00
Jack Jansen 2f8816fda6 An icon for .pyw files. Yes, it's lousy, I know.... 2002-08-02 22:18:05 +00:00
Jack Jansen 940dc922c0 Build the IDE last, as it may fail because of waste missing. 2002-08-02 21:46:40 +00:00
Jack Jansen 0fdaee7419 Added a lot more information on framework builds, the various .app's,
etc. Still not enough, probably, but better than what we had.
2002-08-02 21:45:27 +00:00
Jack Jansen 337f85d34f Updated for the new path to Python.app. 2002-08-02 21:05:16 +00:00
Jack Jansen f80798b1ca When building the IDE check that waste is available, to forestall
surprises later (the IDE won't work without waste).
2002-08-02 21:04:46 +00:00
Jack Jansen 940e970f6e Also create BuildApplet. It's useful enough as a standalone application. 2002-08-02 15:32:12 +00:00
Jack Jansen 3e6c80bf5e Hmm, in some cases we don't seem to get our scriptname in argv[0].
Cater for that by working from sys.executable.
2002-08-02 15:31:25 +00:00
Jack Jansen ba1c13db4f Final step in making applets first-class citizens: if the applet wants
argv emulation (i.e. if the end user drops files and folders on the
applets these will show up in sys.argv) BuildApplet will add the required
code to the applet bundle, in __rawmain__.pyc.

This code is compiled from appletrawmain.py, it creates sys.argv, cleans
up most of the mess and executes either __main__.py or __main__.pyc.
2002-08-02 14:57:43 +00:00
Jack Jansen a9454e21a7 Oops, the -psn stuff is in argv[1], of course. 2002-08-02 14:54:46 +00:00
Jack Jansen 21ed16acbe Added one call to Py_Main(), for OSX framework builds only, that will get the
actual script to run in case we are running from an applet. If we are indeed
running an applet we skip the normal option processing leaving it all to the
applet code.

This allows us to get use the normal python binary in the Python.app bundle,
giving us all the normal command line options through PythonLauncher while
still allowing Python.app to be used as the template for building applets.

Consequently, pythonforbundle is gone, and Mac/Python/macmain.c isn't used
on OSX anymore.
2002-08-02 14:11:24 +00:00
Jack Jansen 94416e55d3 Got rid of a couple of OS9-isms. 2002-08-02 14:04:42 +00:00
Jack Jansen 2eb4b18f94 - Slightly better error message in case of syntax errors in the script.
- The applet .rsrc file should be called python.rsrc, it is not based on the
  applet name.
2002-08-02 14:04:15 +00:00
Jack Jansen 6e1986ba9c - Remove -psn-xxxx argument added by the Finder.
- "Open Document" appleevent is "odoc", not "open".
2002-08-02 12:56:21 +00:00
Jack Jansen f4f6d4859d Construct a sys.argv from the initial AppleEvent sent by the finder
during startup of a program. This module will replace the C code in
macgetargv.c so we can get rid of the special macmain.c for OSX
Python.app.
2002-08-02 11:12:15 +00:00
Jack Jansen d05e18139f Slightly better error message in case of missing resources. 2002-08-02 11:03:19 +00:00
Jack Jansen be3e1f7a95 Python.app is now a hidden application, deep in the framework. It will
be invoked by PythonLauncher when needed.

Also changed the names of various variables in the Makefile to match
what the main Makefile has.
2002-08-01 21:14:06 +00:00
Jack Jansen 2fc993d16f Python.app no longer advertises that it can handle .py and .pyc files,
PythonLauncher.app has taken that responsibility over.
2002-08-01 21:12:36 +00:00
Jack Jansen 0a3d6060d5 Only show the UI for selecting options if the ALT key was depressed while
dragging or double-clicking the script.
2002-08-01 15:07:00 +00:00
Jack Jansen cce7e34aeb - Install into /Applications/Python in stead of into /Applications.
- Build PythonLauncher.app and PythonIDE.app as well as Python.app.
2002-07-31 14:46:04 +00:00
Jack Jansen 40e2e51a7e Install into /Applications/Python in stead of into /Applications. 2002-07-31 14:45:08 +00:00
Jack Jansen b7276cdf71 Implemented starting Python in a terminal window. The implementation isn't
optimal, especially if Terminal wasn't running yet, but it works.
2002-07-31 13:15:59 +00:00
Jack Jansen 3bbb617ca4 First stab at the launcher application. This will be run when the user
doubleclicks a .py, .pyw or .pyc file. It runs the file by invoking the
relevant interpreter (either the command line Python in a terminal window
or a Python.app for GUI-based scripts). Interpreter to use and the options
to pass are settable through preferences.

If PythonLauncher wasn't running it does its thing for one script and exits.
If it was manually started before a dialog is presented where the user
can set the options to use, etc.

To be done:
- option-drag/doubleclick should always open the interactive dialog
- Terminal-window isn't done yet
- Should be reimplemented in Python, but pyobjc isn't part of the core.
- Various menu entries should be disabled.
2002-07-29 21:36:35 +00:00
Jack Jansen c7554e28ee Added a __contains__ method. 2002-07-26 11:32:03 +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
Jack Jansen 66e794d743 Finally found out why te cf project sometimes worked and someimes didn't. Fixed it. 2002-07-22 12:32:31 +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
Just van Rossum 979c53757b fixed wrong classic MacOS pathname assumption 2002-07-12 16:50:32 +00:00
Just van Rossum 2ad9419c8f minor fixes, removed obsolete warning 2002-07-12 12:06:17 +00:00
Jack Jansen c361f94e1c Got rid of symlink target, and in stead have "make dontinstallmacsubtree"
which uses a .pth file to add the Mac/Lib from your source tree to sys.path.

Also put the Python version number in a variable.Killed by signal 2.
2002-07-08 13:34:23 +00:00
Jack Jansen 77d0717fb3 Define WITH_PYMALLOC as 1 2002-07-08 10:05:23 +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 1892cf0312 Started on support for using standard setup.py to build at least
the "standard" modules. Unfinished, but shouldn't harm anything.
2002-06-27 22:09:19 +00:00
Jack Jansen c70815ac0f Disabled non-carbon builds (for the moment still optional) and made
these scripts work with the new precompiled headers.
2002-06-26 22:06:08 +00:00
Jack Jansen e0c62b4db0 Make the prototype match the declaration in the GUSI header files. 2002-06-26 20:43:24 +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 440a36f3ab In plugin projects use (by default) the new mwerks_shcarbon_pch
header file in stead of mwerks_carbonplugin_config.h.
2002-06-26 20:36:12 +00:00
Jack Jansen bc5e145341 Close the project after generating it, so we don't keep a gazillion project
files open when we're rebuilding them all.
2002-06-26 20:35:18 +00:00
Jack Jansen 7504dfedb4 - Got rid of non-carbon builds
- Use precompiled headers
- Rationalize config file names.
2002-06-26 20:17:02 +00:00
Jack Jansen 09c7343273 Turns out GetArgv() options can be 4-tuples too, with the last value being the default (or something like that). Cater for this.
Also put in a safeguard against very long help strings.
2002-06-26 15:14:48 +00:00
Jack Jansen bdac001cf0 - Got rid of non-carbon stuff
- Use precompiled headers
- Rationalized naming scheme
2002-06-23 22:09:45 +00:00
Jack Jansen 0b06be7b0b Patch #557719 by Tony Lownds, slightly massaged by me: streamline the
OSX framework build process. Things fixed/modified:
- the filesystem case-sensitivity test now works for builds outside
  the source directory
- various other fixes for building outside the source directory
- python.app now has a target in the main Makefile
- WASTE and AquaTk are found more automatically
2002-06-21 14:48:38 +00:00
Jack Jansen fc7d379a96 - Got rid of newmodule.c
- These are the final projects that support classic.
2002-06-20 22:56:22 +00:00
Jack Jansen 5d0990494e Open the source file in universal newline mode. 2002-06-20 20:42:07 +00:00
Guido van Rossum bea18ccde6 SF patch 568629 by Oren Tirosh: types made callable.
These built-in functions are replaced by their (now callable) type:

    slice()
    buffer()

and these types can also be called (but have no built-in named
function named after them)

    classobj (type name used to be "class")
    code
    function
    instance
    instancemethod (type name used to be "instance method")

The module "new" has been replaced with a small backward compatibility
placeholder in Python.

A large portion of the patch simply removes the new module from
various platform-specific build recipes.  The following binary Mac
project files still have references to it:

    Mac/Build/PythonCore.mcp
    Mac/Build/PythonStandSmall.mcp
    Mac/Build/PythonStandalone.mcp

[I've tweaked the code layout and the doc strings here and there, and
added a comment to types.py about StringTypes vs. basestring.  --Guido]
2002-06-14 20:41:17 +00:00
Martin v. Löwis 606edc1d97 Patch #568235: Add posix.setpgid. 2002-06-13 21:09:11 +00:00
Jack Jansen 388fbf3d4a - Better commandline interface to BuildApplet, complete with options,
verbose output to the console, etc.
- Allow Cocoa applets to be built with BuildApplet.

No full testing has been done yet to ensure OS9 operation hasn't suffered.
2002-06-09 22:08:52 +00:00
Martin v. Löwis 2befa48926 Patch #505375: Make doc strings optional. 2002-06-09 13:41:37 +00:00
Just van Rossum 84fca948c8 fixed refcount leak in CreateNewWindow() and CreateWindowFromResource(). 2002-06-05 17:41:03 +00:00
Jack Jansen b66e1a3dd2 Allow the shared library initialization routine to be overridden with an initialize=xxx argument.
Should fix #492465.
2002-05-23 22:34:18 +00:00
Jack Jansen dc74568782 Added missing dirs to LIBSUBDIRS, and reformatted it so it's easier to read
and maintain. Fixes #557482.
2002-05-23 22:18:13 +00:00
Jack Jansen a43b2c4e30 Regenerated from new Universal Headers. 2002-05-22 15:08:58 +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 0e2f798301 Replaced lots of PyMem_DEL() calls with PyObject_DEL(). 2002-05-22 14:31:48 +00:00
Jack Jansen 422cdde69a Enable WITH_PYMALLOC. 2002-05-22 14:31:10 +00:00
Jack Jansen 94ce52e8e8 Added 2 more addresses to send release notifications to. 2002-05-22 14:30:37 +00:00
Jack Jansen eaba9d7b28 Added typechecking to the individual python->CF converters, so we can use them in the CF object initializers safely. 2002-05-13 21:23:10 +00:00
Jack Jansen 23be1ceb51 Added CFPreferences support. Added these as functions, not methods, which seemed counter-intuitive. 2002-05-13 21:21:49 +00:00
Jack Jansen 7906634f28 - Better exception when a NULL CF object is encountered.
- Manually generate a routine with funny error semantics.
2002-05-12 22:04:14 +00:00
Jack Jansen 6d207c09aa - Get data from CFData objects as Python strings and vv.
- Started on supporting CFPropertyLists.
2002-05-10 22:51:58 +00:00
Jack Jansen 42251323b4 Fixed string and dict conversion, and implemented booleans and numbers (int and float). I think we now have enough CFType support to start on plists and CFpreferences!
Transparent handling of unknown CFType objects still TBD.
2002-05-08 22:13:51 +00:00
Jack Jansen 1df628ddce Partial fix for string handling. Null byte TBD. 2002-05-08 15:29:33 +00:00
Jack Jansen 5ad6f7a3a9 More support for bridging between Python and CoreFoundation objects. Still untested. 2002-05-07 23:00:03 +00:00
Jack Jansen cb376460b7 Added pycfbridge.c 2002-05-07 22:59:06 +00:00
Jack Jansen 0627c3e371 Added enumobject.c 2002-05-07 21:42:08 +00:00
Jack Jansen ead4c80ac2 Fixed a mistake on my part when regenerating: removed a bogus import of Applscript_Suite.
Bugfix candidate (I'll move it over myself).
2002-05-07 20:16:20 +00:00
Jack Jansen efaffae8f6 First steps towards a generalized converter of Python object
hierarchies to CoreFoundation object hierarchies and vice versa.
2002-05-05 21:48:12 +00:00
Jack Jansen 65300f17c3 Regenerated.
Bugfix candidate.
2002-04-24 09:13:24 +00:00
Jack Jansen 033b79c483 Regenerated. 2002-04-23 22:46:01 +00:00
Jack Jansen 95df3fd159 Second part of fix for #493826: regenerated suite modules so errn exists but == 0 doesn't signal an error.
Bugfix candidate.
2002-04-23 21:08:54 +00:00
Jack Jansen 18983536dc First part of fix for #493826: if 'errn' key exists in return value this doesn't necesarily signal an error, only if the value is non-zero it does. This
does not correspond with my reading of the documentation, but the OSX Finder can return 'errn'=0, and it knows better than me:-)

Bugfix candidate.
2002-04-23 21:03:21 +00:00
Jack Jansen 656b735af9 Backport of 1.6.4.2.2.3 from release22-maint branch. 2002-04-23 19:59:03 +00:00
Jack Jansen d92b7a01c5 Updated URL. 2002-04-23 19:56:20 +00:00
Jack Jansen 601b2fddf2 Backport of select parts of release22-maint (up to 1.38.4.2.2.3). 2002-04-23 19:50:53 +00:00
Jack Jansen ca80002694 Added Christopher Smith. 2002-04-22 13:56:25 +00:00
Jack Jansen c6d2a20bc6 Removed note on test_time failing.
Bugfix candidate.
2002-04-22 11:46:16 +00:00
Jack Jansen 7aace7a2dc Regenerated to include Internet Config error strings.
Bugfix candidate.
2002-04-22 11:45:46 +00:00
Jack Jansen 117dbdf4b4 Added an optional file with MacErrors.h extensions: IC errors aren't in there.
Bugfix candidate.
2002-04-22 11:44:26 +00:00
Jack Jansen a258324a3d Enable universal newline support for MacPython. 2002-04-14 22:13:35 +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 68c7e26dc9 Get rid of backward compatibility modules. Do this fairly early in the 2.3 cycle so we don't shoot ourselves in the foot later. 2002-04-11 21:03:37 +00:00
Jack Jansen 85705e73b1 Got rid of obsolete defines. 2002-04-11 20:56:15 +00:00
Jack Jansen 786681ac60 Got rid of obsolete appearance flag. 2002-04-11 20:56:13 +00:00
Jack Jansen cc8258d827 Added boolobject.c 2002-04-11 20:54:58 +00:00
Jack Jansen 5159f1da7d Got rid of ifdefs for long-obsolete GUSI versions and other lurkers. 2002-04-11 20:53:03 +00:00
Jack Jansen 32baa2c8d2 These are long obsolete. Get rid of them. 2002-04-11 20:50:39 +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 e9c0358bf4 e macresource.need() to open the W resource file in the application init
code (if it isn't open already).

PythonIDE still opens the resource file "manually" because it also uses
presence of the CURS resource to determine whether it needs to adjust
sys.path.
2002-04-03 21:52:10 +00:00
Jack Jansen 8f3078b3f0 Got the example program to work in MachoPython. 2002-04-03 21:28:02 +00:00
Jack Jansen ff773eba36 Added a "run with commandline Python" flag. Works in MachoPython, should work
in OSX MacPython (untested), and should be disabled/removed in OS9 (but
that doesn't happen yet).
2002-03-31 22:01:33 +00:00
Jack Jansen e7f776af3d Suite to talk to the OSX Terminal application. 2002-03-30 23:46:16 +00:00
Jack Jansen ad5dcafac4 Got rid of obsolete way to get at various toolbox types. 2002-03-30 23:44:58 +00:00
Jack Jansen 77afbc0b3b Add Mac/Lib/lib-scriptpackages to sys.path too. 2002-03-30 23:43:36 +00:00
Jack Jansen 4092606d6b Modified to allow it to run in MachoPython in a reasonable way. It still
needs a decent commandline interface, though.
2002-03-30 23:43:04 +00:00
Jack Jansen 61ef790907 Auxiliary files used by BuildApplet for MachoPython. 2002-03-29 23:48:55 +00:00
Jack Jansen 8134976fee Auxiliary files for building the IDE applet. Running the IDE through
BuildApplet for MachoPython now seems to do the right thing, yeah!
2002-03-29 23:46:34 +00:00
Jack Jansen 9aa8fd0b7d Handle .icns and .plist files for applets.
Also, for now (until we learn to parse .plist files) we make a special case
for the IDE, setting the creator to "Pide".
2002-03-29 23:44:37 +00:00
Jack Jansen 96f9e0864a Missed one version number. 2002-03-29 23:43:21 +00:00
Jack Jansen bdcb1c4597 First stab at an icon for the IDE. 2002-03-29 22:28:32 +00:00
Just van Rossum ca3d307271 repair damage: canceling the "save options" dialog now works again. 2002-03-29 21:48:42 +00:00
Just van Rossum 8bb61c8d4c repair damage: now works again as a CFM app. 2002-03-29 21:47:56 +00:00
Jack Jansen 9a38947fba Completely revamped newline handling. PyEdit is now newline-preserving
(if a single newline convention is used in the sourcefile), and the
"save options" has a newline style radio button.

The creator radio button also has the new choices PythonW and None.

Just: just shout (and revert) if you don't agree.
2002-03-29 21:26:04 +00:00
Jack Jansen e0ba087d44 Allow file without filetype as long as they end in ".py".
Added a -D flag (can really only be specified on OSX commandline) to not
revector sys.stderr, for debugging the IDE itself. Not sure whether
this should stay.
2002-03-29 21:23:47 +00:00
Jack Jansen b2e33fe285 Implemented buildtools for MachoPython .app bundles. The API is compatible
enough that IDE and BuildApplet can create applets, yeah!
2002-03-29 21:21:28 +00:00
Jack Jansen 32f782c03c Don't attempt to create a dummy fsspec if the user cancelled out, just
return None.

For now, if the user asks for TEXT files files without type are also
accepted. But it is time to phase out StandardGetFile and friends, really.
2002-03-29 21:19:37 +00:00
Jack Jansen d21c9f48fa Re-raise the Res.Error if the file doesn't exist. 2002-03-29 21:17:57 +00:00
Jack Jansen 2cce33f3bd Added -Wno-long-double 2002-03-29 21:17:14 +00:00
Jack Jansen c5fa303e78 Changed visible name (in dock, menubar) of the interpreter to PythonW.
Changed version numbers and copyright.
2002-03-29 21:16:41 +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 5053b70da0 If the file has no resource fork first check to see whether it's a
datafork-based resource file before trying to decode it as AppleSingle.
2002-03-29 14:29:35 +00:00
Jack Jansen 695b33b02a Removed debug. 2002-03-29 14:28:09 +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 0cd0e656ef Added target "installunixprograms" which installs python and pythonw in
/usr/local/bin (referring to the framework-based interpreter and Python.app).

Added target symlinkmacsubtree to aid in debugging.
2002-03-29 14:18:18 +00:00
Jack Jansen ab10ce6c6b Shell script that invokes Python.app from the command line. Called pythonw
because of similarity to the same program on Windows.
2002-03-29 14:15:22 +00:00
Just van Rossum 4e6d13cebf Make object browser work in OSX (by rewriting the old browser
LDEF in Python). If at all possible, this should go into 2.2.1.
2002-03-26 12:06:11 +00:00
Jack Jansen a516a59caa Include obmalloc.c in the build. 2002-03-25 15:43:37 +00:00
Jack Jansen 714d7268d5 Weaklink most toolbox modules, improving backward compatibility. Modules will no longer fail to load if a single routine is missing on the curent OS version, in stead calling the missing routine will raise an exception.
Should finally fix 531398. 2.2.1 candidate.
2002-03-25 00:32:17 +00:00
Jack Jansen 9d79990ac7 Weaklink most toolbox modules, improving backward compatibility. Modules will no longer fail to load if a single routine is missing on the curent OS version, in stead calling the missing routine will raise an exception.
Should finally fix 531398. 2.2.1 candidate.

Also blacklisted some constants with definitions that were not Python-compatible.
2002-03-24 23:04:18 +00:00
Jack Jansen 5ee24ae98d Weaklink most toolbox modules, improving backward compatibility. Modules will no longer fail to load if a single routine is missing on the curent OS version, in stead calling the missing routine will raise an exception.
Should finally fix 531398. 2.2.1 candidate.
2002-03-24 22:59:16 +00:00
Jack Jansen 150ed6113c Generate with weaklink stubs, so missing routines (on MacOS 8.6 and earlier)
don't cause import failure.

Fixes 531398, 2.2.1 candidate.
2002-03-22 14:16:39 +00:00
Jack Jansen 9051e0e577 - Weaklink InterfaceLib in _Res module
- forgot to pass libraryflags and stdlibraryflags on to ppc/carbon
  project generation.

First half of fix to 531398.
2002-03-22 14:15:07 +00:00
Jack Jansen 562baabb61 Added an open_pathname() method which opens a resource file by pathname,
possibly converting from AppleSingle.
2002-03-21 22:38:32 +00:00