From dgreen@rewindtech.com Wed Mar 1 02:41:37 2000 From: dgreen@rewindtech.com (Dan Green) Date: Tue, 29 Feb 2000 21:41:37 -0500 Subject: [Pythonmac-SIG] using "W" with MiniAEFrame Message-ID: <20000229214137.A8446@brainy.rewindtech.com> Are there any caveats to using MiniAEFrame with the "W" module? I need to create an application with a face that can also respond to AppleScript events. Or am I just being stupid, and does the W module already include apple event support? -- Dan Green | pick yourself up off the side of the road with your Developer | elevator bones and your whip-flash tones / members only, Rewind Technologies | hypnotizers move through the room like ambulance drivers From cwebster@nevada.edu Wed Mar 1 03:16:50 2000 From: cwebster@nevada.edu (Corran Webster) Date: Tue, 29 Feb 2000 19:16:50 -0800 Subject: [Pythonmac-SIG] using "W" with MiniAEFrame In-Reply-To: <20000229214137.A8446@brainy.rewindtech.com> Message-ID: > Are there any caveats to using MiniAEFrame with the "W" module? I need to > create an application with a face that can also respond to AppleScript >events. > > Or am I just being stupid, and does the W module already include apple event > support? W is based on FrameWork, and so it handles Apple Events as part of the main event loop. Since the AEServer class in MiniAEFrame is just a user-friendly wrapper around AE.AEInstallEventHandler, and the latter works fine, you should be able to use AEServer without too much difficulty - just subclass your application from both WApplication.Application and MiniAEFrame.AEServer. If you're writing applications in W, you might want to check: http://www.nevada.edu/~cwebster/Python/WWidgets/index.html which has a tutorial with examples, and a (slightly incomplete, but reasonable) reference for thw W widgets. In particular, you should look at: http://www.nevada.edu/~cwebster/Python/WWidgets/templateapp.html which is a minimal application which does handle the four required AppleEvents (even if it is by ignoring everything except Open Document) using the more rudimentary AE.AEInstallEventHandler. Regards, Corran From dgreen@rewindtech.com Wed Mar 1 03:48:24 2000 From: dgreen@rewindtech.com (Dan Green) Date: Tue, 29 Feb 2000 22:48:24 -0500 Subject: [Pythonmac-SIG] AppleScript events in Python Message-ID: <20000229224824.A8670@brainy.rewindtech.com> a couple dozen of you have probably already done this, but I thought I'd post it just the same. It's a simple function that'll parse AppleScript apple events sent to your application and pass them off to yet another handler with politely formatted arguments. add this to your __init__ self.installaehandler('ascr', 'psbr', self.asEvent) add this somewhere in your class def asEvent(self, _object=None, **kwargs): if not self._ashandlers.has_key(kwargs['snam']): return method = self._ashandlers[kwargs['snam']] attr = {} usrf = kwargs['usrf'] # turn usrf into a dictionary for i in range(0, len(usrf), 2): attr[usrf[i]] = usrf[i + 1] apply(method, (), attr) Then all you need to do is define the events to handle and their handlers. Let's say you wanted the Retrospect backup software to notify you when the server stopped running: (in __init__) self._ashandlers = {} self._ashandlers['serverend'] = self.serverend def serverend(self, **args): self.do_things() Now if some smart mac person out there can figure out a way to send data back to the originator of the event, we'd essentially have a way to write little applescript helper apps in our beloved Python. -- Dan Green | pick yourself up off the side of the road with your Developer | elevator bones and your whip-flash tones / members only, Rewind Technologies | hypnotizers move through the room like ambulance drivers From chriss@dnastar.com Wed Mar 1 06:24:37 2000 From: chriss@dnastar.com (chriss@dnastar.com) Date: Wed, 1 Mar 2000 00:24:37 -0600 Subject: [Pythonmac-SIG] GUSI2/MT MacPython In-Reply-To: <200002281750.MAA17945@pop05.iname.net> References: <200002281750.MAA17945@pop05.iname.net> Message-ID: <20000301062437.1583@artemis.dnastar.com> On Mon, Feb 28, 2000, Chris Jacobson wrote: >Whats the status on getting it over to GUSI2? I'd like to get at the >source & projects that already has whatever work is done, to help. (why >rewrite the blueprints?) Standalone & Shlb vers both run test.regrtest w/o error but otherwise have recived little other testing. Everything is up at includeing all source and even a litte explanation. I will be in the office tomorrow (Wed - US Central TimeZone) but will then be gone untill after Fassnacht. Christopher Stern DNAStar,1228 South Park Madison, WI 53715-2102, USA ph: 608.258.7420 ext. 25 From jack@oratrix.nl Wed Mar 1 09:30:07 2000 From: jack@oratrix.nl (Jack Jansen) Date: Wed, 01 Mar 2000 10:30:07 +0100 Subject: [Pythonmac-SIG] AppleScript events in Python In-Reply-To: Message by Dan Green , Tue, 29 Feb 2000 22:48:24 -0500 , <20000229224824.A8670@brainy.rewindtech.com> Message-ID: <20000301093007.B1598371868@snelboot.oratrix.nl> > Now if some smart mac person out there can figure out a way to send data back > to the originator of the event, we'd essentially have a way to write little > applescript helper apps in our beloved Python. Check out AEServer.callback_wrapper(). Basically it takes the value returned from your handler and aepacks() it. This works "automagically" for simple types like strings, ints, fsspecs, etc. (i.e. you return the Python value and it all works). If you need to return a value in a way that the automatic packing of aepack won't understand you can create a class with an __aepack__ method and return an instance of that. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From ggtr@netcourrier.com Wed Mar 1 11:46:09 2000 From: ggtr@netcourrier.com (Guillaume Gautier) Date: Wed, 1 Mar 2000 12:46:09 +0100 Subject: [Pythonmac-SIG] python and Quicktime? Message-ID: <200003011147.MAA23136@front3.grolier.fr> Has anybody made an python interface to the Quicktime API? i can't see anything about that, but i think that would be wonderful if we could make multimedia stuff for the Quicktime platform by scripting it in Python. Infos or URLs are welcome! From erik@letterror.com Wed Mar 1 12:17:49 2000 From: erik@letterror.com (Erik van Blokland) Date: Wed, 1 Mar 2000 13:17:49 +0100 Subject: [Pythonmac-SIG] python and Quicktime? Message-ID: <200003011223.NAA10185@leidschenveen.denhaag.dataweb.net> -- Guillaume Gautier [3/1/00 12:46 PM]: >Has anybody made an python interface to the Quicktime API? there's some Quicktime stuff in Python:Mac:Demo:Quicktime, and in the python IDE you can browse the Qt module and see the stuff that's supported. It's pretty low level though. Erik -- letterror From jack@oratrix.nl Wed Mar 1 12:57:14 2000 From: jack@oratrix.nl (Jack Jansen) Date: Wed, 01 Mar 2000 13:57:14 +0100 Subject: [Pythonmac-SIG] python and Quicktime? In-Reply-To: Message by Erik van Blokland , Wed, 1 Mar 2000 13:17:49 +0100 , <200003011223.NAA10185@leidschenveen.denhaag.dataweb.net> Message-ID: <20000301125715.A1958371868@snelboot.oratrix.nl> > >Has anybody made an python interface to the Quicktime API? > > there's some Quicktime stuff in Python:Mac:Demo:Quicktime, and in the > python IDE you can browse the Qt module and see the stuff that's > supported. It's pretty low level though. It's basically the whole QuickTime API exported to C, with a little object-oriented sauce over it. The mapping is so close that reading Inside Mac: Quicktime should get you up and running. By the way: Erik: do I read in your "low-level" comment that you have ideas for a higher-level interface? -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From erik@letterror.com Wed Mar 1 13:31:00 2000 From: erik@letterror.com (Erik van Blokland) Date: Wed, 1 Mar 2000 14:31:00 +0100 Subject: [Pythonmac-SIG] python and Quicktime? Message-ID: <200003011336.OAA12142@leidschenveen.denhaag.dataweb.net> -- Jack Jansen [3/1/00 1:57 PM]: >It's basically the whole QuickTime API exported to C, with a little >object-oriented sauce over it. The mapping is so close that reading Inside >Mac: Quicktime should get you up and running. > >By the way: Erik: do I read in your "low-level" comment that you have ideas >for a higher-level interface? Heh, it wasn't a criticism, just an observation that you really need Inside Mac to get it running ;) We've done some experiments with quicktime but it always stayed close to 'getting it to work' and not much on top of that. I'll think about it a bit. Erik -- letterror From joanca@typerware.com Wed Mar 1 15:56:40 2000 From: joanca@typerware.com (JoanCarles p Casas=?ISO-8859-1?Q?=edn?=) Date: Wed, 1 Mar 2000 16:56:40 +0100 Subject: [Pythonmac-SIG] blocksize problem? (ftplib) Message-ID: <20000301155458.78DA71CE41@dinsdale.python.org> Hi you all, I'm trying to upload an html file to a remote server via FTP. It works pretty well (thanks to Erik, mainly :) but I've only a little problem. The file, once is in the server is cut. Some of the last lines are lost (including the closing tag ). Here's the script. import ftplib serveraddress = 'www.xxx.com' ftp = ftplib.FTP(serveraddress) ftp.login('xxx', 'xxx') # or ftp.login() if you're anonymous print ftp.getwelcome() ftp.cwd("//grrr") #the path to the local file you want to transfer path = outputf_path f = open(path, 'rb') #print f.read() gives you the whole document data, # so the problem should be below. # the name the document should have on the server docname = 'default.html' #Erik guessed maybe has to do with the block size #I've also tried 512, 2048 and 4096 and still missing #something, different each time. ftp.storbinary('STOR '+ docname, f, 1024) f.close() ftp.close() Thanks, JoanCarles :::!!!::: joanca@typerware.com http://www.typerware.com From seanh@unforgettable.com Wed Mar 1 22:23:34 2000 From: seanh@unforgettable.com (Sean Hummel ) Date: Wed, 1 Mar 2000 22:23:34 +0000 (GMT) Subject: [Pythonmac-SIG] blocksize problem? (ftplib) In-Reply-To: <20000301155458.78DA71CE41@dinsdale.python.org> Message-ID: On Wed, 1 Mar 2000, JoanCarles p Casas[ISO-8859-1] =EDn wrote: Well I'm not intimately familiar with the ftplib, but it looks as if you are trying to store the document as binary, when it is a text document. > #Erik guessed maybe has to do with the block size > #I've also tried 512, 2048 and 4096 and still missing > #something, different each time.=09=09=09=09=09=09 > =09=09ftp.storbinary('STOR '+ docname, f, 1024) >=20 > =09=09f.close() > =09=09ftp.close() >=20 Also, have you actually tried trapping the output with something like "OTSessionWatcher"? Just to make sure that ftplib is sending all the data? Could just be a timing issue as well, try not closing the file "f", and seeing if the transfer works. From baked@attglobal.net Wed Mar 1 19:24:36 2000 From: baked@attglobal.net (Paul Baker) Date: Wed, 01 Mar 2000 11:24:36 -0800 Subject: [Pythonmac-SIG] Off Topic - What's "Inside Mac" Message-ID: <4.3.2.20000301112250.00b166b0@pop5.attglobal.net> A few of you (Erik and Jack) made a reference to "Inside Mac". What is it? A Book a Module? If it's useful how do I get one (whatever it is). Thanks, Paul From joanca@typerware.com Thu Mar 2 11:45:27 2000 From: joanca@typerware.com (JoanCarles p Casas=?ISO-8859-1?Q?=edn?=) Date: Thu, 2 Mar 2000 12:45:27 +0100 Subject: [Pythonmac-SIG] blocksize problem? (ftplib) Message-ID: <20000302114341.53D611CC11@dinsdale.python.org> Sean Hummel wrote: > >On Wed, 1 Mar 2000, JoanCarles p Casas[ISO-8859-1] =CCn wrote: > >Well I'm not intimately familiar with the ftplib, but it looks as if you >are trying to store the document as binary, when it is a text document. > >> #Erik guessed maybe has to do with the block size >> #I've also tried 512, 2048 and 4096 and still missing >> #something, different each time. >> ftp.storbinary('STOR '+ docname, f, 1024) >> >> f.close() >> ftp.close() >> Yes, but part of the document is transfered. And I also tried: ftp.storlines('STOR ' + docname, f) and didn't worked either. >Also, have you actually tried trapping the output with something like >"OTSessionWatcher"? Just to make sure that ftplib is sending all the >data? ftplib sends data, but maybe not the whole thing. I'm (very) beginner, I think I can imagine what the "OTSessionWatcher=AE" should do but not sure to know how. >Could just be a timing issue as well, try not closing the file "f", >and seeing if the transfer works. Actually I've tried your idea (don't closing the file) and didn't work. :( Thanks, any other idea? JoanCarles :::!!!::: joanca@typerware.com http://www.typerware.com From erik@letterror.com Thu Mar 2 11:47:37 2000 From: erik@letterror.com (Erik van Blokland) Date: Thu, 2 Mar 2000 12:47:37 +0100 Subject: [Pythonmac-SIG] Off Topic - What's "Inside Mac" Message-ID: <200003021153.MAA09908@leidschenveen.denhaag.dataweb.net> -- Paul Baker [3/1/00 8:24 PM]: >A few of you (Erik and Jack) made a reference to "Inside Mac". > >What is it? A Book a Module? If it's useful how do I get one (whatever it >is). Inside Mac used to be only books (I even have a copy where it was *one* book :), but Apple's made the wise decision to put the whole shebang online, including a lot of other reference material well. For instance documentation on QuickDraw can be found at: http://developer.apple.com/techpubs/mac/QuickDraw/QuickDraw-2.html There's a lot of QuickTime docs as well, as any other aspect of the OS. Big site. Front door: http://developer.apple.com/technical/index.html Erik -- letterror From joanca@typerware.com Thu Mar 2 12:39:13 2000 From: joanca@typerware.com (JoanCarles p Casas=?ISO-8859-1?Q?=edn?=) Date: Thu, 2 Mar 2000 13:39:13 +0100 Subject: [Pythonmac-SIG] blocksize problem? (ftplib) Message-ID: <20000302123723.C50561CD1C@dinsdale.python.org> Dan Green wrote: >try >ftp.storbinary('STOR '+ docname, f, 1) I've tried. There was only four lines cut. But cut the document anyway. :~( >you certainly don't want to write a program that *does* that, Why? (newbie) I've noticed it looked to upload the file a lot slower than before, is this what you're talking about. Excuse me if this is a silly question. >but what might >be happening is ftplib is not sending whatever's left over in the file after >the last block. looks like ftplib is not sending everything, but if blocks are size 1, I suppose they can't be smaller... And ftplib.storlines('STOR '+docname, thedamnfile) cuts the thing too, and there's no blocksize argument (has it a default value then)? >I find it hard to believe nobody's noticed this before, but who knows? someone? Thanks as always, (lots of them :) JoanCarles :::!!!::: joanca@typerware.com http://www.typerware.com From jack@oratrix.nl Thu Mar 2 12:43:44 2000 From: jack@oratrix.nl (Jack Jansen) Date: Thu, 02 Mar 2000 13:43:44 +0100 Subject: [Pythonmac-SIG] Off Topic - What's "Inside Mac" In-Reply-To: Message by Erik van Blokland , Thu, 2 Mar 2000 12:47:37 +0100 , <200003021153.MAA09908@leidschenveen.denhaag.dataweb.net> Message-ID: <20000302124344.79594371868@snelboot.oratrix.nl> > Inside Mac used to be only books (I even have a copy where it was *one* > book :), [...] As an aside, there's an _excellent_ free book on Macintosh programming, "Macintosh C" by K.J. Bricknell. You can download it at http://www.mactech.com/macintosh-c/ . Since I discovered this book about half a year or so ago it has become my first stop of choice if I dive into a new aspect of Mac programming. Inside Mac is better if you know exactly what you want (easier to find specific routines) but this book is really good for reading up on some new technology like appearance. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From joanca@typerware.com Thu Mar 2 15:42:09 2000 From: joanca@typerware.com (JoanCarles p Casas=?ISO-8859-1?Q?=edn?=) Date: Thu, 2 Mar 2000 16:42:09 +0100 Subject: [Pythonmac-SIG] blocksize problem? (ftplib) [Resend] Message-ID: <20000302154015.281881CCF8@dinsdale.python.org> Jack Jansen wrote: >Are you sure the problem isn't with a funny file and/or a funny ftp server? I'm not sure "funny" is the word I feel ;) The file seems ok. If I upload it by hand (using Anarchie), It does well. >I've been using ftplib for uploading on the Mac with no problems (although I >didn't use storbinary() but transfercmd()/write()-loop) for quite some time. How can I do it using transfercmd()? FTP.transfercmd() >You could try putting some debug prints in ftplib.FTP.storbinary() just to >see >that your whole file is indeed read. You mean inside the ftplib source file (and throwing away the .pyc)? >Then possibly you could try ftping to a >different ftp-server to see that the problem isn't there. I've tried to another server and seems to work !!?? The same file, the same everything (excepting server). Also with the first server, worked fine with a small file. The one I'm sending (though html) is bigger. Again sorry if any question is too basic. I am too. (and sorry Jack, I sent you by mistake this message uncomplete) Thanks. JoanCarles :::!!!::: joanca@typerware.com http://www.typerware.com From jwblist@olympus.net Fri Mar 3 06:51:59 2000 From: jwblist@olympus.net (John W Baxter) Date: Thu, 2 Mar 2000 22:51:59 -0800 Subject: [Pythonmac-SIG] Off Topic - What's "Inside Mac" In-Reply-To: <200003021153.MAA09908@leidschenveen.denhaag.dataweb.net> References: <200003021153.MAA09908@leidschenveen.denhaag.dataweb.net> Message-ID: At 12:47 +0100 3/2/00, Erik van Blokland wrote: >Inside Mac used to be only books (I even have a copy where it was *one* >book :), but Apple's made the wise decision to put the whole shebang >online, including a lot of other reference material well. When Inside Mac changed from the series of numbered volumes to the [endless] series of named volumes, there were soon LOTS of volumes. (It's essentially the named series which became HTML.) At one point Apple's "d e v e l o p" magazine ran something like the following apocryphal exchange: Developer: How many Inside Macintosh volumes will there be? Developer Support Engineer: How long is your bookshelf? --John -- John Baxter jwblist@olympus.net Port Ludlow, WA, USA From jwblist@olympus.net Fri Mar 3 07:03:40 2000 From: jwblist@olympus.net (John W Baxter) Date: Thu, 2 Mar 2000 23:03:40 -0800 Subject: [Pythonmac-SIG] os.path.getsize() In-Reply-To: <20000229171722.6504A1CD9C@dinsdale.python.org> References: <20000229171722.6504A1CD9C@dinsdale.python.org> Message-ID: At 18:19 +0100 2/29/00, JoanCarles p Casas=EDn wrote: >Note that all these methods give you the number of bytes in the file, >*not* the amount of space it occupies on disk (the finder info command >gives both). Does anyone know how to obtain the diskspace numbers? One way is to ask the Finder for the "physical size" property of the file. In AppleScript, that's tell application "Finder" physical size of file "play" of desktop end tell result as integer Despite what the Finder's dictionary says, it now (in Mac OS 8.6 anyhow...9 isn't handy at this moment) returns a floating point value (the result of Mac OS understanding large files). Hence the as integer (which you can stick after the of desktop if desired). (How do I round an arbitrary float to a Python long integer...probably the right form to use.) --John (stating the obvious: platform-specific) -- John Baxter jwblist@olympus.net Port Ludlow, WA, USA From jwblist@olympus.net Fri Mar 3 07:07:49 2000 From: jwblist@olympus.net (John W Baxter) Date: Thu, 2 Mar 2000 23:07:49 -0800 Subject: [Pythonmac-SIG] using "W" with MiniAEFrame In-Reply-To: References: Message-ID: At 19:16 -0800 2/29/00, Corran Webster wrote: >which is a minimal application which does handle the four required >AppleEvents (even if it is by ignoring everything except Open Document) >using the more rudimentary AE.AEInstallEventHandler. If it ignores the quit event (by not causing the app to quit), apps built that way will (should, anyhow) preclude shutdown or restart in the Finder when they are running. --John -- John Baxter jwblist@olympus.net Port Ludlow, WA, USA From cwebster@nevada.edu Fri Mar 3 15:51:45 2000 From: cwebster@nevada.edu (Corran Webster) Date: Fri, 3 Mar 2000 07:51:45 -0800 Subject: [Pythonmac-SIG] using "W" with MiniAEFrame In-Reply-To: References: Message-ID: > At 19:16 -0800 2/29/00, Corran Webster wrote: > >which is a minimal application which does handle the four required > >AppleEvents (even if it is by ignoring everything except Open Document) > >using the more rudimentary AE.AEInstallEventHandler. > > If it ignores the quit event (by not causing the app to quit), apps built > that way will (should, anyhow) preclude shutdown or restart in the Finder > when they are running. You are, of course, correct. But never fear! I misread my own code when posting my previous post - it does, in fact, handle quit events properly, but ignores open application and printing events. My apologies for any confusion I may have caused anyone on the list. Regards, Corran From erik@letterror.com Sat Mar 4 20:51:23 2000 From: erik@letterror.com (Erik van Blokland) Date: Sat, 4 Mar 2000 21:51:23 +0100 Subject: [Pythonmac-SIG] os.path.getmtime bug? Message-ID: <200003042057.VAA05074@leidschenveen.denhaag.dataweb.net> I'm sorry if this has come up in some other group already, but could this be a bug in the macpath module: Simple example: getting the modification date of a file; import os path = "MoPar:Desktop Folder:Tijd.py" print os.path.getmtime(path) >> NameError: stat >File "", line 3, in ? >File "macpath.py", line 112, in getmtime > return st[stat.ST_MTIME] I looked in the macpath module, and it imports stuff from stat: >from stat import * However, there are still a couple of calls to the stat module directly: >def getsize(filename): > """Return the size of a file, reported by os.stat().""" > st = os.stat(filename) > return st[stat.ST_SIZE] > >def getmtime(filename): > """Return the last modification time of a file, reported by os.stat().""" > st = os.stat(filename) > return st[stat.ST_MTIME] > >def getatime(filename): > """Return the last access time of a file, reported by os.stat().""" > st = os.stat(filename) > return st[stat.ST_MTIME] As far as I can tell these can be fixed easily by taking out 'stat.', but maybe I'm missing something here? Erik -- letterror From erik@letterror.com Sat Mar 4 21:00:06 2000 From: erik@letterror.com (Erik van Blokland) Date: Sat, 4 Mar 2000 22:00:06 +0100 Subject: [Pythonmac-SIG] os.path.getmtime bug? Message-ID: <200003042105.WAA05249@leidschenveen.denhaag.dataweb.net> -- Erik van Blokland [3/4/00 9:51 PM]: from macpath and my previous post: >>def getmtime(filename): >> """Return the last modification time of a file, reported by os.stat().""" >> st = os.stat(filename) >> return st[stat.ST_MTIME] >>def getatime(filename): >> """Return the last access time of a file, reported by os.stat().""" >> st = os.stat(filename) >> return st[stat.ST_MTIME] looking at it more closely, both getatime() and getmtime() return st[stat.ST_MTIME], can't be right either. No? And when I fix the import problem macpath, the number returned by getmtime() still seems to be in a different epoch when compared to time.time(). As macpath is a mac specific module already we could do some math on it and get it to be the same epoch as time.time() is in? Erik -- letterror From erik@letterror.com Sun Mar 5 12:57:31 2000 From: erik@letterror.com (Erik van Blokland) Date: Sun, 5 Mar 2000 13:57:31 +0100 Subject: [Pythonmac-SIG] os.path.getmtime bug? Message-ID: <200003051303.OAA21936@leidschenveen.denhaag.dataweb.net> -- Erik van Blokland [3/4/00 10:00 PM]: >looking at it more closely, both getatime() and getmtime() return >st[stat.ST_MTIME], can't be right either. No? Thanks to Just for pointing out the archives of this mailinglist and that this very problem was discussed no too long ago. I stand informed. Erik -- letterror From cbarker@jps.net Tue Mar 7 22:53:21 2000 From: cbarker@jps.net (Chris Barker) Date: Tue, 07 Mar 2000 14:53:21 -0800 Subject: [Pythonmac-SIG] Re-opening files? References: <20000228170030.3C7741CD5C@dinsdale.python.org> Message-ID: <38C58861.7C67928A@jps.net> Hi Folks, I am having a problem (more of an annoyance actually) when I try to re-open a file that I am writing to. I get an erro when I do this: file = open('filename','wt') file.write('some stuff\n') file = open('filename','wt') I get an " IOError: [Errno 22] INvalid agrument 'filename' " why would I want to do something as stupid as this? you might ask. Well, strickly speaking, I don't. The problem is that if I am running a script in the IDE, and it crashes after opening a file for writing, but before closing it, then when I go to run the script again, I get this erro. This requires me to go back, selct the file.close() line, run it, and then run the script again. Again, mostly an annoyance, but I seem to run into it A LOT. By the way, the above code works just fine on Linux. Python appears to just re-wind the file (probably just the output buffer), without erasing it. Curious behavior, but it works for me! While I'm at it, other IDE questions: Is there a way to get the output window in the IDE to be interactive? I often would like to use the command line after my script terminates to check something out, but there is no way to do this. Also, is there an easy way to change the working directory in the IDE interactive window? import os, os.chdir('the whole path') is kind of a pain. -Chris -- Christopher Barker, Ph.D. cbarker@jps.net --- --- --- http://www.jps.net/cbarker -----@@ -----@@ -----@@ ------@@@ ------@@@ ------@@@ Water Resources Engineering ------ @ ------ @ ------ @ Coastal and Fluvial Hydrodynamics ------- --------- -------- ------------------------------------------------------------------------ ------------------------------------------------------------------------ From cbarker@jps.net Tue Mar 7 22:54:28 2000 From: cbarker@jps.net (Chris Barker) Date: Tue, 07 Mar 2000 14:54:28 -0800 Subject: [Pythonmac-SIG] Version 1.5.2 plans? References: <20000228170030.3C7741CD5C@dinsdale.python.org> Message-ID: <38C588A4.F1E8CBFC@jps.net> Hi all, Any plans for Version 1.5.2 on the Mac? -Chris -- Christopher Barker, Ph.D. cbarker@jps.net --- --- --- http://www.jps.net/cbarker -----@@ -----@@ -----@@ ------@@@ ------@@@ ------@@@ Water Resources Engineering ------ @ ------ @ ------ @ Coastal and Fluvial Hydrodynamics ------- --------- -------- ------------------------------------------------------------------------ ------------------------------------------------------------------------ From just@letterror.com Tue Mar 7 22:51:58 2000 From: just@letterror.com (Just van Rossum) Date: Tue, 7 Mar 2000 23:51:58 +0100 Subject: [Pythonmac-SIG] Version 1.5.2 plans? In-Reply-To: <38C588A4.F1E8CBFC@jps.net> References: <20000228170030.3C7741CD5C@dinsdale.python.org> Message-ID: At 2:54 PM -0800 07-03-2000, Chris Barker wrote: >Any plans for Version 1.5.2 on the Mac? How about http://www.python.org/download/download_mac.html ;-) Just From just@letterror.com Tue Mar 7 22:58:48 2000 From: just@letterror.com (Just van Rossum) Date: Tue, 7 Mar 2000 23:58:48 +0100 Subject: [Pythonmac-SIG] Re-opening files? In-Reply-To: <38C58861.7C67928A@jps.net> References: <20000228170030.3C7741CD5C@dinsdale.python.org> Message-ID: At 2:53 PM -0800 07-03-2000, Chris Barker wrote: >I am having a problem (more of an annoyance actually) when I try to >re-open a file that I am writing to. I get an erro when I do this: > >file = open('filename','wt') Erm, what deos the 't' mean in the mode? >file.write('some stuff\n') > >file = open('filename','wt') > >I get an " IOError: [Errno 22] INvalid agrument 'filename' " > > > >why would I want to do something as stupid as this? you might ask. > >Well, strickly speaking, I don't. The problem is that if I am running a >script in the IDE, and it crashes after opening a file for writing, but >before closing it, then when I go to run the script again, I get this >erro. This requires me to go back, selct the file.close() line, run it, >and then run the script again. Again, mostly an annoyance, but I seem to >run into it A LOT. > >By the way, the above code works just fine on Linux. Python appears to >just re-wind the file (probably just the output buffer), without erasing >it. Curious behavior, but it works for me! Hm, I don't know what the "official" behavior should be, but it doesn't seem unreasonable to me that you get an exception when opening a file for writing twice. I run into the same thing myself quite often, but I find it only a minor annoyance, and usually blame it on myself ;-) In case I get really annoyed, I do this: f = open(filename, "w") try: ...stuff that might crash... finally: f.close() >While I'm at it, other IDE questions: > >Is there a way to get the output window in the IDE to be interactive? I >often would like to use the command line after my script terminates to >check something out, but there is no way to do this. ??? I don't follow. But: have a look at the little popupmenu at the top right corner of the interactive window, it has an entry called "Namespace" which offers a list of open source files. After slecting your script/module, the interactive window is executing commands in *that* namespace. >Also, is there an easy way to change the working directory in the IDE >interactive window? import os, os.chdir('the whole path') is kind of a >pain. There are two scripts in in the Scripts menu called "Insert file name" and "Insert folder name". Seems fairly convenient... Just From cbarker@jps.net Wed Mar 8 00:08:39 2000 From: cbarker@jps.net (Chris Barker) Date: Tue, 07 Mar 2000 16:08:39 -0800 Subject: [Pythonmac-SIG] Re-opening files? References: <20000228170030.3C7741CD5C@dinsdale.python.org> Message-ID: <38C59A07.EEAD8CF9@jps.net> Just van Rossum wrote: > At 2:53 PM -0800 07-03-2000, Chris Barker wrote: > >I am having a problem (more of an annoyance actually) when I try to > >re-open a file that I am writing to. I get an erro when I do this: > > > >file = open('filename','wt') > > Erm, what deos the 't' mean in the mode? It means "text", except that Python defaults to text, and thus it means nothing. It must be leftover from my other favorite high level language, MATLAB. I never got an error, and old habits die hard. > > > >By the way, the above code works just fine on Linux. Python appears to > >just re-wind the file (probably just the output buffer), without erasing > >it. Curious behavior, but it works for me! > > Hm, I don't know what the "official" behavior should be, but it doesn't > seem unreasonable to me that you get an exception when opening a file for > writing twice. I agree that it seems reasonable, it's just pretty annoying. I use Python a lot for short scripts, many of which are text file translators. As a result, I run into this a lot. I suppose a feature that I would like, and would solve this problem as well as a few others, is to have a "Run Clean" option. This option would run the script in a cleaned-out namespace, as though it were running as __main__ from scratch, just like it will be when I run it outside of the IDE. In fact, this is a Python, rather than a Mac Python question, but is there a way to do something like a "del all", to get back to an empty (built-ins only) namespace? > I run into the same thing myself quite often, but I find it only a minor > annoyance, and usually blame it on myself ;-) In case I get really annoyed, > I do this: > > f = open(filename, "w") > try: > ...stuff that might crash... > finally: > f.close() Nice trick. I'll probably start doing that myself. > >While I'm at it, other IDE questions: > > > >Is there a way to get the output window in the IDE to be interactive? I > >often would like to use the command line after my script terminates to > >check something out, but there is no way to do this. > > ??? I don't follow. But: have a look at the little popupmenu at the top > right corner of the interactive window, it has an entry called "Namespace" > which offers a list of open source files. After slecting your > script/module, the interactive window is executing commands in *that* > namespace. Well look at that!! I never noticed that little popup menu! Very handy! Yes, that solves my problem. > >Also, is there an easy way to change the working directory in the IDE > >interactive window? import os, os.chdir('the whole path') is kind of a > >pain. > > There are two scripts in in the Scripts menu called "Insert file name" and > "Insert folder name". Seems fairly convenient... It turns out that my script directory got changed, so it took me a while to find them, but now I have, and they are handy. I still think a "change the working directory" item would be a handy thing to put in the popup menu. Even better, have it automatically change to the working directory of the script that you're working on. Thanks for the tips, I'm starting to get comfortable working in the IDE finally. -Chris -- Christopher Barker, Ph.D. cbarker@jps.net --- --- --- http://www.jps.net/cbarker -----@@ -----@@ -----@@ ------@@@ ------@@@ ------@@@ Water Resources Engineering ------ @ ------ @ ------ @ Coastal and Fluvial Hydrodynamics ------- --------- -------- ------------------------------------------------------------------------ ------------------------------------------------------------------------ From chris_rudolph@apple.com Wed Mar 8 22:06:47 2000 From: chris_rudolph@apple.com (Chris Rudolph) Date: Wed, 08 Mar 2000 14:06:47 -0800 Subject: [Pythonmac-SIG] How to run under the debugger Message-ID: Hello all, I am very new to phython and I want to step through my .py script in the debugger (preferably the visual debugger). I have no idea how to get it to begin execution on my script. I have seen nothing about it in the archive and the documentation seems to be nonexistant. thanks in advance, chris crudolph@pacifier.com From joanca@typerware.com Wed Mar 8 22:01:07 2000 From: joanca@typerware.com (JoanCarles p Casas=?ISO-8859-1?Q?=edn?=) Date: Thu, 9 Mar 2000 00:01:07 +0200 Subject: [Pythonmac-SIG] How to run under the debugger Message-ID: <20000308225731.A1F6A1CD4B@dinsdale.python.org> Chris Rudolph wrote: >I am very new to phython and I want to step through my .py script in the >debugger (preferably the visual debugger). I have no idea how to get it to >begin execution on my script. I have seen nothing about it in the archive >and the documentation seems to be nonexistant. Just for your first step: Open your script (I assume you're using the IDE). Go to the window pop up in the top right. Enable debugger. Run script In the new window you can put marks in the left column to execute parts of it. Push the run button and see what happens with stack, and variables... I suppose you'll figure out more. Note my info is not very good, someone will give you better information, but in the meantime you can start playing... Not much, but better than nothing ;) JoanCarles :::!!!::: joanca@typerware.com http://www.typerware.com From peter.sommerfeld@gmx.de Thu Mar 9 01:34:03 2000 From: peter.sommerfeld@gmx.de (Peter Sommerfeld) Date: Thu, 09 Mar 2000 02:34:03 +0100 Subject: [Pythonmac-SIG] How to run under the debugger Message-ID: Chris Rudolf wrote: > I am very new to phython and I want to step through my .py script in the > debugger (preferably the visual debugger). I have no idea how to get it to > begin execution on my script. I have seen nothing about it in the archive > and the documentation seems to be nonexistant. There is a PupUp Menu just above the scrollbar. Select activate Debugger, hit cmd-r and you'll get everything you want :-) Peter From crudolph@pacifier.com Fri Mar 10 01:57:09 2000 From: crudolph@pacifier.com (Chris_Rudolph) Date: Thu, 09 Mar 2000 17:57:09 -0800 Subject: [Pythonmac-SIG] MacBinary library/module for python Message-ID: Hello all, Does anyone know of a macbinary library/module for python, or is there already one distributed in that I'm not seeing. thanks in advance, Chris. -- Chris Rudolph crudolph@pacifier.com From ack@simplyweb.net Fri Mar 10 21:28:10 2000 From: ack@simplyweb.net (Michael Ackerman) Date: Fri, 10 Mar 2000 13:28:10 -0800 Subject: [Pythonmac-SIG] accessing Tkinter Message-ID: <38C968E9.62A3EDC6@simplyweb.net> Hi As someone interested in beginning study of Python, I've just installed the latest version on my iMac. I cannot access Tkinter. I keep getting a message that there is no such module. I installed Tcl/Tk but that didn't help. I have only a rudimentary knowledge of programming. In particular, I have no idea how to "configure path-names". But I would like to learn Python and Tkinter. I would appreciate some instructions! Thanks, Michael From savageb@pacbell.net Fri Mar 10 23:31:45 2000 From: savageb@pacbell.net (Bob Savage) Date: Fri, 10 Mar 2000 15:31:45 -0800 Subject: [Pythonmac-SIG] MacOS X probably no shipping Python Message-ID: Went to a demo of MacOS X today. Showing it off was Chris Bourdon "MacOS X Product Manager". I asked if a newer version of Python than 1.4 would be shipping with MOSX (a long shot, I know, but 1.4 *did* ship with MacOS X Server), and he said, probably not. Likely the gcc compiler and stuff won't be there either. Now it was not 100% clear if this meant won't be there *on the CD*, available for optional install or not. He said developer stuff would need to be installed seperately, but also stressed that there is a "complete BSD 4 dot 4" in there as well -- which made it sound like the default install (and he showed the command prompt and specifically mentioned bash, although he was running tcshell). I don't quite know how one distinguishes which components of a standard install are part of the "complete BSD" (I installed freeBSD -- or was it netBSD, I forget -- on my IIci once and it included both gcc and python). Someone asked him about shipping with a compiler, saying that that was a pretty standard component of a unix-like OS, and Chris emphasised that the majority of people aren't gonna want anything to do with unix. Hmm. He's probably right -- if my interests were like the majority I would probably be using perl on a wintel box. ;^p I probably seem like I'm making too much of some very brief remarks, but can you imagine how cool it would be to have python come pre-installed in every Mac? well, enjoy the weekend everybody! Bob From just@letterror.com Sat Mar 11 00:04:31 2000 From: just@letterror.com (Just van Rossum) Date: Sat, 11 Mar 2000 01:04:31 +0100 Subject: [Pythonmac-SIG] MacOS X probably no shipping Python In-Reply-To: Message-ID: Thanks for your report! At 3:31 PM -0800 10-03-2000, Bob Savage wrote: >I probably seem like I'm making too much of some very brief remarks, but can >you imagine how cool it would be to have python come pre-installed in every >Mac? That's right! ;-) Just today I was pointed towards an interesting review of MacOSX DP3: http://www.arstechnica.com/reviews/1q00/macos-x-dp3/macos-x-dp3-1.html (No Python relevance, still an interesting -- though long -- read) Just From seanh@unforgettable.com Sun Mar 12 05:36:39 2000 From: seanh@unforgettable.com (Sean Hummel ) Date: Sun, 12 Mar 2000 05:36:39 +0000 (GMT) Subject: [Pythonmac-SIG] Problems using TKinter and with Python 1.5.2c In-Reply-To: Message-ID: I keep getting the following message from Python, when I attempt to use any of the demo TK scripts: Traceback (innermost last): File "harddrive:Python 1.5.2c1:Demo:tkinter:matt:animation-w-velocity-ctrl.py", line 1, in ? from Tkinter import * File "harddrive:Python 1.5.2c1:Lib:lib-tk:Tkinter.py", line 8, in ? import _tkinter # If this fails your Python may not be configured for Tk ImportError: No module named _tkinter I've done the install cleanly a few times, and have tried custom installs of the TK and TCL modules only. But I still keep getting this message. FYI, I'm using MacOS 9, on my PowerBook G3. ------------------------------------------------ Children are natural mimics who act like their parents despite every effort to teach them good manners. ================================================ ____________seanh@unforgettable.com_____________ ------------------------------------------------ From craig@osa.att.ne.jp Sun Mar 12 10:01:29 2000 From: craig@osa.att.ne.jp (Craig Hagerman) Date: Sun, 12 Mar 2000 19:01:29 +0900 Subject: [Pythonmac-SIG] Problems using TKinter and with Python 1.5.2c Message-ID: >I keep getting the following message from Python, when I attempt to use >any of the demo TK scripts: > >Traceback (innermost last): > File "harddrive:Python >1.5.2c1:Demo:tkinter:matt:animation-w-velocity-ctrl.py", line 1, in ? > from Tkinter import * > File "harddrive:Python 1.5.2c1:Lib:lib-tk:Tkinter.py", line 8, in ? > import _tkinter # If this fails your Python may not be configured for >Tk >ImportError: No module named _tkinter > Hi, I had the same problem at first. I think that there is a small problem with Python's paths not recognising where Tkinter is by default. Open up the lib folder and drag the tkinter module from the lib-tk (was that where it was?) to the general lib folder. A few other modules required such moves to get them to work as well. Craig Hagerman From joerg@kantel.de Sun Mar 12 14:30:58 2000 From: joerg@kantel.de (=?iso-8859-1?Q?J=F6rg?= Kantel) Date: Sun, 12 Mar 2000 15:30:58 +0100 Subject: [Pythonmac-SIG] Problems using TKinter and with Python 1.5.2c In-Reply-To: References: Message-ID: >I keep getting the following message from Python, when I attempt to use >any of the demo TK scripts: > >Traceback (innermost last): > File "harddrive:Python >1.5.2c1:Demo:tkinter:matt:animation-w-velocity-ctrl.py", line 1, in ? > from Tkinter import * > File "harddrive:Python 1.5.2c1:Lib:lib-tk:Tkinter.py", line 8, in ? > import _tkinter # If this fails your Python may not be configured for >Tk >ImportError: No module named _tkinter There is a bug in the Installer of MacPython1.5.2c1: It puts the Shared Libs "_tkinter.CFM68K.slb" as well as "_tkinter.ppc.slb" in the folder "TK" which is in the Folder "Imaging" in the Folder "Extensions". You have to put one of them (or both ;o) in the Folder "PlugIns" which is in the Folder "Mac". And also the fresh Standard-Installation has no Path to "$(PYTHON):Lib:lib-tk", you have to add that manually with the Programm "EditPythonPrefs". Unfortunately there is also a bug within the Interpreter. Calling "Tkinter" from the Interpreter interactive freezes them. You can only run Tk-based Python scripts by typing them in your editor and running them by dropping over the Interpreter. To Jack (or others ;o): I posted this bugs several times in the mailing list. Will it be fixed? (I need interactive access to Tkinter urgently - so I run 1.4 mostly :o( ). HTH (and excuse my bad (d)english... ;o) J"org -- ---------------------------------------------------------------------- ---------------- J"org Kantel Max Planck Institute for the History of Science Computer Department http://www.mpiwg-berlin.mpg.de/staff/kantel/kantel.html Wilhelmstr.44 email: kantel@mpiwg-berlin.mpg.de email private: joerg@kantel.de D-10117 Berlin phone: +4930-22667-220 fax: +4930-22667-299 ---------------------------------------------------------------------- ---------------- From kelvin.chu@uvm.edu Sun Mar 12 15:01:08 2000 From: kelvin.chu@uvm.edu (Kelvin Chu) Date: Sun, 12 Mar 2000 10:01:08 -0500 Subject: [Pythonmac-SIG] NLSQ w/ Python on Mac. Message-ID: <20000312100108.A9114@chipotle.physics.uvm.edu> Hello, fellow Python Mac'ers. I'm writing to see if anyone has compiled some of the analytical routines, such as multipack.py to the Mac platform. Multipack.py meshes nicely with the Numerical package and lets one do non-linear least square fits, etc. So I guess my questions are: 1. Has anyone ported multipack? 2. Are there any ported nonlinear lsq fitting routines via python that currently exist on the Mac? Thanks for any light you can shed on the problem. -k -- kelvin.chu@uvm.edu (802) 656-0064 http://www.uvm.edu/~kchu/ FAX: (802) 656-0817 From dameronm@rolfingsi.com Sun Mar 12 18:37:49 2000 From: dameronm@rolfingsi.com (Dameron Midgette) Date: Sun, 12 Mar 2000 13:37:49 -0500 Subject: [Pythonmac-SIG] library locations? Message-ID: <200003122103.QAA22812@scow.netquarters.net> Hello all! A very newbie question or two. I'm clear that a module needs to be in macPython's path(s) to be useable, but how about shared libraries? (extension icon) Do they need to all be in the Mac:Plug-ins folder to work? And what if there are different file dates for different copies of the same library? Mac:Plug-ins:_tkinter vs. Extensions:Imaging:PIL:_tkinter (newer) and Extensions:Imaging:PIL:_imaging (newer) vs. Extensions:Imaging:_imaging And..what does the OSAm library (Mac:Contrib:OSAm) add to OSA scripting? Many thanks, Dameron From seanh@unforgettable.com Sun Mar 12 20:49:17 2000 From: seanh@unforgettable.com (Sean Hummel ) Date: Sun, 12 Mar 2000 20:49:17 +0000 (GMT) Subject: [Pythonmac-SIG] library locations? In-Reply-To: <200003122103.QAA22812@scow.netquarters.net> Message-ID: OSAm allows your Python scripts to compile and run Applescripts from a string, or a compiled applescript. ------------------------------------------------ Children are natural mimics who act like their parents despite every effort to teach them good manners. ================================================ ____________seanh@unforgettable.com_____________ ------------------------------------------------ On Sun, 12 Mar 2000, Dameron Midgette wrote: > Hello all! > A very newbie question or two. I'm clear that a module needs to be in > macPython's path(s) to be useable, but how about shared libraries? (extension > icon) Do they need to all be in the Mac:Plug-ins folder to work? And what if > there are different file dates for different copies of the same library? > > Mac:Plug-ins:_tkinter > vs. > Extensions:Imaging:PIL:_tkinter (newer) > > and > > Extensions:Imaging:PIL:_imaging (newer) > vs. > Extensions:Imaging:_imaging > > And..what does the OSAm library (Mac:Contrib:OSAm) add to OSA scripting? > > Many thanks, > > Dameron > > > > _______________________________________________ > Pythonmac-SIG maillist - Pythonmac-SIG@python.org > http://www.python.org/mailman/listinfo/pythonmac-sig > From managan@llnl.gov Mon Mar 13 05:09:39 2000 From: managan@llnl.gov (Rob Managan) Date: Sun, 12 Mar 2000 21:09:39 -0800 Subject: [Pythonmac-SIG] NLSQ w/ Python on Mac. Message-ID: At 10:01 AM 3/12/0, Kelvin Chu wrote: >Hello, fellow Python Mac'ers. > >I'm writing to see if anyone has compiled some of the analytical routines, >such as multipack.py to the Mac platform. Multipack.py meshes nicely with >the Numerical package and lets one do non-linear least square fits, etc. >So I guess my questions are: > >1. Has anyone ported multipack? >2. Are there any ported nonlinear lsq fitting routines via python that > currently exist on the Mac? > >Thanks for any light you can shed on the problem. > I think the sticking point with multipack is compiling the Fortran. I suppose we could do it with F2C but I have not tried that. I have the multipack source but have not compiled it as far as I remember. The cephes package ports easily however. If I find time I will try to see how hard it would be to port multipack. --$--$--$--$--$--$--$--$--$--$--$--$ Rob Managan managan@llnl.gov 2115 Westbrook Lane Livermore, CA 94550 Phone 925-449-3259 FAX 925-449-3259 From craig@osa.att.ne.jp Mon Mar 13 12:09:37 2000 From: craig@osa.att.ne.jp (Craig Hagerman) Date: Mon, 13 Mar 2000 21:09:37 +0900 Subject: [Pythonmac-SIG] Mac ctb module; connection tool names? Message-ID: Hi, I am hoping that someone can help shed some light on the Macintosh 'ctb' module. I want to use the connection methods provided by this module (things like Open(timeout) to open a connection, Close(timeout, now) to close a connection and Status() to see if the connection is still up). My understanding is that I first have to create a connection object using CMNew(name, size). I tried the following but it gives and error; import ctb ctb.CMNew('AppleModemTool',NONE) What are some proper values to give here for the "name" required. I thought that it was supposed to be a connection tool so should be one of; Apple Modem Tool Serial Tool Appletalk ADSP Tool I really hope that someone out there can help point me in the right direction as I am really not getting this and can't find any information further information on line. Thanks, Craig Hagerman From jeffrey@Digicool.com Mon Mar 13 13:54:55 2000 From: jeffrey@Digicool.com (Jeffrey P Shell) Date: Mon, 13 Mar 2000 08:54:55 -0500 Subject: [Pythonmac-SIG] python on MacOS X Message-ID: Interestingly, if you're using HFS+ ("MacOS Extended") for your default file system under MacOS X, building Python (unix) doesn't really work due to the fact that HFS+ seems to be case insensitive. When I tried building Python, it would get all the way through to the end of the build when it gets to the "mv python .." (to move it to the root build directory). Well, there happens to already be an object (a directory) there named "Python" (capital P). When I tried to move the "python" (lowercase P) manually, I got the "something with that name already exists" message. Scott Anguish of Stepwise made an installable Python 1.5.2 package for MacOS X Server and he's been welcomed into the core Darwin community. He mentioned Python briefly in his message about this inclusion, but I haven't seen or heard anything. I've been meaning to email him with my findings about getting a Zope friendly Python built (shared libs, threads; his package has neither) for both platforms. http://softrak.stepwise.com/Apps/WebObjects/Softrak.woa/1/wa/displayPackage? package=527&os=10 That's the little that I know. The Python 1.4 that came with MacOS X Server was actually part of Objective Everything, a third party environment that glued Python, Perl, and TCL to the Objective C/Cocoa runtime. It has not seen active development for some time, I'm afraid. -- Jeffrey P Shell, jeffrey@Digicool.com http://www.zope.org/ From Scott.Harris@wpafb.af.mil Mon Mar 13 18:34:29 2000 From: Scott.Harris@wpafb.af.mil (Harris Scott R CIV AFRL/SNJM) Date: Mon, 13 Mar 2000 13:34:29 -0500 Subject: [Pythonmac-SIG] Building Python Message-ID: <9F17D7A52AA1D311988500104B2444E0EC0B61@FSZHTV44> I'm trying to build Python with CW5 (with the 5.3 updates) and I get one error when I build PythonCorePPC.prj: "Cannot convert 'short *' to 'unsigned short *'" This error is from Ctlmodule.c on line 724. I'm sure I could hack my way around this, but I'm hoping somebody can shed some light onto why I'm getting this error. This is my fist attempt at building Python, so any help would be appreciated. Thanks, -Scott Harris From FoulCraven@aol.com Tue Mar 14 10:00:52 2000 From: FoulCraven@aol.com (FoulCraven@aol.com) Date: Tue, 14 Mar 2000 05:00:52 EST Subject: [Pythonmac-SIG] Re: pyexpat precompiled XML extensions Message-ID: <57.2ffcf67.25ff67d4@aol.com> I downloaded the precompiled binary XML extension pyexpat from Jack's ftp site and when I try to import it, I get the error: >>> import pyexpat Traceback (innermost last): File "", line 1, in ? ImportError: PythonCore: An import library was too new for a client. I saw a posting to the XML sig, but no reply. Has anyone gotten it to work with the Mac version? Jack? Thanks, david From jack@oratrix.nl Tue Mar 14 11:40:31 2000 From: jack@oratrix.nl (Jack Jansen) Date: Tue, 14 Mar 2000 12:40:31 +0100 Subject: [Pythonmac-SIG] Building Python In-Reply-To: Message by Harris Scott R CIV AFRL/SNJM , Mon, 13 Mar 2000 13:34:29 -0500 , <9F17D7A52AA1D311988500104B2444E0EC0B61@FSZHTV44> Message-ID: <20000314114031.8150F370CF2@snelboot.oratrix.nl> > I'm trying to build Python with CW5 (with the 5.3 updates) and I get one > error when I build PythonCorePPC.prj: > "Cannot convert 'short *' to 'unsigned short *'" This error is from > Ctlmodule.c on line 724. The quick fix is to change the type of the variable. I don't remember exactly but I think this problem has to do with a slightly newer Universal Headers than the one used to generate Ctlmodule.c. You could also check out Python sources from the CVS archive (see Mac:Demo:building.html for pointers) where this is probably long fixed. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From Scott.Harris@wpafb.af.mil Tue Mar 14 14:08:37 2000 From: Scott.Harris@wpafb.af.mil (Harris Scott R CIV AFRL/SNJM) Date: Tue, 14 Mar 2000 09:08:37 -0500 Subject: [Pythonmac-SIG] Building Python Message-ID: <9F17D7A52AA1D311988500104B2444E0EC0B65@FSZHTV44> Yes, I fixed it by changing the type and also by getting the source from the CVS archive. I spent some time last night making more progress and now I'm having trouble finding "dynload.c." It's in the Pythoncore project, but I can't find it. I've got the MacPython source from the stuffit distribution and from CVS. I'm also wondering if I can build Python with Tcl/Tk 8.3, or should I stick with 8.0? Thanks for your help, -Scott > -----Original Message----- > From: Jack Jansen [mailto:jack@oratrix.nl] > Sent: Tuesday, March 14, 2000 6:41 AM > To: Harris Scott R CIV AFRL/SNJM > Cc: pythonmac-sig@python.org > Subject: Re: [Pythonmac-SIG] Building Python > > > > I'm trying to build Python with CW5 (with the 5.3 updates) > and I get one > > error when I build PythonCorePPC.prj: > > "Cannot convert 'short *' to 'unsigned short *'" This error is from > > Ctlmodule.c on line 724. > > The quick fix is to change the type of the variable. I don't > remember exactly > but I think this problem has to do with a slightly newer > Universal Headers > than the one used to generate Ctlmodule.c. > > You could also check out Python sources from the CVS archive (see > Mac:Demo:building.html for pointers) where this is probably > long fixed. > -- > Jack Jansen | ++++ stop the execution of Mumia > Abu-Jamal ++++ > Jack.Jansen@oratrix.com | ++++ if you agree copy these lines > to your sig ++++ > www.oratrix.nl/~jack | see > http://www.xs4all.nl/~tank/spg-l/sigaction.htm > > From jack@oratrix.nl Tue Mar 14 15:16:31 2000 From: jack@oratrix.nl (Jack Jansen) Date: Tue, 14 Mar 2000 16:16:31 +0100 Subject: [Pythonmac-SIG] Building Python In-Reply-To: Message by Harris Scott R CIV AFRL/SNJM , Tue, 14 Mar 2000 09:08:37 -0500 , <9F17D7A52AA1D311988500104B2444E0EC0B65@FSZHTV44> Message-ID: <20000314151632.5E3C8370CF2@snelboot.oratrix.nl> > Yes, I fixed it by changing the type and also by getting the source from the > CVS archive. > > I spent some time last night making more progress and now I'm having trouble > finding "dynload.c." This is a new file in the python core distribution. You should also get that from cvs, www.python.org has details. > I'm also wondering if I can build Python with Tcl/Tk 8.3, or should I stick > with 8.0? If you're willing to put some time in this: please do so! Support for a newer Tk would be very nice, but I have no time to look into it. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From senn@maya.com Tue Mar 14 14:34:37 2000 From: senn@maya.com (Jeff Senn) Date: 14 Mar 2000 09:34:37 -0500 Subject: [Pythonmac-SIG] python, hypercard and apple events Message-ID: I'm trying to help someone get a Python script to talk to a Hypercard stack via AE. Apparently I can manage to connect to Hypercard (since I get the expected error if HC is not running), but any AE request seems to return an error: -10003 (something about volume level being set wrong) which seems odd... I can get HC to talk to the echo.py test program and also my script to talk to echo -- and the event dumps seem very similar... Has anyone gotten this to work? ...example appreciated... or even anecdotal evidence that it should work... :-) (Please reply directly to me as I am not currently on the list...) -- -Jas --------------------------------------------------------- / / |-/ \ / /| Jeff Senn 412-488-2900 MAYA Design Group /|/| |/ o | /-| Chief Technologist 412-488-2940 fax 2100 Wharton Street Taming Complexity Head of R&D senn@maya.com Pittsburgh, PA 15203 www.maya.com From jack@oratrix.nl Tue Mar 14 15:57:11 2000 From: jack@oratrix.nl (Jack Jansen) Date: Tue, 14 Mar 2000 16:57:11 +0100 Subject: [Pythonmac-SIG] python, hypercard and apple events In-Reply-To: Message by Jeff Senn , 14 Mar 2000 09:34:37 -0500 , Message-ID: <20000314155711.9F234370CF2@snelboot.oratrix.nl> > > I'm trying to help someone get a Python script to talk to a Hypercard > stack via AE. Apparently I can manage to connect to Hypercard (since > I get the expected error if HC is not running), but any AE request > seems to return an error: -10003 (something about volume level being > set wrong) which seems odd... Hmm, the "volume incorrect" bit must be a bug in the program that generated the errors for macPython, because according to Errors.h error -10003 is "errAENotModifiable". This definitely looks like an AppleEvent error. Let me see if I can dig it out of IM... [pom pom....] Ah. This happens if you send, for instance, a create request to an object that can't be modified. This means that either the logic of the Python script is incorrect, or that there's a bug in MacPython's object-id creation code. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From senn@maya.com Tue Mar 14 15:44:42 2000 From: senn@maya.com (Jeff Senn) Date: 14 Mar 2000 10:44:42 -0500 Subject: [Pythonmac-SIG] python, hypercard and apple events In-Reply-To: Jack Jansen's message of "Tue, 14 Mar 2000 16:57:11 +0100" References: <20000314155711.9F234370CF2@snelboot.oratrix.nl> Message-ID: Jack Jansen writes: > > > > I'm trying to help someone get a Python script to talk to a Hypercard > > stack via AE. Apparently I can manage to connect to Hypercard (since > > I get the expected error if HC is not running), but any AE request > > seems to return an error: -10003 (something about volume level being > > set wrong) which seems odd... > > Hmm, the "volume incorrect" bit must be a bug in the program that generated > the errors for macPython, because according to Errors.h error -10003 is > "errAENotModifiable". This definitely looks like an AppleEvent error. Oops - I was typing too fast: the error was -10012 The only apparent difference with my (python generated events) and the ones from another application (e.g. script editor) seem to be a (non-default?) "tid" (transaction ID?) exists in the Python ones (that must be put there by the low-level AE code...) I noticed someone posted something about this in the December archives, but I haven't mucked with AE stuff for years so I wasn't sure how to interpret the msg... has anyone gotten Hypercard to handle an event generated by Python? (BTW- thanks for the quick reply) -- -Jas --------------------------------------------------------- / / |-/ \ / /| Jeff Senn 412-488-2900 MAYA Design Group /|/| |/ o | /-| Chief Technologist 412-488-2940 fax 2100 Wharton Street Taming Complexity Head of R&D senn@maya.com Pittsburgh, PA 15203 www.maya.com From cbarker@jps.net Tue Mar 14 23:24:09 2000 From: cbarker@jps.net (Chris Barker) Date: Tue, 14 Mar 2000 15:24:09 -0800 Subject: [Pythonmac-SIG] WxPython for MacPython Message-ID: <38CECA19.3D4E8C97@jps.net> Hi Folks, Is anyone out there working on or interested in working on porting wxPython to MacPython? For those of you not on the wxPython list: wxPython is a wrapper around the wxWindows C++ cross-platform GUI framework. It is a very nice way to create cross platform (or single platform, for that matter) GUIs in Python. There are a lot of folks that have found it to be far more powerfull and flexible that tkInter, and it is gaining a great deal of momentum as more and more folks use it. For more info about wxPython see: http://alldunn.com/wxPython/ And wxWindows: http://206.101.232.131/ wxPython is now available and under continuous development (By Robin Dunn) on MS Windows and Linux (as well as various other flavours of UNIX) wxwindows itself has been ported to the Mac (http://www.advanced.ch/wxwin/). I have no idea how robust it is. I am in desparate need for a crossplatform GUI tool for Mac, Windows, and Linux development. I don't think tkInter is a great option, and apparently no one else does, as no one seems interested in supporting it on the Mac. I don't know much about Mac programming, so it would be a monumental task for me. I have a co-worker that's interested in working on it, but I think it will be a hard sell if he'll have to do it all by himself. Robin Dunn (The developer of wxPython) has expressed interest, and said that if someone gives him a Mac, he'll work on it, and otherwise, he'll help out anyone who is working on it. The point of this post is to gauge interest, and to find out if anyone is allready working on it. Please let me know what you all think, if if what you think is "I'd love to see, it but can't work on it myself" NOTE: Robin is is ing SWIG to build most of wxPython, so the first step would be to get SWIG working on the Mac, which would be handy for other purposes as well. Anyone working on that? (http://www.swig.org/) Thanks, -Chris -- Christopher Barker, Ph.D. cbarker@jps.net --- --- --- http://www.jps.net/cbarker -----@@ -----@@ -----@@ ------@@@ ------@@@ ------@@@ Water Resources Engineering ------ @ ------ @ ------ @ Coastal and Fluvial Hydrodynamics ------- --------- -------- ------------------------------------------------------------------------ ------------------------------------------------------------------------ From jack@oratrix.nl Tue Mar 14 23:07:07 2000 From: jack@oratrix.nl (Jack Jansen) Date: Wed, 15 Mar 2000 00:07:07 +0100 Subject: [Pythonmac-SIG] python, hypercard and apple events In-Reply-To: Message by Jeff Senn , 14 Mar 2000 10:44:42 -0500 , Message-ID: <20000314230712.68418E2673@oratrix.oratrix.nl> Recently, Jeff Senn said: > Oops - I was typing too fast: the error was -10012 > > The only apparent difference with my (python generated events) and the > ones from another application (e.g. script editor) seem to be a > (non-default?) "tid" (transaction ID?) exists in the Python ones (that > must be put there by the low-level AE code...) And error -10012 is (surprise, surprise:-) errAENoSuchTransaction. And I finally found (thanks!) where this transaction-id problem with Python was hiding: the script that generates the AE module (most toolbox modules are generated with a set of scripts that parse Apple's .h header files) mistakenly had AEtransactionID as a short in stead of a long. So the top 16 bits of every transaction ID (or is that the bottom?) contained random garbage. This will be fixed in the next release, and in the mean time if you build Python from source you can easily fix it by changing AE_AECreateAppleEvent in AEmodule.c: the format specifier should be "O&O&O&hl" (in stead of "O&O&O&hh"). -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From sdm7g@virginia.edu Tue Mar 14 23:11:07 2000 From: sdm7g@virginia.edu (Steven D. Majewski) Date: Tue, 14 Mar 2000 18:11:07 -0500 (EST) Subject: [Pythonmac-SIG] WxPython for MacPython In-Reply-To: <38CECA19.3D4E8C97@jps.net> Message-ID: On Tue, 14 Mar 2000, Chris Barker wrote: > > NOTE: Robin is is ing SWIG to build most of wxPython, so the first step > would be to get SWIG working on the Mac, which would be handy for other > purposes as well. Anyone working on that? (http://www.swig.org/) > There was a Mac port of an older version of Swig, which I have used. (Should be on swig.org. ) It used a Tcl/Tk interface which, I believe, needed some customization for the Mac version, but swig, for the most part _ought_ to build on the Mac. If there are any problems, you can always SWIG the interfaces on another machine and then do the rest of the build on the Mac. ---| Steven D. Majewski (804-982-0831) |--- ---| Department of Molecular Physiology and Biological Physics |--- ---| University of Virginia Health Sciences Center |--- ---| P.O. Box 10011 Charlottesville, VA 22906-0011 |--- "There's a new programming language called C+++. It's 50% better than C++, but every time you compile, your modem hangs up." From jack@oratrix.nl Tue Mar 14 23:25:58 2000 From: jack@oratrix.nl (Jack Jansen) Date: Wed, 15 Mar 2000 00:25:58 +0100 Subject: [Pythonmac-SIG] WxPython for MacPython In-Reply-To: Message by Chris Barker , Tue, 14 Mar 2000 15:24:09 -0800 , <38CECA19.3D4E8C97@jps.net> Message-ID: <20000314232603.17BD4E2673@oratrix.oratrix.nl> I'm all for a wxMacPython, but I'm afraid I can't be of any help here, short of the occasional bit of good advice. And here's the first bit (unsolicited:-): Recently, Chris Barker said: > NOTE: Robin is is ing SWIG to build most of wxPython, so the first step > would be to get SWIG working on the Mac, which would be handy for other > purposes as well. Anyone working on that? (http://www.swig.org/) I would strongly suggest using bgen in stead of SWIG, especially if you (or Robin) knows the header files well. Bgen is much harder to setup than SWIG, but once you've set it up it has two major advantages: (1) it knows everything about which C structures should be considered object types in Python and creates all those objects, with the functions operating on them as methods, the PyArg_ParseTuple glue routines to allow them to be passed as parameters to other calls, etc. and (2) if a new release of the underlying software comes out building a new Python module is usually catered for by re-running bgen. Without bgen the interfaces to the mac toolbox would have been unmaintainable. Every time apple adds 45 new calls to, say, quicktime, it takes me about 25 seconds to have them supported in Python. With SWIG you'd first have to create the .i files (although this can possibly be semi-automatic) and then you'd have to add all that Python glue code to create an OO interface to the lowlevel C interface. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From managan@llnl.gov Tue Mar 14 23:35:48 2000 From: managan@llnl.gov (Rob Managan) Date: Tue, 14 Mar 2000 15:35:48 -0800 Subject: [Pythonmac-SIG] WxPython for MacPython In-Reply-To: References: Message-ID: At 6:11 PM -0500 3/14/00, Steven D. Majewski wrote: >On Tue, 14 Mar 2000, Chris Barker wrote: > > > > > NOTE: Robin is is ing SWIG to build most of wxPython, so the first step > > would be to get SWIG working on the Mac, which would be handy for other > > purposes as well. Anyone working on that? (http://www.swig.org/) > > > >There was a Mac port of an older version of Swig, which I have used. >(Should be on swig.org. ) It used a Tcl/Tk interface which, I believe, >needed some customization for the Mac version, but swig, for the most >part _ought_ to build on the Mac. > >If there are any problems, you can always SWIG the interfaces on >another machine and then do the rest of the build on the Mac. > I have swig 1.1-883 up and running if that is useful. I haven't tried the 1.3a release yet. *-*-*-*-*-*-*-*-*-*-**-*-*-*-*-*-*-*-*-*-*- Rob Managan LLNL ph: 925-423-0903 P.O. Box 808, L-095 FAX: 925-422-3389 Livermore, CA 94551-0808 From robin@alldunn.com Tue Mar 14 23:47:35 2000 From: robin@alldunn.com (Robin Dunn) Date: Tue, 14 Mar 2000 15:47:35 -0800 Subject: [Pythonmac-SIG] WxPython for MacPython References: Message-ID: <00ba01bf8e0f$af2dc810$1a25d2d1@jenkondev.com> > > I have swig 1.1-883 up and running if that is useful. I haven't tried > the 1.3a release yet. > That would be perfect! I have been using something like 1.1-810 on the other platforms and havn't moved to 1.3a yet either. -- Robin Dunn Software Craftsman robin@AllDunn.com http://AllDunn.com/robin/ http://AllDunn.com/wxPython/ Check it out! From robin@alldunn.com Tue Mar 14 23:54:11 2000 From: robin@alldunn.com (Robin Dunn) Date: Tue, 14 Mar 2000 15:54:11 -0800 Subject: [Pythonmac-SIG] WxPython for MacPython References: <20000314232603.17BD4E2673@oratrix.oratrix.nl> Message-ID: <00c601bf8e10$9b9530d0$1a25d2d1@jenkondev.com> > > I would strongly suggest using bgen in stead of SWIG, especially if > you (or Robin) knows the header files well. Are there any How-To or tutorial docs for bgen anywhere? I did look at it once long ago but couldn't make much sense out of it... -- Robin Dunn Software Craftsman robin@AllDunn.com http://AllDunn.com/robin/ http://AllDunn.com/wxPython/ Check it out! From robin@alldunn.com Wed Mar 15 03:06:22 2000 From: robin@alldunn.com (Robin Dunn) Date: Tue, 14 Mar 2000 19:06:22 -0800 Subject: [Pythonmac-SIG] WxPython for MacPython References: <38CECA19.3D4E8C97@jps.net> Message-ID: <005901bf8e2b$72d98860$0301a8c0@easystreet.com> > > NOTE: Robin is is using SWIG to build most of wxPython, so the first step > would be to get SWIG working on the Mac, which would be handy for other > purposes as well. Anyone working on that? (http://www.swig.org/) > I've put MacSwig from Rob Managan at http://alldunn.com/wxPython/dist/others/ -- Robin Dunn Software Craftsman robin@AllDunn.com http://AllDunn.com/robin/ http://AllDunn.com/wxPython/ Check it out! From petrilli@amber.org Wed Mar 15 05:44:30 2000 From: petrilli@amber.org (Christopher Petrilli) Date: Wed, 15 Mar 2000 00:44:30 -0500 Subject: [Pythonmac-SIG] MacOS X probably no shipping Python In-Reply-To: ; from just@letterror.com on Sat, Mar 11, 2000 at 01:04:31AM +0100 References: Message-ID: <20000315004430.A7233@trump.amber.org> Just van Rossum [just@letterror.com] wrote: > Thanks for your report! > > At 3:31 PM -0800 10-03-2000, Bob Savage wrote: > >I probably seem like I'm making too much of some very brief remarks, but can > >you imagine how cool it would be to have python come pre-installed in every > >Mac? > > That's right! ;-) > > Just today I was pointed towards an interesting review of MacOSX DP3: > http://www.arstechnica.com/reviews/1q00/macos-x-dp3/macos-x-dp3-1.html > > (No Python relevance, still an interesting -- though long -- read) We (Digital Creatons) are an Apple Developer, so we've got DP3 already, and I'm hoping to get it installed on my Powerbook this week. After that I'll be able to talk more about it. I know Jeffrey Shell who works there as well got it up and running with a regular UNIX install of Python. Chris -- | Christopher Petrilli | petrilli@amber.org From jwblist@olympus.net Wed Mar 15 05:39:19 2000 From: jwblist@olympus.net (John W Baxter) Date: Tue, 14 Mar 2000 21:39:19 -0800 Subject: [Pythonmac-SIG] python on MacOS X In-Reply-To: References: Message-ID: At 8:54 -0500 3/13/2000, Jeffrey P Shell wrote: >Interestingly, if you're using HFS+ ("MacOS Extended") for your default file >system under MacOS X, building Python (unix) doesn't really work due to the >fact that HFS+ seems to be case insensitive. HFS+ file systems pretty much have to stay case-insensitive under Mac OS X...too much would break otherwise. (Mac file systems have been case-insensitive for over 16 years now.) It does sound like this will get in the way of building Python in the context you are using. --John -- -- John W. Baxter, Port Ludow, WA, USA jwbaxter@olympus.net I'm trying to think, but nothing happens. From just@letterror.com Wed Mar 15 09:43:13 2000 From: just@letterror.com (Just van Rossum) Date: Wed, 15 Mar 2000 10:43:13 +0100 Subject: [Pythonmac-SIG] WxPython for MacPython In-Reply-To: <20000314232603.17BD4E2673@oratrix.oratrix.nl> References: Message by Chris Barker , Tue, 14 Mar 2000 15:24:09 -0800 , <38CECA19.3D4E8C97@jps.net> Message-ID: At 12:25 AM +0100 15-03-2000, Jack Jansen wrote: >I would strongly suggest using bgen in stead of SWIG, especially if >you (or Robin) knows the header files well. Bgen is much harder to >setup than SWIG, but once you've set it up it has two major >advantages: (1) it knows everything about which C structures should be >considered object types in Python and creates all those objects, with >the functions operating on them as methods, the PyArg_ParseTuple glue >routines to allow them to be passed as parameters to other calls, >etc. and (2) if a new release of the underlying software comes out >building a new Python module is usually catered for by re-running bgen. > >Without bgen the interfaces to the mac toolbox would have been >unmaintainable. Every time apple adds 45 new calls to, say, quicktime, >it takes me about 25 seconds to have them supported in Python. With >SWIG you'd first have to create the .i files (although this can >possibly be semi-automatic) and then you'd have to add all that Python >glue code to create an OO interface to the lowlevel C interface. While I understand what you're saying, I think in the case of wxPython this may be bad advice: wxPython is already wrapped by SWIG on other platforms, so it's probably a bad idea to use bgen for the Mac version since it won't generate a compatible interface. (I actually don't see the point of SWIG-ing it on the Mac: it's supposedly a cross platform library, so the existing wrappers for other platforms should be usable as-is, no?) Another issue is that wxWindows is C++ (?), and I'm not sure bgen handles C++ at all... Yes, bgen generates superior code (nice OO wrappers at the *C* level, without the need for those clumsy & inefficient shadow classes) but if you've never worked with bgen before, it's a nightmare to set up. No, there's no how-to, and actually there seems to be no doco, period... Just From jack@oratrix.nl Wed Mar 15 09:52:16 2000 From: jack@oratrix.nl (Jack Jansen) Date: Wed, 15 Mar 2000 10:52:16 +0100 Subject: [Pythonmac-SIG] WxPython for MacPython In-Reply-To: Message by Just van Rossum , Wed, 15 Mar 2000 10:43:13 +0100 , Message-ID: <20000315095216.EEA62370CF2@snelboot.oratrix.nl> > While I understand what you're saying, I think in the case of wxPython this > may be bad advice: wxPython is already wrapped by SWIG on other platforms, > so it's probably a bad idea to use bgen for the Mac version since it won't > generate a compatible interface. You're quite right. I didn't read the original close enough, but on second reading I saw that what was probably said was that SWIG was already used, and in that case switching would be a bad idea. And on the topic of bgen tutorials or howto's, which Robin raised: sorry: there isn't any documentation. Writing some, and probably streamlining bgen in the process, has been on my todo list for ages, but it would take a couple of weeks at least and I don't have that time, I'm afraid. It will happen some day, I hope.... -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From azeldis@mail.wesleyan.edu Wed Mar 15 23:07:36 2000 From: azeldis@mail.wesleyan.edu (M. Papillon) Date: Wed, 15 Mar 2000 18:07:36 -0500 Subject: [Pythonmac-SIG] Help: compiling a module with MPW Message-ID: <200003152310.SAA12290@mail.wesleyan.edu> Thanks to the excellent documentation from Mr. Webster on using MPW, I was able to compile and use a number of fairly complicated python modules with no trouble. However, I am getting a DebugStr: "Attempt to free unallocated or corrupt block @ xxxx". If I ignore this, things seem to work fine. Where is this error coming from? I have no experience with MPW or python modules, but this message seems to be merely informative. I searched through the python sources and module sources and couldn't find it anywhere, and have no idea where it's coming from. Needless to say it's annoying to be dropping into MacsBug all the time. I'm hoping it's a built-in assert in MPW's libraries that can be turned off somehow...? From tom@parlant.com Wed Mar 15 23:57:43 2000 From: tom@parlant.com (Thomas Lane) Date: Wed, 15 Mar 2000 16:57:43 -0700 Subject: [Pythonmac-SIG] starting a process from a python program Message-ID: <38D02377.96480835@parlant.com> I am trying to write a python program that can run another python program as a new process. I want to start it asynchronously, so both processes continue to execute. I know I can use "os.fork" for Unix and "os.spawnv" for Windows, but what call can I use to do this on a Mac? This is the first time I've ever written a Mac program (other than some assembly language in school 10+ years ago), so if I am missing something obvious, please let me know. Also, what are the limitations I am going to run into on Mac? My understanding is that MacOS does not support threads. How is multitasking handled? Is there a call that I have to make occasionally to return the CPU to the OS? Thanks in advance for any help. Tom From jack@oratrix.nl Thu Mar 16 09:13:11 2000 From: jack@oratrix.nl (Jack Jansen) Date: Thu, 16 Mar 2000 10:13:11 +0100 Subject: [Pythonmac-SIG] Help: compiling a module with MPW In-Reply-To: Message by "M. Papillon" , Wed, 15 Mar 2000 18:07:36 -0500 , <200003152310.SAA12290@mail.wesleyan.edu> Message-ID: <20000316091311.4BD0A370CF2@snelboot.oratrix.nl> > Thanks to the excellent documentation from Mr. Webster on using MPW, I > was able to compile and use a number of fairly complicated python modules > with no trouble. > > However, I am getting a DebugStr: "Attempt to free unallocated or corrupt > block @ xxxx". If I ignore this, things seem to work fine. This looks very much like a malloc mixup: you have allocated a block with Python malloc() and you're trying to free it with MPW malloc, or the other way around. If you make sure you put the PythonCore library before the StdCLib (or any other MPW libraries) in your link order you should be fine. At least, that's the trick that works under CodeWarrior, so let's hope it also works for MPW. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From azeldis@mail.wesleyan.edu Thu Mar 16 16:01:05 2000 From: azeldis@mail.wesleyan.edu (M. Papillon) Date: Thu, 16 Mar 2000 11:01:05 -0500 Subject: [Pythonmac-SIG] Help: compiling a module with MPW Message-ID: <200003161603.LAA04379@mail.wesleyan.edu> >> However, I am getting a DebugStr: "Attempt to free unallocated or corrupt >> block @ xxxx". If I ignore this, things seem to work fine. > >This looks very much like a malloc mixup: you have allocated a block with >Python malloc() and you're trying to free it with MPW malloc, or the other >way >around. > >If you make sure you put the PythonCore library before the StdCLib (or any >other MPW libraries) in your link order you should be fine. At least, that's >the trick that works under CodeWarrior, so let's hope it also works for MPW. You'd think, wouldn't you? But I've done that. That's what it looks like to me as well, I did a little snooping in MacsBug -- which I hardly understand at all -- and it looks like it's definitely coming from python doing free(), not one of the libraries. I don't suppose MetroWerks allows it's libraries to be distributed...? Or, is there a way to simply disable DebugStr's? This is only for development, the final thing will be run on Solaris, but's *really* annoying to have to always hit cmd-g and have the screen-flipping shock. In any case I'd say it's a testament to the skill of those involved that this works at all. ;) THANKS From jack@oratrix.nl Fri Mar 17 11:20:09 2000 From: jack@oratrix.nl (Jack Jansen) Date: Fri, 17 Mar 2000 12:20:09 +0100 Subject: [Pythonmac-SIG] General MacOS programming question Message-ID: <20000317112010.6564F370CF2@snelboot.oratrix.nl> Folks, what are people using nowadays as a source of MacOS code snippets and such? My old resources such as info-mac and the Apprentice cd series seem to have pretty much died, and I wondere what other people use. And, just in case anyone happens to have an answer to my particular problem at the moment: I need a control with which I can select a rectangular area. Something like an ImageWell control, but with a little red box on top of it of which the user can drag the corners and which will eventually return x,y,w,h coordinates. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From lefebvre@med.mcgill.ca Fri Mar 17 19:02:32 2000 From: lefebvre@med.mcgill.ca (Luc Lefebvre) Date: Fri, 17 Mar 2000 14:02:32 -0500 Subject: [Pythonmac-SIG] Learning Python example Message-ID: Hi, I trie the following example from the "Learning Python" book: # code begin from Tkinter import * w=Button(text="Hello", command='exit') w.pack() w.mainloop() # code end When I do this in Linux, all is peachy. When I try this in the Mac version the button shows up but when I click the button the widget seems to lock up and I can't quit Python (I have to kill the whole IDE, command-Q doesn't work). I noticed in the Guido (vanRossum) and Matt examples supplied with the distro that they bury all of this in a procedure as well as define a toplevel widget to contain the button (which is not in this example). I can see the difference but don't quite understand why the above doesn't work. tia ------------------------------- Luc Lefebvre project engineer Aerospace Medical Research Unit McGill University Montreal Canada -----BEGIN PGP PUBLIC KEY BLOCK----- Available upon request or public keyservers. key fingerprint: D2E5 5E35 B910 6F4E 0242 EC63 0FD9 96D0 C7F4 784E -----END PGP PUBLIC KEY BLOCK----- From jack@oratrix.nl Fri Mar 17 21:49:28 2000 From: jack@oratrix.nl (Jack Jansen) Date: Fri, 17 Mar 2000 22:49:28 +0100 Subject: [Pythonmac-SIG] Learning Python example In-Reply-To: Message by Luc Lefebvre , Fri, 17 Mar 2000 14:02:32 -0500 , Message-ID: <20000317214934.3464FE2673@oratrix.oratrix.nl> Unfortunately Tkinter and IDE cannot be used together: they both want to control the main event loop of Python. Using Tkinter with the raw interpreter should be more successful, but be warned that there are a few problems with Tkinter in the current (1.5.2) release. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From tom@parlant.com Sat Mar 18 15:25:47 2000 From: tom@parlant.com (Thomas Lane) Date: Sat, 18 Mar 2000 08:25:47 -0700 Subject: [Pythonmac-SIG] Tkinter known problems? (was: Learning Python example) References: <20000317214934.3464FE2673@oratrix.oratrix.nl> Message-ID: <38D39FFB.66A25249@parlant.com> Is there a list somewhere with the current problems w/ Tkinter on the Mac? I'm working on an application that is supposed to run on a cross-platform application, and I'd just like to know what to watch out for. Since I'm asking for the known problems, I might as well throw in the first one I've found: The BuildApplication utility will fail if your program has a line of code that imports a module that doesn't exist for Mac even if execution can never reach that point on the Mac (ie. 'if os.name == "posix": import os.path'). The solution is to use the exec statement (ie. 'if os.name == "posix": exec("import os.path")'). It's a kludge, but it works. Jack Jansen wrote: > > Unfortunately Tkinter and IDE cannot be used together: they both want > to control the main event loop of Python. Using Tkinter with the raw > interpreter should be more successful, but be warned that there are a > few problems with Tkinter in the current (1.5.2) release. From craig@osa.att.ne.jp Sat Mar 18 15:40:02 2000 From: craig@osa.att.ne.jp (Craig Hagerman) Date: Sun, 19 Mar 2000 00:40:02 +0900 Subject: [Pythonmac-SIG] Is an applet depandant on a single path? Message-ID: Hi, I am wondering if the applet created by dropping a script on the BuildApplet icon is dependant on the path as set on my machine, or can it be used as is on another Mac that has Python installed in a different place. I have written a small program for another person and am wondering if it is OK to send just an applet or if there will be a problem resulting from the path on my machine being different from his. (He has installed Python but not done anything with it, and doesn't know a thing about it.) I know that I could give him instructions on how to create his own applet but I am just curious about whether exchanging applets would cause a problem or not. Craig Hagerman From just@letterror.com Sat Mar 18 15:55:59 2000 From: just@letterror.com (Just van Rossum) Date: Sat, 18 Mar 2000 16:55:59 +0100 Subject: [Pythonmac-SIG] Is an applet depandant on a single path? In-Reply-To: Message-ID: At 12:40 AM +0900 19-03-2000, Craig Hagerman wrote: >Hi, > >I am wondering if the applet created by dropping a script on the >BuildApplet icon is dependant on the path as set on my machine, or can it >be used as is on another Mac that has Python installed in a different place. > >I have written a small program for another person and am wondering if it is >OK to send just an applet or if there will be a problem resulting from the >path on my machine being different from his. (He has installed Python but >not done anything with it, and doesn't know a thing about it.) I know that >I could give him instructions on how to create his own applet but I am just >curious about whether exchanging applets would cause a problem or not. It should work, as long as your global sys.path is the default one. If it isn't, you can drop the applet onto EditPythonPrefs, and override the global path with your own. This will then travel with the applet. However, there is (still) some odd problem with EditPythonPrefs: sometimes it adds an 'alis' reousrce to the applet, which is an alias to *your* Python installation. In this case the applet won't run on any other machine. The trick is to just remove the 'alis' resource from the applet with ResEdit. General applet magic: if you create a resource file in the same folder as your script, and give it the name of your script, but .rsrc instead of .py, all the resources in that file will be added to the applet. So if you need custom preferences, just drop the _resource_ file onto EditPythonPrefs. Also, if you need custom memory size, the following is handy: create the applet, set the memory fields in the get info window in the finder, copy the SIZE resource from the applet to the resource file. If you create the applet again (say, after editing the script) you applet will have the proper memory settings. Just From wesc@alpha.ece.ucsb.edu Sat Mar 18 22:20:09 2000 From: wesc@alpha.ece.ucsb.edu (Wesley J. Chun) Date: Sat, 18 Mar 2000 14:20:09 -0800 (PST) Subject: [Pythonmac-SIG] MacPython/IDLE screenshots? Message-ID: <200003182220.OAA10761@alpha.ece.ucsb.edu> Hi folks, I'm working on YAPB (yet another Python book) and would like to feature some MacPython screenshots in the intro. Specifically, I'd like to at least a Python "shell" window as well as an IDE GUI-debugging one. If someone also has IDLE or JPython running on their Mac, I'd like to get some of those too. Any help would be appreciated (not to mention featured publically)! Most general formats are fine... .gif, .tif, .jpg, .bmp, etc. Thanks! -Wesley "Core Python Programming", Prentice-Hall, TBP Summer 2000 wesley.j.chun :: wesc@alpha.ece.ucsb.edu cyberweb.consulting :: silicon.valley, ca http://www.roadkill.com/~wesc/cyberweb/ From scottrharris@earthlink.net Sun Mar 19 05:07:38 2000 From: scottrharris@earthlink.net (Scott Harris) Date: Sun, 19 Mar 2000 00:07:38 -0500 Subject: [Pythonmac-SIG] Trying to build Python References: <20000318170032.EF84A1CD40@dinsdale.python.org> Message-ID: <38D46098.5241E9B1@earthlink.net> Link Error : export symbol 'fwalk' is undefined I've got everything to compile, but I'm getting some link errors. Here are a few. Link Error : export symbol '_prealloc_newpool__3stdFUl' is undefined Link Error : export symbol '_set_newnonptrmax__3stdFUl' is undefined Link Error : export symbol '_set_newpoolsize__3stdFUl' is undefined Link Error : export symbol '__malloc_pool' is undefined Link Error : export symbol '__num_to_file' is undefined Link Error : export symbol '__file_to_num' is undefined What am I missing? Thanks, -Scott Harris From PClaerhout@CREO.BE Sun Mar 19 08:27:19 2000 From: PClaerhout@CREO.BE (Pieter Claerhout) Date: Sun, 19 Mar 2000 09:27:19 +0100 Subject: [Pythonmac-SIG] MacPython/IDLE screenshots? Message-ID: <2B1262E83448D211AE4B00A0C9D61B03BA71D7@MSGEURO1> I'll send you some on monday. Pieter PClaerhout@creo.be http://chill.webhostme.com/ -----Original Message----- From: Wesley J. Chun To: pythonmac-sig@python.org Sent: 18/03/00 23:20 Subject: [Pythonmac-SIG] MacPython/IDLE screenshots? Hi folks, I'm working on YAPB (yet another Python book) and would like to feature some MacPython screenshots in the intro. Specifically, I'd like to at least a Python "shell" window as well as an IDE GUI-debugging one. If someone also has IDLE or JPython running on their Mac, I'd like to get some of those too. Any help would be appreciated (not to mention featured publically)! Most general formats are fine... .gif, .tif, .jpg, .bmp, etc. Thanks! -Wesley "Core Python Programming", Prentice-Hall, TBP Summer 2000 wesley.j.chun :: wesc@alpha.ece.ucsb.edu cyberweb.consulting :: silicon.valley, ca http://www.roadkill.com/~wesc/cyberweb/ _______________________________________________ Pythonmac-SIG maillist - Pythonmac-SIG@python.org http://www.python.org/mailman/listinfo/pythonmac-sig From wesc@alpha.ece.ucsb.edu Sun Mar 19 18:55:01 2000 From: wesc@alpha.ece.ucsb.edu (Wesley J. Chun) Date: Sun, 19 Mar 2000 10:55:01 -0800 (PST) Subject: [Pythonmac-SIG] mail server problems (was: MacPython screen shots?) Message-ID: <20000319185501.13549.qmail@web2902.mail.yahoo.com> hi there again, apparently after i sent my message to the list yesterday, the mail server i was using at wesc@alpha.ece.ucsb.edu went down (and stayed there). i apologize if your message got bounced. please try this address (wesc@rocketmail.com). thanks, and sorry for the inconvenience. if any of you have MacPython, Mac JPython, or Mac IDLE screen shots, i would really appreciate it! i'm also interested in any specific Python exam- ples that you think might benefit a newbie to Py- thon, but not a newbie to programming in general. is there an exercise or a script that you've done which you feel will benefit other new MacPython users? if so, forward those on to me as well! i saw Pieter's reply (thanks!), but wanted to let you know i'm not currently on the list so if anyone else has any, please contact me di- rectly. thanks! -wesley __________________________________________________ Do You Yahoo!? Talk to your friends online with Yahoo! Messenger. http://im.yahoo.com From craig@osa.att.ne.jp Mon Mar 20 07:40:42 2000 From: craig@osa.att.ne.jp (Craig Hagerman) Date: Mon, 20 Mar 2000 16:40:42 +0900 Subject: [Pythonmac-SIG] OptionMenu widget crashes the interpreter Message-ID: Hi, I am wondering if there is a known bug involving using an OptionMenu Tkinter widget on Macs. I was just trying to make a simple GUI front end for a script and decided to use a pop-up menu rather than radio buttons to select between two options. I have used almost exactly the same code as the "optionmenu.py" script in the 'tkinter->guido' folders in the standard Mac distribution. With both my GUI and with the script from the 'guido' folder I end up crashing the Python interpreter about 80 % of the time. (Sometimes everything runs without a hitch.) It usually results in a "type 2" error message. The "optionmenu.py" only imports Tkinter, however I don't see any reference to this widget in Fredrik Lundh's online "An Introdution to Tkinter". I did discover a reference to it in the new book "Python and Tkinter Programming" (John E. Grayson) within the PMW (Python Mega Widgets) section. However I don't seem to have a PMW module in my Mac distribution. Am I correct in assuming this is not available on the Mac platform? If so why? So what is going on with the OptionMenu widget? Is it a PWM widget or not? If it is a PWM widget why does it display correctly but then crash my machine? Is there a better way to contruct a pop-up menu? Thanks in advance, Craig Hagerman From pf@artcom-gmbh.de Mon Mar 20 08:45:54 2000 From: pf@artcom-gmbh.de (Peter Funk) Date: Mon, 20 Mar 2000 09:45:54 +0100 (MET) Subject: [Pythonmac-SIG] OptionMenu widget crashes the interpreter In-Reply-To: from Craig Hagerman at "Mar 20, 2000 4:40:42 pm" Message-ID: Hi Craig! > I am wondering if there is a known bug involving using an OptionMenu > Tkinter widget on Macs. I was just trying to make a simple GUI front end > for a script and decided to use a pop-up menu rather than radio buttons to > select between two options. I have used almost exactly the same code as the > "optionmenu.py" script in the 'tkinter->guido' folders in the standard Mac > distribution. The sad situation is, that currently only very few mac people seem to use Tk and especially Tkinter. :-( I think that the Tk toolkit has a great potential to catch up as a very versatile and portable gui-toolkit for three main platforms Unix/Linux, WinXX and MacOS. But especially on the Mac some serious work seems to be required. Jack Jansen, who provided the current Mac port of Python wrote here previously, that he will be unable, to take care of Python/Tkinter due to the lack of time. In the mean time I've got in contact with the developer who did the Mac work for Tcl/Tk 8.3.0 and he feels optimistic, that it is possible to do serious GUIs with Tcl/Tk on the Mac and told me about several companys using Tcl/Tk on the mac for portable GUIs. But of course he can't speak for Python. We are still in the process to catch up with the rather complicated process to build Tcl/Tk and Python from Source on the Mac and have still problems due to the lack of knowledge about Mac internals or handling of Metrowerks code warrior. There seem to be some problems related to the automatic conversion metrowerks project files due to the latest version of code warrior we bought. My employee, who is currently working on this, has taken a vacation until Tuesday, so I can't tell you more details at the moment. Last time I spoke withh him, the fresh compiled Python interpreter was unable to find the Tcl/Tk shared libs. :-( > With both my GUI and with the script from the 'guido' folder I end up > crashing the Python interpreter about 80 % of the time. (Sometimes > everything runs without a hitch.) It usually results in a "type 2" error > message. > The "optionmenu.py" only imports Tkinter, however I don't see any reference > to this widget in Fredrik Lundh's online "An Introdution to Tkinter". The option menu class is described on page 510 of John Graysons book. Fredriks Introduction to Tkinter is still an unfinished work in progress. But before it was available Tkinter was very under-documented and the only chance to get something going was to look into the Tkinter source code, the Tk man pages and the life preserver. The situatoin has improved much with John Graysons book, but there are still some small uncovered areas, like for example drag'n'drop, standard dialogs and some minor options and methods contained in Tkinter.py. > I did > discover a reference to it in the new book "Python and Tkinter Programming" > (John E. Grayson) within the PMW (Python Mega Widgets) section. However I > don't seem to have a PMW module in my Mac distribution. Yes. 'Pmw' is additional Software written in pure Python. It should be possible to get it running on the Mac and I've also a great interest to see this, since Pmw contains some very useful widgets, like Entry-fields with validators, a tabbed notebook mega widget and more. Pmw works like a charme on Unix/Linux and on WinXX. > Am I correct in > assuming this is not available on the Mac platform? If so why? You could download it from Unfortunately there is only a Unix .tar.gz file available. If you have a Linux-Fileserver, it it no problem, to unpack the distribution there and get access to the folder via netatalk. Until now I don't know where to drop the Pmw folder on the Mac 'site-packages' works fine under Unix/Linux and WinXX. > So what is going on with the OptionMenu widget? Is it a PWM widget or not? Both Tkinter and Pmw contain a OptionMenu widget. The Pmw option menu widget however is more sophisticated and has more configuration options. > If it is a PWM widget why does it display correctly but then crash my > machine? Is there a better way to contruct a pop-up menu? May be, this is due to the implementation of the Tk menubutton widget. But I don't know and can't help here. It works flawlessly on the other platforms (WinXX, Linux/Unix) so it must have to do with the Mac port. Regards, Peter -- Peter Funk, Oldenburger Str.86, D-27777 Ganderkesee, Germany, Fax:+49 4222950260 office: +49 421 20419-0 (ArtCom GmbH, Grazer Str.8, D-28359 Bremen) From billpy@mousa.demon.co.uk Mon Mar 20 09:47:47 2000 From: billpy@mousa.demon.co.uk (Bill Bedford) Date: Mon, 20 Mar 2000 09:47:47 +0000 Subject: [Pythonmac-SIG] OptionMenu widget crashes the interpreter In-Reply-To: References: Message-ID: At 9:45 am +0100 20/03/00, Peter Funk wrote: >Hi Craig! > > >> Am I correct in >> assuming this is not available on the Mac platform? If so why? > >You could download it from >Unfortunately there is only a Unix .tar.gz file available. If you >have a Linux-Fileserver, it it no problem, to unpack the >distribution there and get access to the folder via netatalk. No need for this Stuffit Expander 5.5 will unpack it for you. From their Read Me:- * We've added support for Tar (.tar), Zip and UUcode to StuffIt Expander. Expander can access virtually any file found on the internet. The list of built-in file types supported by StuffIt expander is now: - StuffIt (.sit, .sea) Note: There are over 15 different varients of StuffIt (from 1.5.1 to 5.1), including encrypted variations, all are supported by StuffIt Expander. - Private File (.pf) Aladdin's e-mail encryption product. - Disk Images (.img, .smi) Expander can mount images created by Shrinkwrap or Apple Disk Copy. - BinHex (.hqx) All versions. - MacBinary (.bin) All versions. - TAR (.tar) - UU (.uu, .uue) The equivalent of .hqx on the PC. - Zip/GZip (.zip, .gz, .tgz) Zip is a popular Windows format. Expander supports encrypted Zip files as well. >Until now I don't know where to drop the Pmw folder on the Mac >'site-packages' works fine under Unix/Linux and WinXX. > As long as it is in your Python Path it will work. -- Bill Bedford mailto:billb@mousa.demon.co.uk When I said I had a memory leak, I wasn't referring to RAM... From dante@oz.net Wed Mar 22 02:52:00 2000 From: dante@oz.net (Dante) Date: Tue, 21 Mar 2000 18:52:00 -0800 Subject: [Pythonmac-SIG] Setting View Options Message-ID: Is there currently a way I can automate setting View Options in Finder windows under OS9? thanks, Michael -- apt is just a bot/these form words remove the walls/Elvis Presley Pez ... Michael Esveldt mailto:dante@oz.net - http://velocity.editthispage.com/ #FightThePower on irc.openprojects.net From kelvin.chu@uvm.edu Wed Mar 22 18:26:31 2000 From: kelvin.chu@uvm.edu (Kelvin Chu) Date: Wed, 22 Mar 2000 13:26:31 -0500 Subject: [Pythonmac-SIG] Point of Information? Message-ID: <20000322132631.A57690@chipotle.physics.uvm.edu> Hi all; I've perused alot of the archives of the SIG recently, but still haven't found the answer that I'm looking for. I want to write some python code that requires a GUI. The sig archives seem to indicate that TK is not the way to go, that it's buggy and perhaps not well supported. So...my question is: any recommendations on which packages to use? I've written stuff on Linux boxes using PMW - is this going to be portable to the Mac, or is the code not robust enough? If so, what packages have people used? I would be pleased to summarize responses and post to the group. Cheers, -k -- kelvin.chu@uvm.edu (802) 656-0064 http://www.uvm.edu/~kchu/ FAX: (802) 656-0817 From cwebster@nevada.edu Wed Mar 22 19:27:27 2000 From: cwebster@nevada.edu (Corran Webster) Date: Wed, 22 Mar 2000 11:27:27 -0800 Subject: [Pythonmac-SIG] Point of Information? In-Reply-To: <20000322132631.A57690@chipotle.physics.uvm.edu> Message-ID: > Hi all; > > I've perused alot of the archives of the SIG recently, but still haven't > found the answer that I'm looking for. I want to write some python code > that requires a GUI. The sig archives seem to indicate that TK is not the > way to go, that it's buggy and perhaps not well supported. So...my > question is: any recommendations on which packages to use? I've written > stuff on Linux boxes using PMW - is this going to be portable to the Mac, > or is the code not robust enough? If so, what packages have people used? At the moment, Tkinter is the easiest way to do cross-platform GUIs on the mac. At least simple GUI's should be possible witht he current state of the code. PMW is built on top of Tkinter (at least, AFAIK), so any problems with Tk will surface there as well. OTOH, if you have Tkinter working then PMW should be fairly easy to get to work on a mac since it is pure Python. Mac Python has pretty good support for native mac GUIs - you will need to know a bit about mac GUI programming for this, in particular you will need Apple's Inside Macintosh to get all the details. The python interface is basically a wrapper about the C interface to the toolbox calls. You should also read up on the FrameWork module which provides many basic features that an application will need. The Demo subdirectory of the mac distribution has several examples of this approach. At a slightly higher level are Just van Rossum's "W Widgets" which is what the IDE uses. I've written some notes on how to use these to build applications at: http://www.nevada.edu/~cwebster/Python/WWidgets/index.html Both of these are not cross-platform. A different, cross-platform solution would be to use JPython which gives you access to Java's GUI. Finally, I believe that people are working on a port of wxPython to the mac, which has the potential of providing another cross-platform solution. Hopefully this should help you. Regards, Corran From alex@extreme-net.org Fri Mar 24 17:19:34 2000 From: alex@extreme-net.org (Alex) Date: Fri, 24 Mar 2000 18:19:34 +0100 Subject: [Pythonmac-SIG] Doc cgi python Message-ID: Hello, How execute a script cgi python with WebStar ? Or where I can find documentation on the cgi with python ? From rbl@hal.cwru.edu Fri Mar 24 17:20:12 2000 From: rbl@hal.cwru.edu (Robin B. Lake) Date: Fri, 24 Mar 2000 12:20:12 -0500 (EST) Subject: [Pythonmac-SIG] Doc cgi python Message-ID: <200003241720.MAA23536@hal.epbi.cwru.edu> > Subject: [Pythonmac-SIG] Doc cgi python > > Hello, > > How execute a script cgi python with WebStar ? > Or where I can find documentation on the cgi with python ? > > Internet Programming with Python Aaron Watters, Guido van Rossum, James C. Ahlstrom M&T Books 1996 ISBN 1-55851-484-8 Rob Lake rbl@hal.cwru.edu From just@letterror.com Fri Mar 24 17:31:31 2000 From: just@letterror.com (Just van Rossum) Date: Fri, 24 Mar 2000 18:31:31 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: <200003241720.MAA23536@hal.epbi.cwru.edu> Message-ID: At 12:20 PM -0500 24-03-2000, Robin B. Lake wrote: >> Subject: [Pythonmac-SIG] Doc cgi python >> >> Hello, >> >> How execute a script cgi python with WebStar ? >> Or where I can find documentation on the cgi with python ? >> >> >Internet Programming with Python >Aaron Watters, Guido van Rossum, James C. Ahlstrom >M&T Books >1996 >ISBN 1-55851-484-8 I don't think that book answers how to do it on a Mac, under WebStar... Last time I looked, CGI parameters are handled to the CGI program as AppleEvents. Anyone out there successfully using Python CGI under WebStar? I once wrote a simple long-running Python server, which would receive AE's from the web server, and then execute .py scripts. Never used in a real application, but maybe that apporach could still work; it saves a lot of startup overhead. It's a shame noone had the time yet to implement a compatibility layer to be able to use straight unix CGI's... Just From kantel@mpiwg-berlin.mpg.de Fri Mar 24 17:49:54 2000 From: kantel@mpiwg-berlin.mpg.de (=?iso-8859-1?Q?J=F6rg?= Kantel) Date: Fri, 24 Mar 2000 18:49:54 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: <200003241720.MAA23536@hal.epbi.cwru.edu> References: <200003241720.MAA23536@hal.epbi.cwru.edu> Message-ID: --============_-1258202300==_ma============ Content-Type: text/plain; charset="us-ascii" ; format="flowed" > > How execute a script cgi python with WebStar ? > > Or where I can find documentation on the cgi with python ? > > > > >Internet Programming with Python >Aaron Watters, Guido van Rossum, James C. Ahlstrom O no. Sure that is a nice book but all the programs there will never work with WebStar :o( WebStar has it's own way to communicate via Apple Event (wwwSdoc) to the CGI and it has become the standard way on the Mac. That means all Webserver on the Mac do it this way. Unfortunately there exist no wrapper-classes for MacPython (unlike MacPerl) and so you have to program your stuff by yourself. There is one example shipped with the MacPython standard-distribution in the folder "cgi" in the folder "Demo" in the folder "Mac" ;o). This example is using the MiniAEFrame. But unfortunately by my try it runs only the first time - by a second call it forced my Mac to freeze. My answer is: Sorry, there is no way to execute a Python CGIs with Webstar and any other Mac Webserver. That's not really exact, you can do it with WebTen (that's an Apache port on the Mac). But to do that you have first to compile a BSD Python within MachTen (that's an UN*X for the Mac, both programs are from Tenon: http://www.tenon.com/) and than to transfer the libs (you can't run MachTen and WebTen on the same machine) to the WebTen folder (it worked - I've tested it ;o) but it's a hard way and I stopped any further investigations. At the moment I do all my CGIs with Frontier (you can use the free version 5.01, availabel at http://www.scripting.com/frontier5/downloads/default.html) and sometimes AppleScript. For target machines which are not Macintosh boxes I use MacPerl (http://www.iis.ee.ethz.ch/~neeri/macintosh/perl.html) on my Mac. It has the above mentioned wrapper classes that transform the Apple way of communicating to a cgi to the Unix-way. So you can program and test your CGI's on the Mac and run it on Unix. That's my five cents (and pls excuse my bad (d)english) HTH J"org -- ---------------------------------------------------------------------- ---------------- J"org Kantel Max Planck Institute for the History of Science Computer Department http://www.mpiwg-berlin.mpg.de/staff/kantel/kantel.html Wilhelmstr.44 email: kantel@mpiwg-berlin.mpg.de email private: joerg@kantel.de D-10117 Berlin phone: +4930-22667-220 fax: +4930-22667-299 ---------------------------------------------------------------------- ---------------- --============_-1258202300==_ma============ Content-Type: text/enriched; charset="us-ascii" Content-Transfer-Encoding: quoted-printable > How execute a script cgi python with WebStar ? > Or where I can find documentation on the cgi with python ?=20 >=20 > Internet Programming with Python Aaron Watters, Guido van Rossum, James C. Ahlstrom O no. Sure that is a nice book but all the programs there will never work with WebStar :o( WebStar has it's own way to communicate via Apple Event (wwwSdoc) to the CGI and it has become the standard way on the Mac. That means all Webserver on the Mac do it this way. Unfortunately there exist no wrapper-classes for MacPython (unlike MacPerl) and so you have to program your stuff by yourself. There is one example shipped with the MacPython standard-distribution in the folder "cgi" in the folder "Demo" in the folder "Mac" ;o). This example is using the MiniAEFrame. But unfortunately by my try it runs only the first time - by a second call it forced my Mac to freeze. My answer is: Sorry, there is no way to execute a Python CGIs with Webstar and any other Mac Webserver. That's not really exact, you can do it with WebTen (that's an Apache port on the Mac). But to do that you have first to compile a BSD Python within MachTen (that's an UN*X for the Mac, both programs are from Tenon: http://www.tenon.com/) and than to transfer the libs (you can't run MachTen and WebTen on the same machine) to the WebTen folder (it worked - I've tested it ;o) but it's a hard way and I stopped any further investigations. At the moment I do all my CGIs with Frontier (you can use the free version 5.01, availabel at Verdana6666,0000,0000http://www.scripting.com/frontier5/downloads/default.html= ) and sometimes AppleScript. For target machines which are not Macintosh boxes I use MacPerl (Verdana6666,0000,0000http://www.iis.ee.ethz.ch/~neeri/macintosh/perl.html) on my Mac. It has the above mentioned wrapper classes that transform the Apple way of communicating to a cgi to the Unix-way. So you can program and test your CGI's on the Mac and run it on Unix. That's my five cents (and pls excuse my bad (d)english) HTH J"org -- ----------------------------------------------------------------------------= ---------- J"org Kantel Max Planck Institute for the History of Science Computer Department http://www.mpiwg-berlin.mpg.de/staff/kantel/kantel.html Wilhelmstr.44 email: kantel@mpiwg-berlin.mpg.de email private: joerg@kantel.= de D-10117 Berlin phone: +4930-22667-220 fax: +4930-22667-299 ----------------------------------------------------------------------------= ---------- --============_-1258202300==_ma============-- From just@letterror.com Fri Mar 24 19:40:04 2000 From: just@letterror.com (Just van Rossum) Date: Fri, 24 Mar 2000 20:40:04 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: References: <200003241720.MAA23536@hal.epbi.cwru.edu> <200003241720.MAA23536@hal.epbi.cwru.edu> Message-ID: At 6:49 PM +0100 24-03-2000, J=F6rg Kantel wrote: >My answer is: Sorry, there is no way to execute a Python CGIs with >Webstar and any other Mac Webserver. That's a bit too strong... It *is* possible, but there is no unix-cgi wrapper, and the :Mac:Demo:cgi: stuff seems indeed badly broken. It crashes with a NameError: MacOS, which isn't imported. Maybe I'll play with it some more, but I can't promise anything since I don't have a Mac web server around at the moment. Just From jack@oratrix.nl Fri Mar 24 23:02:23 2000 From: jack@oratrix.nl (Jack Jansen) Date: Sat, 25 Mar 2000 00:02:23 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: Message by =?iso-8859-1?Q?J=F6rg?= Kantel , Fri, 24 Mar 2000 18:49:54 +0100 , Message-ID: <20000324230228.A4A17D720A@oratrix.oratrix.nl> Something that would be nice to have, and doable for simple cases (see below) is a wrapper that is implemented with MiniAEFrame but exports an interface similar to what Unix and Windows CGI scripts get. The WebStar/MacOS way of doing things is superior from a design point of view, with the cgi-request coming in as an AppleEvent and the result going back as the reply to that AppleEvent, but with 90% of the CGI scripts being written for Unix I guess we'll have to adapt. The good news is that in Python we can do so with relatively little pain. With StringIO objects for sys.stdin and sys.stdout and a sys.environ setup to match what Unix CGI scripts get we're all set to execute Python CGI scripts that expect the unix way of things. A nice added advantage, if things are setup right, is that the long-running server advantage Just sketches is automatically available, where under Unix this requires a completely different structure of your CGI scripts. This will however only be really easy for the simple case: AppleEvent replies can be at most 32Kb. WebStar has special measures for handling larger replies, whereby AppleEvents go the other way. I think, however, that this is difficult to implement in Python with the current AppleEvent implementation, because it breaks the pure RPC model through which MiniAEFrame works. It may be doable with a bit more work and/or with multiple threads, though. All that said, I'm not going to do the implementation work because I don't have the time and no real application for it. But, as always, I'm more than willing to give advise, and I'll graceously accept donated code:-) -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From jwblist@olympus.net Sat Mar 25 01:56:25 2000 From: jwblist@olympus.net (John W Baxter) Date: Fri, 24 Mar 2000 17:56:25 -0800 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: <20000324230228.A4A17D720A@oratrix.oratrix.nl> References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: At 0:02 +0100 3/25/2000, Jack Jansen wrote: >This will however only be really easy for the simple case: AppleEvent >replies can be at most 32Kb. This hasn't been true of generic Apple events for years now. However, it *is* still true of the WebStar (et al) interface, because of code in WebStar. (The retention of the code in WebStar probably does make sense.) --John -- John Baxter jwblist@olympus.net Port Ludlow, WA, USA From just@letterror.com Sat Mar 25 10:34:07 2000 From: just@letterror.com (Just van Rossum) Date: Sat, 25 Mar 2000 11:34:07 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: At 5:56 PM -0800 24-03-2000, John W Baxter wrote: >At 0:02 +0100 3/25/2000, Jack Jansen wrote: >>This will however only be really easy for the simple case: AppleEvent >>replies can be at most 32Kb. > >This hasn't been true of generic Apple events for years now. However, it >*is* still true of the WebStar (et al) interface, because of code in >WebStar. (The retention of the code in WebStar probably does make sense.) So the question is: how did MacPerl solve this? Just From just@letterror.com Sat Mar 25 10:44:10 2000 From: just@letterror.com (Just van Rossum) Date: Sat, 25 Mar 2000 11:44:10 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: --============_-1258141439==_============ Content-Type: text/plain; charset="us-ascii" I found my old attempt to run Python CGI's under a Mac web server; attached as a stuffit file. It's quite old and rusty, but it does at least start up under Python 1.5.2... This program is supposed to be a long running applet, which will execute Python scripts when told to. If the AE's it supports are indeed the standard ones, it might even work with WebStar out of the box. The Web server should be configured to handle *.py files over to pythoncgislave.py. The CGI arguments will be available as a global variable 'args' in the Python script. Oh, I just notice that the pythoncgislave.py applet should live in the root html folder; I guess it should be modified to be more versatile. Hack away! (Erik: do you know if you have a newer version of pythoncgislave.py around? After all you're the one who used it the most...) Just --============_-1258141439==_============ Content-Type: application/mac-binhex40; name="pythoncgislave.py.sit" Content-Disposition: attachment; filename="pythoncgislave.py.sit" (This file must be converted with BinHex 4.0) :&A"jG'K[EQ0RDA0XBACP,R"j,R0TG!"6594%8dP8)3%!!!!&3!!!!!#`c90*9#% !!3!!"8"b6'&e!J!!!!!@EhX0$4&`HA4SEfjMCfPcE'&fC5j`HH4+!!!!J!!!!!! )dJIZ-&B*KJ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!2rrrrp849K88(PdD!%!Vf- *IV)"`3!!!!'2!!!(e`!!!18!!!29ri[+J3!!!!!!!&Z@%3!)('a`#')YhM+,5jV C1-lVcC3mLT[K'[&aAN&PPQ#B"'@Kk&#CaPP+DL3cR3bL[ZK3Al"p+*!!RT@D5B@ [hKi!!5+NBjRMY$Rj2S`Qe-T@b*ie2RUCjA')p%ZR%8NcF%SkbFc%&A%'G@UhCcV H,63pfMmV(IIR!QH3!)%4PSUPMN2[b6k[2ME$UUdb[3lYSqNd48BiUqaae+hha-i NIINFqE))#r2"rAJ@#fG@GN`3UDa*X5EY6Yl@a"J!CeEVQ2LEEjTDqa4(S9$E1Bb hp!JkQJLMXZIRlhTT8S(XBR)QPG*CXXm##NjAmRL#$'"#McbqDJh2ST(MK*1MK&0 1EL@F8(k%NQFCiC3m*Fq5i!R!#K$`kXN2IeiFi1Z5--)*qK%,9!dSBG%MamL%$mL -%c6aPD`+C)21cXlk8fbFeE8*V6S`AG+@1Q00TeVk+8NTX$q`Tlhcp0d2Ga5d0hd -"GKCCVVHq8K[PAjhRjh6A350Zd$"G4a0ai'fYhQJQL1e,N3bHcSb9FlQ%9m8'a- +![K("r,J@3!L)[b&D0U@SKqib*,"iYDUAF[E[Jp(%h@c[Vbk@#*`BAi*d4YEckr hkIAZhD)q,D$SPHDGdVpP@9NLiQ#F,8ZkSIa0FC9RL'9[UUTPJYX'X6"CISbd-h$ KU231SHeB)qU3!04*d-6B8f8mkqMm56T"pF""##VPRq*9IGp+*m`"E'-62T'6Kdp iQ$fkSDhJP0LkS8B5MSlH4,k'I%cK"[%A[BT0!E49(Dm4Fk&mIAMrj3GdT"66SqF 'FBdmP&)IUr9&pTH(&bTml,hVk#hQBA[l[3H#TLCYEqr65'a'-C!!4UZ)1Q@CEKA #ah#NI9Rr6EUicPECUZ)pP5@8X5cAJGZpb&B[U1+C!-$XkV05[JYM3e4YUlK4&Rh fkeca)HBEbKhLaAHLZ*jYLIIrX,m24Vi64Glq46im22cbjZZ[K"SUTfFU"RG##,[ (4NA+2D[U915,B"TR@YEjM,j!2CDT!ZJFBk&M'QICA*MVc'8[J"!C&P"K@iGLcUF e1a6piapceb5me*80[AU&[3LTEdZZ%A$`VQEFA*(2b"iYaqH)H3Th!XQX#1S&L9@ p)APrR`GYZra$#P3lLi3M$GBm*V)-AUGdHS-AcdLKHTj,#AMb-mjrmDXcGMfp"8a (A)rir(9qJDrV229Z4-l$PjKT$FI)"(&12l0h3d5eBS9[3V$ba0iANe4+-LS3ddQ '@Y)r*ILaB8X9liDk"QC$1cL`b%a9"f`VVTP8AB9,`q,LkVfV"Ke6AG&hXBY!-H@ MGmMqP)MM6hSmcZG1-6pJheHVk%r511545pebA$3iV4!83M!5JX**3RAVGJMKS,a CNKQTFTimhAk&h(QGU4XjIkKhBI53!-i5e6mK1lPX&"h4#Ga,%%Jhj&`LT691ST( DS%)iDTk0GZK"ba[**A&$)cG388Jc9[c)HQpDRKVpFFcd1Lh**KPCVA)X(56ck#f bXT66TLbKa9ZR$'B8QlbSa9G5LcI-*(j5)(l8h-I8S@QV[m%1I5Y6MA*0Cf54T#9 BUA3,kI@-qUHf8p[6JUimam&E`V[FD!I9$Ja$fA)&h$bG8aH,UT!!,&[RHQMq"`! !!!CV!!!!: --============_-1258141439==_============-- From just@letterror.com Sat Mar 25 13:49:51 2000 From: just@letterror.com (Just van Rossum) Date: Sat, 25 Mar 2000 14:49:51 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: Let's look at the bright side for a moment... Here's some WebStar documentation about the content of the 'sdoc' AE, which is sent to CGI handlers: http://www2.starnine.com/support/technotes.tmpl?recordnum=19980521151027&searchvalue=AppleEvent We need to map as many of these key/value pairs to compatible os.environ key/value pairs. This should be enough to get the cgi module working. Then all there is left to do is look into the >32k problem... If I understand it correctly, this is a matter of sending additional AE's back to WebStar, using the original AE's connectionID. Unfortunately the WebStar trial download is 44 megs (!) so I'm not sure if I'll be able to do much testing... Just From kaw@AbacusRT.com Sat Mar 25 22:54:52 2000 From: kaw@AbacusRT.com (Kurt Welgehausen) Date: Sat, 25 Mar 2000 16:54:52 -0600 Subject: [Pythonmac-SIG] Python CD Message-ID: <200003252254.QAA12113@AbacusRT.com> I'd like to get the latest mac-python, but the downloads are awfully big. Does anyone know what version is on the DDJ CD, or have any other suggestion? Thanks, Kurt Welgehausen From jwblist@olympus.net Sun Mar 26 04:25:22 2000 From: jwblist@olympus.net (John W Baxter) Date: Sat, 25 Mar 2000 20:25:22 -0800 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: At 14:49 +0100 3/25/2000, Just van Rossum wrote: >We need to map as many of these key/value pairs to compatible os.environ >key/value >pairs. This should be enough to get the cgi module working. Then all there >is left to do is look into the >32k problem... If I understand it >correctly, this >is a matter of sending additional AE's back to WebStar, using the original >AE's connectionID. That's the essence, but I haven't done this for many years (since a WebStar data from before StarNine days), and I don't remember the details. It was in Frontier that I was playing with it. There's a way to say "more data to come" and another way to say "this is the last of it". It was sometimes a useful protocol even for short responses: the initial response, even if totally dataless, stopped at least one timeout clock, giving one time to compute a response if one didn't otherwise have time. --John -- John Baxter jwblist@olympus.net Port Ludlow, WA, USA From just@letterror.com Sun Mar 26 13:41:31 2000 From: just@letterror.com (Just van Rossum) Date: Sun, 26 Mar 2000 14:41:31 +0100 Subject: [Pythonmac-SIG] More Mac CGI In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: I managed to install an evaluation copy of WebStar -- the "active installer" contains all neccesary files for a minimal HTTP server setup, so there's no need to download the full 44 megs. The pythoncgislave.py script I posted earlier does not work as is, because I can't find a way to make WebStar launch *.py (or whatever extension) files with a different app, like I did in the past with Quid Pro Quo. So it seems the CGI *must* be an applet under WebStar. The good news is that I managed to repair Jack's CGI demo, like so: - add the line "import MacOS" somewhere at the top of the realcgitest.py scr= ipt - drop cgitest.cgi.rsrc onto EditPython prefs, choose "Default startup options..." and check "Disable argc/argv emulation". This is essential, since if it's not checked the first AE's sent to the applet get eaten by the argv emulation code. Both changes have been checked in into the CVS repository. I now understand slightly better what MacPerl does (thanks J=F6rg) and I think we can duplicate this easily in MacPython: a CGI script needs to be wrapped in something that's *very* similar to Jack's realcgitest.py script. This could be done by an applet called "BuildCGIApplet". A .py file dropped on it will be converted to a .cgi applet. As I wrote before, the wrapper code translates as many parameters and headers from the AE to compatible os.eviron key/values as possible, and then executes the real cgi program, which will reside inside the CGI applet as bytecode in a 'PYC ' resource. Jack's demo will not quit once started; I think this is good default behavior since it saves an enormous amount of startup overhead each time the CGI gets executed. We only need to be careful with memory leaks: maybe just clearing the globals dict after the CGI has run is enough. An additional safety measure could be to add a try/except around the mainloop call, and quit upon an exception. Tracebacks should be printed to stderr, stderr needs to be redirected to a log file. Does this sound like a plan? I will try and work a little on these ideas, feedback is welcome of course. Just From kantel@mpiwg-berlin.mpg.de Sun Mar 26 16:38:19 2000 From: kantel@mpiwg-berlin.mpg.de (=?iso-8859-1?Q?J=F6rg?= Kantel) Date: Sun, 26 Mar 2000 18:38:19 +0200 Subject: [Pythonmac-SIG] More Mac CGI In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: >I managed to install an evaluation copy of WebStar -- the "active >installer" contains all neccesary files for a minimal HTTP server setup, so >there's no need to download the full 44 megs. The pythoncgislave.py script >I posted earlier does not work as is, because I can't find a way to make >WebStar launch *.py (or whatever extension) files with a different app, >like I did in the past with Quid Pro Quo. So it seems the CGI *must* be an >applet under WebStar. Hi Just - it _works_ in the same way as in QuidProQuo - I did it for Frontier behind WebStar in the past: 1. Create an alias of pythonslave.py script and rename it pythonslave.acgi. Place this alias in the cgi-bin folder of WebStar. 2. Create a new action called PYTHON with a path of :cgi-bin:pythonslave.acgi. 3. Create a new suffix mapping: map the .py suffix ton the PYTHON action. You can set file type and creator to * and mime type to text/html (you can handle your Python CGI for the proper mime type, so you can overide the default). That's the way I run Frontier behind QuidProQuo as well as behind WebStar. It should run with Python also (I hope ;o) HTH J"org -- ---------------------------------------------------------------------- ---------------- J"org Kantel Max Planck Institute for the History of Science Computer Department http://www.mpiwg-berlin.mpg.de/staff/kantel/kantel.html Wilhelmstr.44 email: kantel@mpiwg-berlin.mpg.de email private: joerg@kantel.de D-10117 Berlin phone: +4930-22667-220 fax: +4930-22667-299 ---------------------------------------------------------------------- ---------------- From just@letterror.com Sun Mar 26 20:24:39 2000 From: just@letterror.com (Just van Rossum) Date: Sun, 26 Mar 2000 21:24:39 +0100 Subject: [Pythonmac-SIG] More Mac CGI In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: At 6:38 PM +0200 26-03-2000, J=F6rg Kantel wrote: >Hi Just - it _works_ in the same way as in QuidProQuo - I did it for >Frontier behind WebStar in the past: > >1. Create an alias of pythonslave.py script and rename it >pythonslave.acgi. Place this alias in the cgi-bin folder of WebStar. >2. Create a new action called PYTHON with a path of :cgi-bin:pythonslave.ac= gi. >3. Create a new suffix mapping: map the .py suffix ton the PYTHON >action. You can set file type and creator to * and mime type to >text/html (you can handle your Python CGI for the proper mime type, >so you can overide the default). > >That's the way I run Frontier behind QuidProQuo as well as behind >WebStar. It should run with Python also (I hope ;o) Heh, I just found that out this afternoon, but thanks anyway. I had missed the entire "action" thingy. Works great. I've revamped PythonCGISlave.py, and it seems to be working nicely. Unix-CGI emulations is also pretty much done, I just need to do more tests. Or maybe I'll just post it as it is... Just From erik@letterror.com Sun Mar 26 19:29:12 2000 From: erik@letterror.com (Erik van Blokland) Date: Sun, 26 Mar 2000 21:29:12 +0200 Subject: [Pythonmac-SIG] More Mac CGI Message-ID: <200003261936.VAA22323@leidschenveen.denhaag.dataweb.net> -- Just van Rossum [3/26/00 10:24 PM]: >I've revamped PythonCGISlave.py, >and it seems to be working nicely. Unix-CGI emulations is also pretty much >done, I just need to do more tests. Or maybe I'll just post it as it is... Post it bro, I have the Mother of All Python CGI's to test it with :) Let's see if filibuster.org runs on webstar! erik -- letterror From kantel@mpiwg-berlin.mpg.de Sun Mar 26 19:44:21 2000 From: kantel@mpiwg-berlin.mpg.de (=?iso-8859-1?Q?J=F6rg?= Kantel) Date: Sun, 26 Mar 2000 21:44:21 +0200 Subject: [Pythonmac-SIG] More Mac CGI In-Reply-To: References: <20000324230228.A4A17D720A@oratrix.oratrix.nl> <20000324230228.A4A17D720A@oratrix.oratrix.nl> Message-ID: Just wrote: >Heh, I just found that out this afternoon, but thanks anyway. I had missed >the entire "action" thingy. Works great. I've revamped PythonCGISlave.py, >and it seems to be working nicely. Unix-CGI emulations is also pretty much >done, I just need to do more tests. Or maybe I'll just post it as it is... That's wonderful. I really would like to do all my CGI stuff with Python ;o). If you need a tester pls feel free to contact me. I'm able to work with a lot of different Macs (we own more than 300 here at the institute and different Mac servers (i.g. QuidProQuo, WebStar, iNet, MAChttpd, WebTen, and a few more :o). J"org -- ---------------------------------------------------------------------- ---------------- J"org Kantel Max Planck Institute for the History of Science Computer Department http://www.mpiwg-berlin.mpg.de/staff/kantel/kantel.html Wilhelmstr.44 email: kantel@mpiwg-berlin.mpg.de email private: joerg@kantel.de D-10117 Berlin phone: +4930-22667-220 fax: +4930-22667-299 ---------------------------------------------------------------------- ---------------- From just@letterror.com Sun Mar 26 20:54:50 2000 From: just@letterror.com (Just van Rossum) Date: Sun, 26 Mar 2000 21:54:50 +0100 Subject: [Pythonmac-SIG] More Mac CGI In-Reply-To: <200003261936.VAA22323@leidschenveen.denhaag.dataweb.net> Message-ID: --============_-1258018400==_============ Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable At 9:29 PM +0200 26-03-2000, Erik van Blokland wrote: >Post it bro, I have the Mother of All Python CGI's to test it with :) >Let's see if filibuster.org runs on webstar! Hm, for a brief moment I thought you meant Zope... Here it is: fire away guys! As I said, it's only been tested lightly. Erm, with cgi.py's test program that is ;-) J=F6rg, let me know it it works for you! Just --============_-1258018400==_============ Content-Type: application/mac-binhex40; name="PythonCGISlave.sit" Content-Disposition: attachment; filename="PythonCGISlave.sit" (This file must be converted with BinHex 4.0) :%P"jG'K[EN0(590XBACP,R0TG!"6594%8dP8)3%!!!!+@3!!!!#T@&0*9#%!!3! !#PPb6'&e!J!!!!!@!!!J)!j3HA4SEfj$4dP6E'&fC3!!!!!!!!!!!!!!!!!!!!! !CR%*KJ%@!#!#k`+`!!!!!J!!!!!!!!!!!!!!!!!!!)B!!!)3rrrrr`-!Y33fMl8 %0T8!!!!!!!!4%!!!!!!!!!R6rr$rq!!!`d!!!064$3d48(PdD'pZ3dG*8faKGQ8 ZF(N!!!!!!!!!!!!!!!!!!#fH#BB!!!!!!!!!!!!!!!!!!!!@!!!)X!!!!"Errrr r9%9B9&"TC'8"!+pM#Ake"#rG!!!#"`!!$FF!!!%Y!!!'MA"dM6S!!!!!!!"fba% !#"cm!iFJeZ)YXlLNQBhM[0j-bD1i'Di4(qF99'B*KNP3&JS-P@QFY@lE2TK1"P& IG'K%8PcA9lY+90+-IY3$SD5HS8!N6"%Sjl&1iqp$+GkY!H+Z"[$NU[(4bbb23k4 I1R@+EF-Tk53c%eI%'G5ThClTH,I3p'MrV(6FR`ZF33C'@#U@1Jkp*rZmqYJJ[lG 9CLk(XK*pN@'dXXI4YXCUJTI4PmmKRCc*6#UPdl@[XVEf&A#)H3N0R2%D3F)b)hV FV9k(c)[4LL((LG(MXJJ,mm(pH"B,CrIBqVBQ1-,@2Ch3V5mijI[b1[,f,0D(C2E *)"'@(BqpqQJk6C%4cV)hqR6F6&)kriMj'rU-DM6185M8eMZY#cUD#+1b$j!![fq IF)(X+H4CUdi#!!!!#diTH6a""M$"-m,*+Ude2+IF##HF(#@hmL18d*0&Md[S'9q I4EQ%FNV`")$Lcr8m*[k0!Ac95MMK"2f)"DVVkA0kr#6()mHIc$K"drE`"q`-)!c $Lkh09AhdrHQL&"XC0e[Dfb-2)T2USV&NT0j)6E)@0f94VhXd1+QY-b![jFh##Kd (`@PYV#M,J'L28Lf&P54U%Ne65NYUe9%rU(9-65P556B(Q@FbUT*hZG55LYVK1S@ d8L8%1p)1HCK9Z)"h2!LQ@Yj4+&*EU$S%$)C3BHRLhI*NGSjl@D5hc!dC41&4VT5 4)GfdeX*98@F`[*3Tr'TeCdMX&+m9@8@,GV8U2Y)CN!!)JhQ@E6`k[RJh*VYY*#f R2bml$UAT*6*bSZlBMMZPE`edpGC'J#ZiSL%YT6Yjdq9ZPqi+''JNM%'@$YQ3!1P 'eTE0H-S6e+bJ3SSdI`bTPKpDD@a-CmTBA%Zj%D"RD#1dU+59fT!!30UXZ*8eVE5 U)-@PkekY#iD&[6*$pU"GQ9M@Qd+V1UCP$PiQl#TM,DdKq9'QVC8CTfHC&`"8EBQ S'(TE&arhM0f@dVNJ$&8Y2-0rSi`TENSj4JFiV"GN)%l!!mdHhqR#@ZKYP,DST#f CA,9P4M@#*8V`FV6qV#DL49'MCTiLim09+dXIfX)LXlje$19#Cj!!*QV)J`$E0U5 3!-CF#ZIRkBV$+$qQXZ'D)C@Q,8,8PG+pFH1rp,+$h"LF-ShZZa(F5!U)9B&-F'- KCFpP+E9@'Rh$3B6)fMRQXb8*Z8++d4+b3T4493STcD3BdrX@SBF[U6"3$bBTEUQ 5PG,E1-!!#))A`3Zkl$*eXk8IQ"!03A0NXDh'h)c3TpH5SfC9f98%h"F9kS&5P8P ($"GMU!Q+LU2*26CE"1i[AU5jc#kiE8bd2kEphF"*1#[UiR$kQNZ)1YE$kF,ehYL $88"&+MKMJbjPqSZa'KhFAp1&1jr1"[KfB"TLeJ1U!VfR9'Q#)%NJed"KNY#%4Pr &qk-!UD"5VAdHADQkp!@3!"3ELfE4S&+0V#0')"bEUreVqTc#,UEB(D(i20`0JNb ZN!#3!"S5lH[&ST&TY$*Qpb$BdG+f'P%bi$G*)faH)`B4++(pF%Tlhcj8,&AGhJL %I!8-e2mDl)b16qI6d3&&Sq2CdGZckINbQFpQba%'ak2Lh6'SEZ'LSrValA6q,PN XjkIRhi2TA0A5%Ea*LmB4c+GRXq8d16`qRMrLcDDZ((iaRImdR5IRKfI6*haM(r% AXcNl-H"&PRN$1RdRXmA[H*2fqSlQTaI,2r8KVhR($`XAbq4XLN&hI%ra'j+6PX+ BjqD-rUi8MQ'```P0%L"YNN6BILZ'l6a6a8m-)1K9I8,bIeci+5aNMX)ZTBj'3Qi Xh"ST4"RrMS8V*-(p2eUZqjk@Erp5APjHr[,UQkqCe@3Ul9R6GG&4-(H$XV38IQD SUcr##6XefmBKI8E16AMV%T8NZ(!p*FNB@4RkF[#J%N9G+Y@J[VT%X891`jKH[N4 "ZXlcC!ber*)`S5plZMi)RbJEk1pClKhXH,JfQHPh4Uf`jbCBLfYcj5[bqVPLBB3 IUT0Z3m4DZPH)b*1k,VT'I,lJ$"f-A&j!ck9[BVl%le944k`8iA*DQ!1ISRl0Qf& b2dILrY#*Hl25(dEA6,FUY,&i8f%kc`XI4-B)Ce*P1#2$9)R2T$&L,522j@D8dp` 0JYrmPHI+VGcbk)1!'#F6Z9``cpASC,Qm5%EB+ThcEG0`R*jL!&)XQ$fH-8QiZh[ 00TMe&@$ARFf@PkB2@Hb1cM&hL3d@PMYh9Sba*m[@[HBi!QG'X@)SckE*K&8kd!k '#kUKP4f$AcYaM[L#M'ha6V+96PJhG,"piB8Mkdebr!2FXqji(a$1(KFj"([Piq& eXGm1k&*6'MQ)[KSG6MqPKheK6S$Z"H(c-1!QH%$EH*6"+&%BeH$cFa,($SD%$+L LCJA222mV&YGS2HXrh42MA5BDiBf&Kd5)A!mZTAP@k+M[0YaF8I,4NI3M&p+Z'-6 jBJE6m-XGULIXjd&iJ#`R2!G`id+bHZZl"kp"[+DGU$%0l#c2[k-iQQ'SafkI*)! kGhYl-DrM9GQD[%0pfK-$94FG(lB(R-qB#aZMZKh1)j,S"H9i4F*6$$p$ZJFYrrK jbip,rR(S$Xp8r2E$1rqlaac%+Gj@Y22P2SjrQ2#A"jd&)9Ic&er'qr4UIjpQEhk T3a30H$QhVPEFkm$cZYd0rJm0!"03HA4SEfj$4dP6E'&fC5jbFh*M!!!!!!!!!!! !!!!!3Q)*KJ!!!!!!!!!!!!!!!!!!!)B!!!RT!!!!&[rrrrpbFh*M8P0&4!%!Y33 "&l8%!mN!!!&#!!!!!!!!!-N!!!!!b&!!!!!!!!!!!$+8%3!)(-aa#++bBaM3b)" 4bFjY(*cEm%&JMZk$h,P4,"3*$*9TR,9ZfckB6JC4RmJ8+46ApG@Z)KbKcqmCTaf KB&)L!Z8mPMcqIMF@EC!!VA!9!2,ZmFTQZEGq+b0rK@h1+($MXa[(j+qqHpk5QmA &pRceaVLGiYqqXT@HKp5k)fJLF5aNA!@p9JE,5Nph1!@BNq1Z1'lRZ&[V[cUl-0Q jRFCP$lcdQU2Q3ZkC,@,2'cXcar4Cpq#X8LMFiNR683%)m+Kd0"'HQ,2X*#%K$P" jG'K[EN0(590XBACP!!!!!!!!!!!!!!!!!!!!!!!!!!Q'!4B!)!,V!V!!!!!"!!! )X!!!!!!!!!!@!!!!KJ!!!K$rrrrr!`#e"$D2Y33fP3!!!!!!!"%3!!!!!!!!#@2 rm2ri!!$$3!!!50j-`3!!: --============_-1258018400==_============-- From just@letterror.com Sun Mar 26 22:06:53 2000 From: just@letterror.com (Just van Rossum) Date: Sun, 26 Mar 2000 23:06:53 +0100 Subject: [Pythonmac-SIG] PythonCGISlave update In-Reply-To: References: <200003261936.VAA22323@leidschenveen.denhaag.dataweb.net> Message-ID: --============_-1258014077==_============ Content-Type: text/plain; charset="us-ascii" Here's a bugfix: I assigned to os.environ instead of modifying the dict in place. This screwed up cgi.py which keeps a reference to os.environ in a default arg... Just --============_-1258014077==_============ Content-Type: application/mac-binhex40; name="PythonCGISlave.sit" Content-Disposition: attachment; filename="PythonCGISlave.sit" (This file must be converted with BinHex 4.0) :%P"jG'K[EN0(590XBACP,R0TG!"6594%8dP8)3%!!!!+N3!!!!#Bc90*9#%!!3! !#T&b6'&e!J!!!!!@!!!J)!j3HA4SEfj$4dP6E'&fC3!!!!!!!!!!!!!!!!!!!!! !CR%*KJ%@!#!#k`+`!!!!!J!!!!!!!!!!!!!!!!!!!)B!!!)3rrrrr`-!Y33fMlb *&Gi!!!!!!!!4Q3!!!!!!!!S,rr$rq!!!`d!!!+Fh$3d48(PdD'pZ3dG*8faKGQ8 ZF(N!!!!!!!!!!!!!!!!!!#fH#BB!!!!!!!!!!!!!!!!!!!!@!!!)k!!!!"Errrr r9%9B9&"TC'8"!+pM#Ake"%IH!!!#"`!!$P!!!!%Y!!!'a5V9'6`!!!!!!!$`d"% !#"cm!iFJeZ)YXlLNQBhM[0j-bD1i'Di4(qF99'B*KNP3&JS-P@QFY@lE2TK1"P& IG'K%8PcA9jYP5TV4MhSJP03c&)L%+3,P20BTqGTH1cA&Zc9!rJ#!*eH0MejQH4` LrG+T8f`E6NNRQCQi)XkJ6Zhf6-HlKDC(qfHPirjFi!`b--*5XG4ak$hCjpA(*[Q pV6*c1C59k)X-Sj8pMVBe9K1mM,jm$ZRN6'C5+CfZIC@eYDq!3ma,D1#-e`J5PKR 4mfle1Q4HM&B-18k-(TG&@*J2lXHc@$LlapDh0F%4YZlTK'jp`5RIPpH4YfHa2L5 c6`D*X1ail09(dfQ+M(#@[9&qMTQNG2i4mcId'G8bd9%Se0BlV3XkQJLMXNq3!(r SM1N&XUH3!'HY1JN!!!Y1+ANm33B``62#b@UX06bRh5DEE(+-E0SQP$$a,0f-V0P HRffk'D'F%M`"S2Kc2Bp6r"X$q1SNQh##IX3#eI@88dj[+lPpj2D6f5E$6C!!`PH b+Y#X-!`[pVC3cE[[ceD9f-QihG2K)AN3Q8bAV58Mp8jUNSfiUFTQ1k$"59f6!hN TEeC@k$J)cKTM498&4)H8D5QX*0'3!'ME5PT5QjlkCl@1UDe%*XN@)20-4YAbVT! !@P,C1&b[N!!fUS*J4pSM6r)D,q#GMB+TNAF8LXb@UJN"Jb&8@VVi[2k`1-Gl9@D hc!dC41'l3LNM3lVTV)@VSXPKH#8cq0AThT!!f#RH+V++9YeQ8pl6(%L%`6c,0Ki GAhbHNGfhNYE*hpBpKp,d%KRjS1lBMMZPE`ed$GC'J#ZiSL%YScYjdqGZ5RFP$$3 5aL",*fa)XT10C61HmJ3e'kL3!#)V(N1UjCG1'K[6A"Q,edVZ"1JCfJSYDQQP0L5 3!$BVEQ9$'keU5((THP$VJQ&KVmb42@KA*TE0VY5UL@PGJ*F*qmVB5QY)hXZXXc, Rp+b,%S#kUa!93jqDm[l3f(dPR3[#80h"-hbhbTMbTT)cG)$$HN%'iJ3md1caR5k YKGj@DBY+fT-T9&IPe#"BSJ)[4q[ADL*DP3eUjLNb2Pb0X[5P+bdbke[(8#&d$QQ LJ6`)X&e,#QNXT("qRQdiM2)qNbhA$+NXka#L[T3HM*[p8bmlb)h"+G2S[K["MD5 !f*6)"$F@8[CFPP*VTG%h(%5)E*aM2PZ5N!!VT"JY)@Y%'9@PN!$5A)SCrGJKp2! P%`EU`56&,G@b9RSI"aJ!3I!LH%'AIDCZp[4R*N4$d"*Cl1SC0b2dkDhNU&P9p48 "pd@0HU"-jG)4`m8BDS+bjQKbMbe@JIZ+9eNKm`YZ'a-GcHKS'MJ*ml)T6j,hA%, 8XjiN+pGl-`p'!C@Ci)b0ZT3CASc9k1$K09Zjjl2�q26'2-"N"GS[H8UN`3T#R N'LK-8cUQbHrL9j-!UD"+EAdHADQkp!@3!"3ELfE4S&+YE#*')"blUk0VqTE#2UE B(D(i0T`'35ih5%J$LIEpDYA+,0SB-hd6('KT1idS'I#EY"@fD"#$#*63IT,3iGZ I+jEUIQm%3Vi'"ZVr(Ka-6Xq@bH304C26aEY2mq4mR5iALr8%Jq04mA3'UPZik+M qmLPCINjAkqACqIGJ1PH0G!3IXl*e"-YN[PJRkFRTkI)4EhC0lI#VC2RAC*QHRmb 6*haV(r%ALb8l-H*&RRX$HRdI&UYIm#BEp,eERPfXIp@(["Bp2baFVG0jJN&hqN$ a%j+69F+BjqD-rPdT(-2JJ"1DTN$D0)f`r6B-1hLQLTmB3$#SqSVNllMd8eM)!S9 G54e0K0aCZ$94L$+q(3YA5)Vhrp&bh3qdr2CIbX[,bapHrq(hc'TbP3fXfEEX+CL l49PD#Vmae0FIi3Nl0Gr()Ae$cNeika+9TRMKHNV6'E)bpZAS35h+TP+U4AheL@+ ,R)BC[Ab*JR5GjmNBD[Q5F%b["VSK#&mT@qJI@"iFl(Qi0TRT&dDYX1H1X4DhjXT Aj29caF))2e52q`d4DqQZ%*%RG9edMIKmaaPk-h&j!6fA[SRj*Ij4P8h%5K%ZTi8 jm&FflhNc($r-NAKik-9ph1J[NfZQfj6D@0a8Q-lc`JH4-m+C9"[1b$K9iVNd4Qa Pj,RFM(+Dr5"i@!XH%QIBHYS*BDdB-EGbce-3XQ)mQFLPKDQZ*Kr@kiYdJJA6jk& V@`lC8cK!LPecb1-Q$DI6DcE(E+m!Zql0Yl`rII4LpqMNZjIBB(Hjjpk+'9CQeEN EMb0`CT3EK[+B1MjQP3jdJ$Q$`ZKNcq!h8&`Je#"M@lb6E+86eXmI,'*iiFJ'Nac r#2HX"pi(4(E!43l"A[PiH&hXY`1ke&4'MU+[*LI*er5`,m`*d)-JlKk-%S94$D5 INhMXBFM#L#SjarrJq9HaZ%BE@2r626(Z-Y%%0aBH%L%5h2Z4Pfl1pXf'9eH6r-J -`'8&3"(c$%SG%jB(iX+$IS$fD"l%8(6&,*`keQ0D[[*KYiE$P!MI)1%T6`Hmr33 DUrHqNA!jiZAY,*M4b-i+rFePk!S@#`3@f%C&8kk02lkPeGkJ6j,ldY0!9MrqBlG j8K#ka)bC`@D20e9RLJ(fGDAJTpP5hTT%,kM!X3NA'lj@ZVZA[j(HmJh+hj!!lR$ 0iK-4R`2qp&3B6NM)MI[GUrL)AKmGdH,M$df)rN$#1D5Z,C`C)q[r5FI!2%f!-EF DjarXiXFmMqh5Pp0cSIKZiQhPVaCkKl(p2,1R`@m0!"03HA4SEfj$4dP6E'&fC5j bFh*M!!!!!!!!!!!!!!!!3Q)*KJ!!!!!!!!!!!!!!!!!!!)B!!!SK!!!!&[rrrrp bFh*M8P0&4!%!Y33"&l8%!mN!!!&#!!!!!!!!!-N!!!!!b&!!!!!!!!!!!-X5%3! )(-aa#++bBaM3b)"4bFjY(*cEm%&JMZk$h,P4,"3*$*9TR,9ZfckB6JC4RmJ8+46 ApG@Z)KbKcqmCTafKB&)L!Z8mPMcqIMF@EC!!VA!9!2,ZmFTQZEGq+b0rK@h1+($ MXa[(j+qqHpk5QmA&pRceaVLGiYqqXT@HKp5k)fJLF5aNA!@p9JE,5Nph1!@BNq1 Z1'lRZ&[V[cUl-0QjRFCP$lcdQU2Q3ZkC,@,2'cXcar4Cpq#X8LMFiNR683%)m+K d0"'HQ,2X*#%K$P"jG'K[EN0(590XBACP!!!!!!!!!!!!!!!!!!!!!!!!!!Q'!4B !)!,V!V!!!!!"!!!)k!!!!!!!!!!@!!!!KJ!!!K$rrrrr!`#e"$D2[)N9hJ!!!!! !!"'C!!!!!!!!#C[rm2ri!!$$3!!!QQN1e3!!: --============_-1258014077==_============-- From jimholliman@heartsoft.com Sun Mar 26 22:48:01 2000 From: jimholliman@heartsoft.com (Jim Holliman) Date: Sun, 26 Mar 2000 16:48:01 -0600 Subject: [Pythonmac-SIG] IDE Color Message-ID: <1258011495-17428839@heartsoft.com> I'ld like some advice about coxing PyColorEditor.py into working with the MacPython IDE, or is it a stand alone app? Thanks From just@letterror.com Mon Mar 27 00:10:11 2000 From: just@letterror.com (Just van Rossum) Date: Mon, 27 Mar 2000 01:10:11 +0100 Subject: [Pythonmac-SIG] IDE Color In-Reply-To: <1258011495-17428839@heartsoft.com> Message-ID: At 4:48 PM -0600 26-03-2000, Jim Holliman wrote: >I'ld like some advice about coxing PyColorEditor.py into working with the >MacPython IDE, or is it a stand alone app? Erm, it's a work in progress, started by me and much enhanced by Joe Strout. It's still waiting to be incorporated into the IDE itself... Which is my fault entirely. It's not a standalone app. Maybe I'll look into it again, but for now it's not very high on my todo list. Sorry! Just From kelvin.chu@uvm.edu Sun Mar 26 23:29:47 2000 From: kelvin.chu@uvm.edu (Kelvin Chu) Date: Sun, 26 Mar 2000 18:29:47 -0500 Subject: [Pythonmac-SIG] RE: Macintosh TCL/Tk rooted Python GUIs. Message-ID: <20000326182947.A12271@chipotle.physics.uvm.edu> I promised that I would summarize and do so now. Tk/TCL from scriptics works just fine on the Mac, and PMW runs well on top of it. I initially had some problems because Stuffit Expander wasn't Mac-ifying the carriage returns from the Unix source code (I dont remember resetting this), but the PMW demos work, and my GUI code works, too. Life isn't so bad after all, I think. Cheers, thanks for all your help! -k -- kelvin.chu@uvm.edu (802) 656-0064 http://www.uvm.edu/~kchu/ FAX: (802) 656-0817 From dgreen@rewindtech.com Mon Mar 27 03:51:25 2000 From: dgreen@rewindtech.com (Dan Green) Date: Sun, 26 Mar 2000 22:51:25 -0500 Subject: [Pythonmac-SIG] RE: Macintosh TCL/Tk rooted Python GUIs. In-Reply-To: <20000326182947.A12271@chipotle.physics.uvm.edu>; from kelvin.chu@uvm.edu on Sun, Mar 26, 2000 at 06:29:47PM -0500 References: <20000326182947.A12271@chipotle.physics.uvm.edu> Message-ID: <20000326225125.A25235@brainy.rewindtech.com> On Sun, Mar 26, 2000 at 06:29:47PM -0500, Kelvin Chu wrote: > I promised that I would summarize and do so now. Tk/TCL from scriptics > works just fine on the Mac, and PMW runs well on top of it. I initially had > some problems because Stuffit Expander wasn't Mac-ifying the carriage returns > from the Unix source code (I dont remember resetting this), but the PMW > demos work, and my GUI code works, too. > > Life isn't so bad after all, I think. > > Cheers, thanks for all your help! > > -k > > -- > > kelvin.chu@uvm.edu (802) 656-0064 > http://www.uvm.edu/~kchu/ FAX: (802) 656-0817 Excellent! How about a binary distribution now? :) -- Dan Green | "Are you satisfiiiieeeed-ah?" Developer | "Huh! Yeah-ee-yeah!" Rewind Technologies | -- James Hetfield, "King Nothing" From pf@artcom-gmbh.de Mon Mar 27 05:46:02 2000 From: pf@artcom-gmbh.de (Peter Funk) Date: Mon, 27 Mar 2000 07:46:02 +0200 (MEST) Subject: [Pythonmac-SIG] RE: Macintosh TCL/Tk rooted Python GUIs. In-Reply-To: <20000326182947.A12271@chipotle.physics.uvm.edu> from Kelvin Chu at "Mar 26, 2000 6:29:47 pm" Message-ID: Hi! Kelvin Chu: > I promised that I would summarize and do so now. Tk/TCL from scriptics > works just fine on the Mac, and PMW runs well on top of it. I initially had > some problems because Stuffit Expander wasn't Mac-ifying the carriage returns > from the Unix source code (I dont remember resetting this), but the PMW > demos work, and my GUI code works, too. > > Life isn't so bad after all, I think. That are really exciting good news! Have you tried to run the test suite, that comes with Pmw 0.8.3? It is simple to start: Run Pmw:Pmw_0_8_3:tests:All.py If this works for you, it would be nice to hear, what magic spells you applied to your Mac ...err... what specific configuration you have: What MacOS version did you use? Did you use the Tcl/Tk binary libs from Scriptics instead of those coming integrated with binary installer by Jack jansen and if so, which particular version? Have you tried to use the Python Imaging Library (PIL)? (try to import Image and ImageTk)? Regards and thanks in advance, Peter -- Peter Funk, Oldenburger Str.86, D-27777 Ganderkesee, Germany, Fax:+49 4222950260 office: +49 421 20419-0 (ArtCom GmbH, Grazer Str.8, D-28359 Bremen) From jack@oratrix.nl Mon Mar 27 08:37:44 2000 From: jack@oratrix.nl (Jack Jansen) Date: Mon, 27 Mar 2000 10:37:44 +0200 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: Message by Just van Rossum , Sat, 25 Mar 2000 14:49:51 +0100 , Message-ID: <20000327083744.E786A370CF2@snelboot.oratrix.nl> I was going to post code over the weekend, but I didn't get around to it. Here's what I found in case people want to experiment more with the example cgi program in the distribution. - Adding an import MacOS will make it work again. - The Popt resource in the .rsrc file is apparently outdated, so you'll have to drop the applet on EditPythonPrefs to set the "don't do argc/argv emulation" (otherwise your first appleevent will get lost). - Personal Webserver also supports the CGI interface! This is really good news for testing, as this means everyone who has 8.5 or later (8.5 is the first system that had Personal Webserver, wasn't it?) can try it without downloading webstar or machttpd. Configuring Personal Webserver was a bit of a pain, but if you put the CGI script somewhere under your Webpages folder you can get it to work (if someone can give me exact instructions on which of the 4 action settings work I'd like to include that in the docs). -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From PClaerhout@CREO.BE Mon Mar 27 10:30:26 2000 From: PClaerhout@CREO.BE (Pieter Claerhout) Date: Mon, 27 Mar 2000 12:30:26 +0200 Subject: [Pythonmac-SIG] Getting data out of FileMaker fast Message-ID: <2B1262E83448D211AE4B00A0C9D61B03BA7208@MSGEURO1> Hello all, what is the fastest way to transfer data from FileMaker Pro on the Macintosh to Python. I made a set of databases in Filemaker, and I want to convert these to static HTML using Python, but this has to be quite fast. I tested it with the FileMaker vs Python package from LettError, but it's not fast enough for what I want to do with it. Any idea on how to speed up things? Kind regards, Pieter PClaerhout@creo.be http://chill.webhostme.com/ From erik@letterror.com Mon Mar 27 11:03:06 2000 From: erik@letterror.com (Erik van Blokland) Date: Mon, 27 Mar 2000 13:03:06 +0200 Subject: [Pythonmac-SIG] Getting data out of FileMaker fast Message-ID: <200003271110.NAA07783@leidschenveen.denhaag.dataweb.net> -- Pieter Claerhout [3/27/00 12:30 PM]: >what is the fastest way to transfer data from FileMaker Pro on the Macintosh >to Python. I made a set of databases in Filemaker, and I want to convert >these >to static HTML using Python, but this has to be quite fast. > >I tested it with the FileMaker vs Python package from LettError, but it's >not fast >enough for what I want to do with it. I know. But it's the appleevents that slow it down, not the LettError code ;) Have you tried the mydb.getfield('fieldname'), this returns all relevant cells (the field 'fieldname' from each record in the found set) in one go. If you select a field with the html output, you should get all html through one appleevent, rather than stepping through them one by one which is slow. If you don't have getfield, I can send you a new version of the module. >Any idea on how to speed up things? Consider exporting the contents as a tab-seperated text, then open that file in python and split it along returns and tabs. This is certainly the fastest way. If the file is *really* big, you can try reading the data line by line (record by record). If you want to make the entire process run automatically, you could use the FMPro module to execute a script in filemaker that exports the data to the a file (or write an external applescript), and then open the file in python to do the rest. cheers, erik van blokland From kelvin.chu@uvm.edu Mon Mar 27 11:37:38 2000 From: kelvin.chu@uvm.edu (Kelvin Chu) Date: Mon, 27 Mar 2000 06:37:38 -0500 Subject: [Pythonmac-SIG] RE: Macintosh TCL/Tk rooted Python GUIs In-Reply-To: ; from pf@artcom-gmbh.de on Mon, Mar 27, 2000 at 07:46:02AM +0200 References: <20000326182947.A12271@chipotle.physics.uvm.edu> Message-ID: <20000327063738.A15680@chipotle.physics.uvm.edu> > Have you tried to run the test suite, that comes with Pmw 0.8.3? > It is simple to start: Run > Pmw:Pmw_0_8_3:tests:All.py > If this works for you, it would be nice to hear, what magic spells you > applied to your Mac ...err... what specific configuration you have: > What MacOS version did you use? > Did you use the Tcl/Tk binary libs from Scriptics instead of those coming > integrated with binary installer by Jack jansen and if so, which particular > version? > Have you tried to use the Python Imaging Library (PIL)? > (try to import Image and ImageTk)? > 350MHz Imac, running OS9.0, I used the latest distribution of MacPython and got the Tk/TCL stuff from Scriptics. I haven't tried the image library, sorry. The tests (All.py) work just fine. Since my last posting, I have also gotten it working on my laptop, a 233 MHz PBG3 8.1. Now all I need is to get a set of nonlinear fitting routines running, which means understanding MPW. Do people have favorites for plotting packages for the Mac? I have the Python/Gnuplot interface running, but it would just absolutely rock if we had access to DISLIN or the ezplot routines from Numerical python? Cheers, -k -- kelvin.chu@uvm.edu (802) 656-0064 http://www.uvm.edu/~kchu/ FAX: (802) 656-0817 From erik@letterror.com Mon Mar 27 13:21:00 2000 From: erik@letterror.com (Erik van Blokland) Date: Mon, 27 Mar 2000 15:21:00 +0200 Subject: [Pythonmac-SIG] additions to findertools? Message-ID: <200003271328.PAA12104@leidschenveen.denhaag.dataweb.net> Ho; I've looked at findertools.py and discovered that there is some very useful functionality hiding underneath that only needed to be discovered. The Finder_Suite contains a bunch of methods that I need and I've interfaced them in the same way as the rest of the findertools. Especially the reveal() is useful. These three new functions work through appleevents like the rest of the findertools: def reveal(file): """Reveal a file in the finder. Specify file by name or fsspec""" def select(file): """select a file in the finder. Specify file by name or fsspec""" def update(file): """update: Update the display of the specified object(s) to match their on-disk representation. Specify file by name or fsspec""" The way findertools is structured makes it a bit awkward to subclass it and make my own seperate extended module. Perhaps a useful addition to findertools itself? The following function one works through macfs and perhaps doesn't belong in findertools because of that, but it's been useful as well. It sets the position of the icon of the file in its finder window. JvR explained to me that the macfs-way of getting and setting the position of an icon does not work for folders. So, being incomplete is perhaps another reason to not include it, but it's useful already. What to do? def location(file, pt=None): """location: set the location of a file in the finder. Specify file by name or fsspec""" I'm also looking at the suites for the os9 Finder, hoping to find some more goodies. AppleEvents supposedly work over IP as well now, maybe interesting to run that from python. But that's another can of worms. Erik From jack@oratrix.nl Mon Mar 27 13:37:56 2000 From: jack@oratrix.nl (Jack Jansen) Date: Mon, 27 Mar 2000 15:37:56 +0200 Subject: [Pythonmac-SIG] additions to findertools? In-Reply-To: Message by Erik van Blokland , Mon, 27 Mar 2000 15:21:00 +0200 , <200003271328.PAA12104@leidschenveen.denhaag.dataweb.net> Message-ID: <20000327133757.22853370CF2@snelboot.oratrix.nl> > The way findertools is structured makes it a bit awkward to subclass it > and make my own seperate extended module. Perhaps a useful addition to > findertools itself? Adding these methods to findertools is definitely the way to go, they're useful enough! Send patches to Just or me and we'll check them in. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From nika@kassube.de Mon Mar 27 14:42:21 2000 From: nika@kassube.de (Nils Kassube) Date: Mon, 27 Mar 2000 16:42:21 +0200 Subject: [Pythonmac-SIG] Python-enabled Vim binary for Mac OS Message-ID: Guten Abend. I'm looking for a Python-enabled Vim binary for Mac OS. The links on the Vim site which I tried all point to releases compiled without the +python option. TIA. Cheers, Nils -- nika@kassube.de (preferred) 4kassube@informatik.uni-hamburg.de From ita.mis@euro.apple.com Mon Mar 27 16:05:56 2000 From: ita.mis@euro.apple.com (Marco Tasselli) Date: Mon, 27 Mar 2000 17:05:56 +0100 Subject: [Pythonmac-SIG] Doc cgi python References: <200003241720.MAA23536@hal.epbi.cwru.edu> <200003241720.MAA23536@hal.epbi.cwru.edu> Message-ID: <38DF86E0.54275FD2@euro.apple.com> Just for your knowledge, I've used MacPython with WebStar for building heavy CGI like solutions running on a Mac. Those are extranet solutions where data are downloaded from a SAP R/3 machine, pushed in a database (mac native using gdbm) and served a dinamic pages. The Python WebStar solution is quite effective: the server went live a couple years ago and is exceptionally stable! In one occasion it runned for 5 month without a single reboot and has **NEVER** had a crash! Load is not bad at 100.000 queries a month (there are no static pages) and the databases are rebuilt on the fly 3 times a day. The average response time af the python application is 0.4 seconds per query. As a design choice, I used an approach that parses the incoming apple event from WebStar and does not use the standard CGI module. I know this is a drawback for portability but I choosed to go that way because I wanted to implement a procedure-calling like interface (ala Bobo). recently the package has been ported to linux by only writing a wrapper for converting the environment stream to the above mentioned procedure-calling like interface. ciao Marco Tasselli Just van Rossum wrote: > At 6:49 PM +0100 24-03-2000, Jörg Kantel wrote: > >My answer is: Sorry, there is no way to execute a Python CGIs with > >Webstar and any other Mac Webserver. > > That's a bit too strong... It *is* possible, but there is no unix-cgi > wrapper, and the :Mac:Demo:cgi: stuff seems indeed badly broken. It crashes > with a NameError: MacOS, which isn't imported. Maybe I'll play with it some > more, but I can't promise anything since I don't have a Mac web server > around at the moment. > > Just > > _______________________________________________ > Pythonmac-SIG maillist - Pythonmac-SIG@python.org > http://www.python.org/mailman/listinfo/pythonmac-sig From billb@mousa.demon.co.uk Mon Mar 27 13:50:15 2000 From: billb@mousa.demon.co.uk (Bill Bedford) Date: Mon, 27 Mar 2000 14:50:15 +0100 Subject: [Pythonmac-SIG] Getting data out of FileMaker fast In-Reply-To: <2B1262E83448D211AE4B00A0C9D61B03BA7208@MSGEURO1> References: <2B1262E83448D211AE4B00A0C9D61B03BA7208@MSGEURO1> Message-ID: At 12:30 pm +0200 27/03/00, Pieter Claerhout wrote: >Hello all, > >what is the fastest way to transfer data from FileMaker Pro on the Macintosh >to Python. I made a set of databases in Filemaker, and I want to convert these >to static HTML using Python, but this has to be quite fast. > >I tested it with the FileMaker vs Python package from LettError, but >it's not fast >enough for what I want to do with it. Any idea on how to speed up things? I haven't done this with FileMaker, but Hypercard cant be just as slow responding to Appleevents. The trick is to write a Filemaker script to do what you have to and wrap it in a 'doscript' appleevent called from python. -- Bill Bedford mailto:billb@mousa.demon.co.uk Sometimes it's better to light a flamethrower than curse the darkness. From just@letterror.com Mon Mar 27 16:55:02 2000 From: just@letterror.com (Just van Rossum) Date: Mon, 27 Mar 2000 17:55:02 +0100 Subject: [Pythonmac-SIG] Doc cgi python In-Reply-To: <38DF86E0.54275FD2@euro.apple.com> References: <200003241720.MAA23536@hal.epbi.cwru.edu> <200003241720.MAA23536@hal.epbi.cwru.edu> Message-ID: At 5:05 PM +0100 27-03-2000, Marco Tasselli wrote: >Just for your knowledge, I've used MacPython with WebStar for building heavy >CGI like solutions running on a Mac. Excellent. Thanks Marco, for the report. Alsways nice to hear success stories... Did you build upon Jack's demo? >Those are extranet solutions where data are downloaded from a SAP R/3 machine, >pushed in a database (mac native using gdbm) and served a dinamic pages. >The Python WebStar solution is quite effective: the server went live a couple >years ago and is exceptionally stable! >In one occasion it runned for 5 month without a single reboot and has >**NEVER** had a crash! Great. >Load is not bad at 100.000 queries a month (there are no static pages) Not bad, but that's not extremely heavy either: it's between 2 and 3 hits per minute on average... Just From noboru.yamamoto@kek.jp Tue Mar 28 13:37:59 2000 From: noboru.yamamoto@kek.jp (Noboru Yamamoto) Date: Tue, 28 Mar 2000 22:37:59 +0900 Subject: [Pythonmac-SIG] Re: PythonCGISlave update References: <20000327133619.986851CDA8@dinsdale.python.org> Message-ID: <38E0B579.51BF0640@kek.jp> This is a multi-part message in MIME format. --------------01D7343D254E42BD68C609FA Content-Type: text/plain; charset=iso-2022-jp Content-Transfer-Encoding: 7bit Hi, Thanks for a PythonCGIServer.py program. That is a program I wanted for a while. I added a little enhancement to the program. It now can send back data longer than 32 KB to WebStar server. It uses a mechanism to send back data to the WWW server. I have tested it with WebStar 4.0(demo version) and it should work with WebStar 3.x. An attached tar.gzipped file includes: PythonCGISlave.py # Original PythonCGISlave.py PythonCGISlave.rsrc PythonCGIServer.py # Modified version supporting . PythonCGIServer.rsrc WebStarClass.py # Defines a WebStar class to send partial data WebSTAR_Suite.py # These files are created by gensuitemodule program. W_2a_API_Suite.py Miscellaneous_Standards.py Usage of PythonCGIServer.py is same as it of PythonCGISlave.py. > > Here's a bugfix: I assigned to os.environ instead of modifying the dict in > place. This screwed up cgi.py which keeps a reference to os.environ in a > default arg... > > Just > Enjoy, Noboru Yamamoto KEKB control group KEK, JAPAN --------------01D7343D254E42BD68C609FA Content-Type: application/gzip; x-mac-type="477A6970"; x-mac-creator="477A6970"; name="PythonCGIServer.tar.gz" Content-Transfer-Encoding: base64 Content-Description: Unknown ƒhƒLƒ…ƒƒ“ƒg Content-Disposition: inline; filename="PythonCGIServer.tar.gz" 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 pd939fsXyrEN9QDIAAA= --------------01D7343D254E42BD68C609FA-- From just@letterror.com Tue Mar 28 15:54:34 2000 From: just@letterror.com (Just van Rossum) Date: Tue, 28 Mar 2000 16:54:34 +0100 Subject: [Pythonmac-SIG] Re: PythonCGISlave update In-Reply-To: <38E0B579.51BF0640@kek.jp> References: <20000327133619.986851CDA8@dinsdale.python.org> Message-ID: --============_-1257863612==_============ Content-Type: text/plain; charset="us-ascii" At 10:37 PM +0900 28-03-2000, Noboru Yamamoto wrote: >Thanks for a PythonCGIServer.py program. That is a program I wanted for >a while. >I added a little enhancement to the program. It now can send back data >longer than >32 KB to WebStar server. It uses a mechanism to send >back data to the WWW server. Very cool! Thanks. >I have tested it with WebStar 4.0(demo version) and it should work with >WebStar 3.x. I would like to incorporate the enhancements into PythonCGISlave, but I wonder: do other web servers support the same mechanism? In other words, can we turn this into something independant from WebStar? As it is now it would blow up if the CGI would try send >32k of data under *any* other server, since it explicitly start an AE connection with WebStar. I think the incoming AE contains info about the web server, so I think we should try and use that. I've appended my latest working copy, which besides PythonCGISlave now also contains BuildCGIApplet, which does what I've described earlier: it converts a CGI script to an applet, but wrapped in PythonCGISlave's compatibility layer. Just --============_-1257863612==_============ Content-Type: application/mac-binhex40; name="PythonCGIStuff.sit" Content-Disposition: attachment; filename="PythonCGIStuff.sit" (This file must be converted with BinHex 4.0) :%P"jG'K[EN0(590dG@CQ,R0TG!"6594%8dP8)3%!!!!ELJ!!!!"fB&0*9#%!!3! !'iTb6'&e!Yi!!!!@hYiJ)!j3HA4SEfj$4dP6G(9QCJ!!!!!!!!!!!!!!!!!!!!! !,qd*KJ$Q!CF#hJ1B!!!!"3!!!!!!!!!!!!!!!!!!!)B!!!)3rrrrr`-!Y3D5RE8 'NbS!!!!!!!!cU3!!!!!!!"X%rr$rq!!!`d!!!+(!$3d43R9TE'4$4dP"F("XCA3 ZF(N!!!!!!!!!!!!!!!!!!!F@#BB!!!!!!!!!!!!!!!!!!!!@!!!&e!!!!"Errrr r9%9B9&"TC'8"!,8'6S+e"T-3!!!#"`!!"jF!!!&0!!!$NH$AU9%!!!!!!!#5V4% !#"cm!iFJeSEji-`-bV)UHabe,eD6M[6qQ6'1F&NNR0QS8+ZX5(UiGG[f#G&S1T@ qk)J3AQG'K'5NdNhT53NNp3i&)Q#*3cQ1jiqphFbC[#j!!k`!!6klXKMb+3bR )'B*h[Vl@MZ1UV@(N+%J$'!l3"m()E5#-M-E"b'e"aQLYh32EH5!I,`KSj(D3!*U Gj3$Q&'N(#&E@Nc9'G11q1)GFT&IYNc`PMDB-V*aMeVVXrGj@QENFfNrkC8D'862 m9QhGULqM,jp$1MQ6Q96+#%[0V'aZ)YXK680P'QGqcRL0)''CTZT@Vd1-kUBF*dD 2bb,-ZDr02)Z&XhYXlHCdh0T!+bmjS9Z[GXVhjAANl9QX$mRXNd%L,$XHHl&,l%L 4%Fkb0pUJ%j'8cMpLiE$0EfRDf&%Se0BlV3XkQJLMX[F@cSk9"E+RN!"RV6S*!!T 19r*iJJaJXNCqP4+qRZ3SB@5dNP[*Vmb654Jj*RFPE1d)Id)*)bX"@$eJI!I!9i$ 1#-#[RA+#I[3#KEmmXKlKP%YBK"pj6K$!bC`6*(!Ii26XKm2Kqi-ffHhpahP9'3j *9G0N3VH19@"5K%05c5APcKDi@0CKCd[bUG095+*S9A'UMIk0-hTKjc9ZE8k0UpE 5Q,K8'k2,EDFYTPTp6m(5KU1$KrbKc0M4JdVTP6INfBNI-RV2p"0[9N'jK"jh61Y eSA5jAP2Pl0DTJV52@QF`YM,UK8&a6+mlRHj%id9Rl%%ZY8@PJYk!9UM*U*SGf"3 (Jk0b'cf9qMMaS6Cm!C63LTZ$pCI&r1jKNB3MSQ!GC4b80Mk*N!#K+0*&C9dJAr[ ZbrBrK8VcrK0i2kqkcbrFhbf8Vqqd-REERf`N3m&Ddep8pGUaY`HAFK4&'HI`TX[ iHKS0JU[a'M5Dk9DhQBf[S`%I8kiZCT)QQ`[R,2#h&%Aj$#"jB1r9PZ2fq[VNp3p [8$flZPZmIlUIh85$D("&(h5C88"@!aF9mX9b&12!mFK6DDQbZJbN5mPRbTa*1qJ F`DG8P5-N6!cS!(j!Hr*!X`Y&8HJZKI1V!aIdaib'hmTJ'!eJVV55bJ3GX%[iU(h `mAFT`ASfd`Rq#Q!aiJeP6YH9ie`Iac5F)Xr64`%bKBNK@UG9EX"GdGc[Ql*S-iX dS$a1*,cdCUl4HdL"'&0Zqr*m-rhDXlSF#46[d#0q6(B2,NfT*%YdFKAZ1Ac3KZ2 4LJfRi96EEB&04f-D25jqIT6hI,Rm0!+D2Jelm69`(!kZa%m1&k8U*'QYf86jYH# A)`RC)22K,&,X83IGIpapG$T[V&$JCDCFYMadY*!!Z'CFk"30M&fJ[0!5)S-ZGK[ P@h0RipIr%2bG6d[K'm5Q4@c*FGFII@c(+*j@(G9iGS`D0Cl&kK9pXVBLLfe#bTK 'll4LfLlcQ$)5*D5q*r'@m!EC[dRkMpCT'rcP#Hi4RZllHI*ZqT9Q-aUKr%C#jNb P&jP1hU'A[Pr5$c4-B"-0ffD`[lb-KVrTS@-DF'p,iK5M2a8K0UBEa1)+0aU6i&5 X5[EGmTGEkZB4)SG-3Nkij!#'UC9mVVM%ZfNIXGf[*MPqmYcG3P'5GejELBcIUKD fF80Y+)[`BIla4e3qaS#a+TX*&k`5Y%*[kYEB0eZBLMN@V#3%#eCbemeC#9mljk, r!3d!%d*eD@aN3dG*3A"`E'9d,R*cFQ-!!!!!!!!!!!!!!!"SkJQ'!!!!!!!!!!! !!!!!!!!!KJ!!"bd!!!!@rrrrrh*cFQ058d9%!3#e"!%AY3C8k`!!!@S!!!!!!!! !k3!!!!"J(3!!!!!!!!!!1fJ4!!JFR1X3a-#1B8!M!ik5!fMR0Jl1EIJJ-%Ih3Hl F+"D+Y-U+T)GEYffI%)fQ8qN6Q5*&##ibSd-c8QJQpBc6MP!`+4'"FKj,(Rqr'iX fb&E)!)#mHlbb@HkYhmV)Af'E-`VFq1c'-IQVljkhj'CaX6eI[6&ZTrLhVfbPJdL Y1i,CN9('95MSm!b@PClZF!S`*mGGFGc1FEI@Ih9fBE*c1ih,(RMT08I0KG`c@m5 H0hCQ6P62#5Ae$(@YQT)'ifV&0ibIC4fp%D(i3GXhV'9kX`YTiP(TD&,EEZHf0hI bY6QVcd0'`kh!!Jd0$N0(59p548&%688ZG(Kd,R*cFQ-!!!!!!!!!!!!!!!"pM!Q '!!!!!!!!!!!!!!!!!!!&e!!!$J-!!!!@rrrrre4&@&43D@4P!3#e"Q20Y3CT8!! !!JF!!!Z[!!!!m3!!"AAD8m!M!!!!!!!!@M%4!!JFr!1()0B#1U[T@9Ye1&JMde- [UhAEpRfk*L8NqT0mFSMd4BH+&#'ib)`1c8LKQG3$SD5HS8!N6"%Sjk8Er'l1P"X "mTi+i-Re8F26-,cIfbT6$p&2qQ9'KY(+(NIE'UX*ANCI2SGdFLBcUC34PTTC@9[ l#MLNDDK-imc2'Dm4*#`cSVYXp6TNASa@$$P1M"kA49LB$ql(XeJiZmI@0c940,R %#GekZe1q,kmMEmpLI8KQR``5BGRaf+Z2TY-8'H%XHk2G1@H5d[P(,"bfq5dYUMS +"DGEdp!H38F6B96fhX*CEjFUN!!pK6aVe8N!!!Y1'AN!JJaJ3XQ!GGiDRT-a)j3 ``PjZjj'RhFS*P4&qNKR!kJ(M8dlalh'!!68m*qK(,e"P0E"kMdci%D4aIcf"p6U !p43l1p,jcqmTM3elZY$eadZP0Td*e0TH2URY',8C!m@pT@KYMhmk(BP([HfClL+ %fKXA`aa&)3TYGH#'pVbP`2kDI9K4EkkBIZAYCG4q4EmNdq#(TE@h+rV!FHdjm"M r*1[9DqGkIKTSMF0fe,fFRA085VfaX5XiH%LpMNbI4R0$)8kJ!Ka2%9Eh[GfEF3H @!1PY#14`#[m1kSjB4Hp(#TheF3@f30pTjaM)Yj2J4q!S)I4)'FREDa!#d6%U()J Gha%Q-dC,0P3mAKX2-4T64`0kIS)ad4Y'fNYQfM,3C#k$pD`DKQ4p1),0N5MdCYI &IN+8YQ8[f9hbcJB1,p4T%4!d,hZ0Dl1@N!$LKZXNbFQfLk5,S$TVB%Ck9VQ*&&( NQdLY`Gf+0NHH3`S4X-5$eZb5Kmm!h1QaJ@Cbh[-IL8--L'(P),iq)URSJifLiRd 48%M13EMF*4@ph99,+5"(BaRbEP0mD!6jLNBE+d"rNdcI)'$f-G,HD`HXIjF4G-4 RY4fFMQCVHK-Rk[A%U"i3406D-kT$EX[4*8jRkSjUq!l`XdM!$YIe10e"K+`LLd1 [5"T4*)KY+8KE2(UT2G0hc`RPXV1f@G'Tr,A9cIF[e*2R"aYQ,8@VE1-+['RNf6Q "6+a"CQDVRTb+$XYY)C3Y1e5YQ'PJ6fkB,%&[DY$1T,,-N!$#M[p"I23-%1pac9, NG#@dI!aZiCL3!++h59T*N!$P3[Q,T9+IrJQXe)rH1TTXm[G5Bj(BadX9[BET-k8 D&J$0@ENfkS&I9[A1U,f"(Y*P@IUQSJXd&KQ8%*B0*-"pa29'aN4[SBU`JirblE[ 0CSd+UY-J"4`pFi@*Jbd6d)NcSIX9F'[!X6#"BF&8q[C651!e+@!iAUfYpea,m81 bKPZGHZ`6@&+A($LRXAH3!%cl"Md9-9P!V&,[feYP5PLFm6,0A*iF!V3e(L*'-c# k--1JXh*X0SDpYc"DS#bqh!FVGY8kBBM)0Z+EQTdSX`+YEGV"R"DY9CcEHa-"5'A 9-"mP-!UdD(mX5kA@[3CP`I5P4JY11r#q`aMk9dmkAea5Ar3-&YBr"4LRd9A,JXP U(,Vhkj!!q3QV9%CShUjj+HjNP+$GGKdmcGY@2T0G9X#8981[Qd'fL(1VSK1N'hP 2*cV[`a0m*Z@0&PKrhVclq!(rSkf[*!0QbXPjCc(i6Q384C550(AJ([9!JRDf!X0 5&*(8JD0-9Zc*8b!5P*HTE6'2,h"+2RbN%1D[Ur9RF*dFdqEYEjYb!e)m1mbPM+% J@K$2",%TV8[Z'`5PhQ(XJZhHqUZJ&$bDfrpZX"8,aDZ(!CS,"!Z`HGcIFfIR'Er J[l"S0!mYVM81b*G1Hh4CP-%T!bbLX%GU[4ebbVXdJRHAHa)QS(ccM*FEhkCmAXN cr&+$Z,eXEK6Pr)"5hL9#ITJi26a-b2`H%Z$,$-H6K-%b3UrEKcH8h*&!TNT[iT+ 2@2D6[&1N[X(bff2YiDSS99j[Y,cI(!IUCCi,CGa)FbiVQV!0NE#&'l1+aEq(XB' l8V(b)1)EE"6C[hP*B%I)f1pBbr#3!0jrh"3Lqf&cj1&`[a$)eR@5E6%lG!YqKEH )@eCCI4&!DLTk6)+YPNUdbf#CPjlkZPYbBdQB-C1Hhc@JSr!1c)0X*eRLC"V@+rT G9LP`e(La8RYFBRe&!f2EcV)r)-'F`D`@ZQL+j'6JiX)SMbM&)UQm06+J+aY-F04 dLa@rd$Z6Y+m3"c$!UX)dIbQiIN!YRVPFLB1Z6i2C[CVrVDcI[Dc8r`d0%9"jG'K [EN0(590XBACP,R"jFQ-!!!!!!!!!!!!!!!!mD!Q'!!!!!!!!!!!!!!!!!!!(,3! !'F%!!!!@rrrrre4&@&43D@4P!3#[B`PqY3CV*`!!!JF!!"Gk!!!",3!!#L(#VBL U!!!!!!!!TPF4!!JFr!1()0EL,E1iT*Q0ilcH6-QMZ"QZ%4rR&94Q#BC*8"B+$*9 TR,9ZfckB6JC4Ah5S5"'#LmcSd)`8QNNp%%VU'3T%`K5"FKlV02iqP1,G'Q#$B3# HA$8qHTRPFBMd5kF4560`5MV*c-39F3CeDVGR1YiY0$hD2bXGpqF#Cj!!J4'@LU@ 13qr*2Umq0XM[EC@Cbk'X4&pN'+hXFE5YXCVJCI6PFdJRCc+65ZPdlDZXVAd&('* H3J0R[%D3!,$-L"jhUpFKmf+dBXKaB[5i,-,#I(!rRXA#f6ff2UM*I%dqj)4Z[G) ThjIANEGRX6iNXdm'LE$XH1c94p0TLSa`PVe4PV1238VR(l&`f1Dh0#rS+"4Ukjh @"4e0K&(C"bLFlAQm32B8mUa9*`%!!!!-6PIbH))-J,e''&QPYBDRhh9N(eNh-h, VTUh-h1`mf9kIEID%2X%6!)Sreh3cI$i(q1Ll*BbJ(l&!AAf$EU%A@AM(b#DrbA0 bQb"RNdd*&8"Rq(DlrAjKChPfH(3m6Z@e#SU&jdeQL4'&cUqdR)Y)CZ*5LG+S@#5 CX$HjZ*%,dr0f40m)+4bq!!&K)Td89KLPVj8@deb,'h9C24YKbU,)Y8fb+p(Z4cE *-p2ZLM6jSX4(G6Qf8JFeTaXYLk+L))8"C+SHLAEGIEB3l5LI&fNL-pX@*c*Dd3i mEk`8JBDM3Ir9b5#`YjCajlP@)PC@*UN*2"M"mlDm,I&4*pBU5,i3Ibk0&GH3!(q 8'e21Zq+bY++3!0UQ#f&XRJ*PU[1j8,F5l*@)mPJaVSbq"#$MHHq'TdIKk-2TkI( TN6J3qd*XLH1TX,T8A4(R@FH+Rm[%#MQe8&[*D#DdqVP8aN)h,jQ6AdM3iGMMAm% iQURi[B3[MErA&A[E(LY`NQ4*Ir!DCdT8U2h"Q!h3GFF&l"&*-Ph$+cIeLl%D&UY ISc%r(`qEmd@$C,@-e#AdV3rQb9cC2%q0ji8Kf4`-`a"DGji(ccS3d9#UK('LFC1 Ei%VCk#EfYh'j*G,m5N`61)ImU,61YI&!0M!faLX"&LVck8,UUqZc[3[aJfJ($JM 4dCBrY%%N9P0B,`0jqhSm,P6N6ihClRNYV@bTi9%$I"-@dXib'+6LhKq)RCHNL-U Z%ieFQ50b),[aT(T@hab)Ala@j`[NkI4%jbmI"U22iAJbJTXlA4bqMC+#$NH$Nq& N%2CI[4VaRER1jR3h(Scq1KL&Trf63A9Af0AGqq&S`RFbMTPJaH20F1cZ6&6a1"` G[jmXHF"b-iF(5FD6m'3`H60maDH4AE!NKm26bH"d%Niq[bI-Vp"m-"S04m!DMrY (!dL,b$[h$[--D@Gh!+Yk`UTEZcZcmp6cAY$2PrLTC)bI0V'THMNJkb'L6)(`9Lp fhCAhBVG#ZFcM"@(Z2b$Ka(Y49'FFP%rLJ#j1P$(b#YbI))9Il&B-@)5A,TACi-L 0-,T+3S,fbG`FT$HUJa#Ah!QUcY!9GXCjleK#J54@KTS,UXVR3cV)5afT`'Y9%6C 5TJ[hDc16UGHbHJ&f,3BrS0[J50P6j%D-0dEf1m5MJrbK9R(52cj&#VA8ED63I3L 3!%8Q%P8!RHDC!N"Ue1US)KbNZBb06h5$@&TjpSIH"3@8&kA5Q+Vce1A-ralUj!L [48B*3ecD-2505UGdeU+()0,Pr$*9IiF89%6fk%mm&Hhc[6BJlYN%Gb3!8"0r['4 f5@DX6&1TCM+,8kApMP6A&KETj$!PIM-+TAQ)pppJU4A9X26f,mL2(cqH2r[p6i4 UiMbU84%@&34K0cC`YVj,NrSicE1V8*GC4KAe3+c,Qk13!%`VEX3#&CQ-63jV&5K -9V5I'&&9)+4C&e%Mii@`ZDZL39Xm%@`EQ)MG(BCiS8S5KPhiYQP2*%LG&NYUrmm (rB9k6A!TMH*bXbT,PHj9S$Q*jc,*dM`[@(3A@F[MZia`UBA6TT!!"6ISaXT[liJ fSZ2j(YTBjccV%*@+RFYb[rdK8lFSBKD6J5-*A5NN+jbiR"GKeE&BL@mNRaLU"1F CU8cAi)(SQHEqpPR['@RViJj1PTGjLFTqDjH4ppfS9IMHMalX9Z,pDr&RTkhmZEE R(D(011%+58b%rP3QDBaEbPL&ZTr&X0!jiEGDpeTd9a(b52a1p,R+bM[KDcRkG%l qHEkrreY11&UeIBN0'T'jFPkUQMq+2JAP0k-+riRCGNleJBS'"La8EQ`mB-U2D4l *G2R-,p[d9h2I4-+bZMb`A49fP(13!+Eiq+)@aXd,e@e!&j`Xp"!B#-L[Y$2JJYS J(EVSHq!SB"`+RfkPU9D&pS'h64'-TbA2-eaGX)VID(aekMKpUF48aRVk&-EMJF+ P)Chb+SCH9X299HN4XN"aU&'@(DI#)Bm6dJB4QjB5DPkQdLSZaf@@h0+'*h,i,LI Q#*mH,6(THK#j5H`-de!jRD)VYjDZ@d+iJV%PALIDd"UA)0H))'TBL@bb3ZHj$9a 4VqBZ4"H+q+[MdB#@0#34KLrX&L!"##Za"6+"4+-pj*SPXUXe%UNk5l#5cD%H4XN EL(!PNLN6`)i@jmS3bc4"U"-4'GP5TQ*QEA'R#LDR&'BPC9%@b#["$#-4r1ah5*d 1@kG&`#(M(6$)Q6ZqZ"q8J"5VG)1`,JPV&XdHY[38))H((djSVKN0Kj21"@!Db(m hcbd4S4E#f*+(ceS6DSQNrq-i5iXTYa$12RF$9AMb#a"[+3Bqh`R*mp-&H[8ZPHY H9I3BNX9h@F#piQq)%Er4$"@F86C&pJjie6mDK6-BT#DNEK0MMEm#GBE8e`"[[jP -hZrZ"h[LaldIi39bFjR&b0X'!Mpq%(H,&j)FF*KY'N"A5D[1T+rV1(Xle6q6bFK !2#`MT&b%01-Xp-TiZ6aBcU9"r9$CKfKdZ)92+4r6K'Ze`iA6C%`A("liKpk%ifC 0$DTCc(G`[23b6UN6a,c1E4lPkG+i"YZ0p4ZHffIl[HFF3AA#e&2KKp%aj`YiV-r V4A)dR!`2KqmBSQCCfq+%dKRELl-#,AkdkXYV$1J5Xi'3!%D3!#r$TbJ#+Sdajfd +&a5ZDKNEZD(1Q"fiYC)5A`P3RlN,*!$$Z$XdqSEYl@f5"hbiIYAb6,6-%+j9am' mfr3,3phL5jEIF*Y``BJ-e$Qf&F,E&*SYJBUJ%mai6R!#3pJb"eGKQ-P'p[jJ)cV Dhjck+,F+IQ5AmmY$&dAIPfQ*8-p3B!$!jN!BiT3'l`1NAGMQ)fb5'ATLbDX-PCC QTfkU#j98Ki9,mKe%D&"UYbbpjd$)6+`"fl+1kk9"SHk$2BNSiH,)Cq`URVB`J,V bKY1B0JMD1[#8C13-Jqj$4blr(8*e"[fEUi5-q(mi[dBYm5jb)'!lV5f(MZPhk)J f@XjiZ+8'Z3ZIHLCr0cJpQVcKf#0*m@Q(A`0bZkrV2D[d6BB'V,E"'$fh,0BGV1* -$C3NGm@Qq5k#5`pHh6LcDMhN""0%-pc@GhLU&`H'a5D+EarSHj!!4`$Z@$h5p@c &LQ+!Q*S#iBVEApVe%0RZ)@p#QJRapK8`piAV'@EMi9[AY&EMi[GqbXAHMI59$cB I#EQNZ984YCbelPh4k-2q@qE5NY"QpGr3Ahm#d&"F3f4,HXd3+XB,J`3Hh#CZ%kA GK)K5,88GjBNQP[0jBRmRrVM$UVJajVmD$+NNiRm@e1E,R)!Aia#S$p2U0#h0V,T kA*j)m8qI2P(4-E1m6'28A@l''%,jQa[d(2F0e2'k#Fh`(k@UYq0rkqFr)5k1mB8 *FLee**VS`(+4+P!VLh8B"A5Nh6aGPC[P4C0i@XecI!la'(G09DLDa[,-p3XZ'T[ "i@(jVlcrMqqbrZQGjIE+b`1S8`hKDX3I(0erb,(Yr3m!$3!68(PdD'pZ3dG*8fa KGQ8ZFR0bB`!!!!!!!!!!!!!!!%*L#BB!!!!!!!!!!!!!!!!!!!i$!!!E'J!!!"E rrrrrFR0bBe*6483"!,8%!4He"EJF!!!"DJ!!!!!!!!$T!!!!!1Hj!!!!!!!!!!# FBK%!#"bFka$%`)jK3#-$MT)$D1Ff$XjYq#!`4rG"lY`S&SS%KXSdcPUhE4p-*i1 S6f5+&#'ib)`1c8LKQG3c6MY#`D4%"-Tj,(Rmr@iXfL"E)3-!mZlabQDjYhiV)hq &EFiSF11c'mINVljlhT+EaFAfI2A'Z*hLhlkbP3iLYHi)CNG''9HKS--c@&CkZX- T`*`FGm9a1mIG@[r9fBA*cZdd,R[JTGFF04Gbcf`4HplBQ6P4AdiSU@HSDp@80"K G+ljKr+cDScIL$MHjSXN$TMHlN!!Q(T@1*VAYGQjlFbGIQl2k2'3dh!SX!#%K$P" jG'K[EN0(590dG@CQ!!!!!!!!!!!!!!!!!!!!!!!!!!Q'!1B"P`,H!jJ!!!!"!!! C`3!!!!!!!!!@!!!!KJ!!!K$rrrrr!`#e"T+GY3D6+J!!!!!!!$1T!!!!!!!!'T6 rm2ri!!$$3!!!i0Xa5J!!: --============_-1257863612==_============-- From erik@letterror.com Tue Mar 28 22:48:34 2000 From: erik@letterror.com (Erik van Blokland) Date: Wed, 29 Mar 2000 00:48:34 +0200 Subject: [Pythonmac-SIG] creator from application name? Message-ID: <200003282255.AAA00595@leidschenveen.denhaag.dataweb.net> Hi! -- is there a python way to get the creator when I only have the application *name* (no path, nothing) i.e. I have "Finder" and I need "MACS". I don't want to stop and peek myself. Context: I'm building a very patchy parser for the Lasso Capture AE tool, a simple control panel that makes a transcript of all appleevents that race by anywhere in the system. Copy and paste the transcript to the parser, and it produces executable python code that will re-create the captured event. Infinitely easier than building it by hand! Erik From erik@letterror.com Wed Mar 29 12:01:25 2000 From: erik@letterror.com (Erik van Blokland) Date: Wed, 29 Mar 2000 14:01:25 +0200 Subject: [Pythonmac-SIG] AECaptureParser Message-ID: <200003291208.OAA17523@leidschenveen.denhaag.dataweb.net> --Emailer_-1257145820 Content-Type: text/plain; charset="iso-8859-1" Content-transfer-encoding: quoted-printable Enclosed is a utility that converts captured appleevents to python code that reproduces the same event. It's useful in recording complex appleevents from AppleScript and other sources into python. I solved my earlier problem of getting the creator of an active application, I'm just asking the finder for it. There is now a function processes() that does just that. This function was made using code from AECaptureParser. So events to applications (not just the Finder) will get the right signature. Erik The doc string: AECaptureParser makes a brave attempt to convert the text output of the very handy Lasso Capture AE control panel into close-enough executable python code. In a roundabout way AECaptureParser offers the way to write lines of AppleScript and convert them to python code. Once Pythonised, the code can be made prettier, and it can run without Capture or Script Editor being open. You need Lasso Capture AE: ftp://ftp.blueworld.com/Lasso251/LassoCaptureAE.hqx Lasso Capture AE prints structured ascii representations in a small window. As these transcripts can be very complex, AECaptureParser parses and writes python code that will, when executed, cause the same events to happen. It's been tested with some household variety events, I'm sure there will be tons that don't work. All objects are converted to standard aetypes.ObjectSpecifier instances. How to use: 1. Start the Capture window 2. Cause the desired appleevent to happen - by writing a line of applescript in Script Editor and running it (!) - by recording some action in Script Editor and running it 3. Find the events in Capture: - make sure you get the appropriate events, cull if necessary - sometimes Capture barfs, just quit and start Capture again, run events again - AECaptureParser can process multiple events - it will just make more code. 4. Copy and paste in this script and execute 5. It will print python code that, when executed recreates the events. Example: For instance the following line of AppleScript in Script Editor tell application "Finder" return application processes end tell will result in the following transcript: [event: target=3D"Finder", class=3Dcore, id=3Dgetd] '----':obj {form:indx, want:type(pcap), seld:abso(=AB616C6C20=BB), from:'null'()} [/event] Feed a string with this (and perhaps more) events to AECaptureParser Some mysteries: * what is '&subj' - it is sent in an activate event: &subj:'null'() The activate event works when this is left out. A possibility? * needs to deal with embedded aliasses --Emailer_-1257145820 Content-Type: application/mac-binhex40; name="AECaptureParser.py.hqx" (This file must be converted with BinHex 4.0) :%N&&3f&`G(9bC9"KFR0PFLj`H3"849K88'PNC3%!!!!Y,`!!!J-p'bFR*`e"480 KF(4eFQ93BA*cCA)JE@&VCA-JB5"LFQ&fC5"KG(4PEA"d)(4[)'0[ERCPFR3JG'K P)(4PH(3JEh9dF(9d$@pQ)(4SC5"fCA*j)'KKEQ4j)%aKFh0[)%0KF(4eFQ8J388 JBfpZG(*[E#"`B@jPE!eTER4[)'0XEh0P,@9ZEh9RD#"PH'9MGA4KBQaP)("jG'K [EL"MEf4P,Jd05@iJB5"bEh9ZC'&LEh9d)(GKH5""480KF(4eFQ93BA*cCA)JEfC QCA*c)(4SC5"hBANJG'mJGh*TG'8JE'PZCA-JEfBJ3A"`E'96Bh*TF(30B@jN)'0 [ERCPFR3JG'KPE5"dEb"`HA4SEfiJBfpNC5iJ6fjMC5"3HA4SEfjTFf9N,#"dD'8 JBfpNC5"MB@iJBQ8JE@&NC5"`FQ9dG'PPFL`0B@jN)'Pd)'0KEL"bG@iJGfPdD'p eG#"$BA"dGA*P)'pb)&0MFQP`G#"&C'PdEh)JBQ9TEQFJEh"PELi0$9P[G5"ZC@9 N)%aKFh0[)%0KF(4eFQ8J388JCR*[E5"#E(9PGfpbE'3k$@CdF$S[,fCdF#jLE(9 PGfpbE'3ZBfpY,daKFh0[-M8a,daKFh0[3f&`G(9bC8&&,QKaH!d06'&cFfmJ3f& `G(9bC5""45"`FQPZG(-JFh4bG@0dGA*PC#"KFf0TD5"bCA"bCA0PER4KG'P[ER- JD@iJB5"cE@&XE#"hD@jNEhFZ$8&c)(4SCA0P)(4bB@jcBh*TF(4c)'0KEL"LC5" fCA*j)'0[EA"XCAJX)'0eG#"KEQ3JF'&cG'8JG'mJ389$BA"dGA*P8'&bFf9b,#" TG#"`BA*cCA-JB@jN)(GbDA4PF`e`HA4SEfiJBfpNC5"dD'&d)(GTE'`X)(GSC@i JCAKPBh9dC@3X)'0KGA0P)(4SC5"cB@eP)'9fC@jdFb"dEb"SBA"`C@iZ$8Pd*h- JBQ9PEL"dCA0dC@3JGfPdD#"cEfeP)'K[GA0PD'pXC#"fBA*TCA4j)'9fC@jdFb` J55GY)(0eFQ8JG'KPFQ8JGfPXE#"LC5"dEfjc)(4SBA30C'pZ*h3JGfpbDbi0$8& XE#"[BQTPBh4c)'&bC5"MEfjfCA*dC@3JG'mJFh4KEQ4KFQ3JB@9dHA"PFbj2BQT PBh46F'9MD@CTCA)JD@jcG'&ZBf9c,Jd05'ph)(4[)(9cC6S0#6%Z)&0dBA*d)(4 SC5"$BA"dGA*P)(GTEQ4[G`d*-LiJ3f&eFf8JG'KP)'4PFfPbC@3JBA"`E'9PGQ9 ZG#"dEb"SBA"`C@i0#3NY)'*j)(GbDA4TEQFJB5"XD@jP)'pQ)'&`F'aPFf0bDA" d)'PZ)&0MFQP`G#"&C'PdEh)JB@jN)(*eEQjTEQFJDA3J+#%T$3N*,5"LH5"bC@0 [FQ4TEQFJFfpYC5"KBh4TEfiJD@iJ8f0bDA"d)%9NDA4[FL"KEQ3JFR9ZEQPZCb" TG!d*-biJ4QPZC#"dD'8JCACPER4c)'PZ)%0KF(4eFQ8k$3N*,5"YB@YP)(0eFQ8 JH@pe)'GPG#"dD'8JBA"`FQp`FQPKG'8JCACPER4c,#"MG@aX)'PQ)'jPBf9cFf& bH3d*#5dJFfpYCA4TE@9c)%0KF(4eFQ8JBQ&bCR-X)'TeFh3JFA9TG#"KEQ3JFh4 KFR3J3f&`G(9bC5"KCf&TEL`JFR9Z)'9fC@jdFb"KCf&TEJd*#5dJ389$BA"dGA* P8'&bFf9b)'0KEL"`FQpMCA0c)'eeE(4TF'aP)'9fC@jdFb!Y)'Pd)(GTE'`JDR9 cG#"YB@YP)'e[FQ8JBfpNC5i0#63Z)%0[F(NJB@jN)("KFh4P)'PZ)(4SDA-JFf0 bDA"d)'&ZC#"PH'9MGA4P$3Ne,L"*G#"hD@aX)("bD@jd)("jG'K[EL"MEf4P)(4 SBA3X)(GSC@iJCAKPBh9dC@3JFQ9MFQ9KG'9c)(4SC5"PGQ9ZG(-Z$3e&H'&YF'a P1Jd*4Qpb)'PZFh4KEQ0P)(4SC5"QEfaXEhGTEQFJE'PZC5"[CL""F("XC90MFQP `G#"TEL"6Bh*TF(3J4@4TG'pb$3N*#A4PE'`JBA"`E'PMBA4TEfiJ)NCTEQ4PFL) 0#3N*#A*PG(9bEL"KF("XD@0KG'P[EL"`FQpMCA0cCA-0#3N*C@jN)(4PE'`0#AG TE'`JFQ9cG@ad)'PZ)(4SC5"QEfaXEhGTEQFJG(*KER0MFQP`G$S0#3N*@f9fC@j d1L"dBA*RCA3p)NCTEQ4PFL)X)'0XBA0c2@0[FQ8X)'PN2@GPG'4G$3N*#5FY,5d Y*cT[BQSJHfC[FQdkD@jNH#`JGf&ZG$TdHA"P+("MBA!T,#"cC@aN1Q&LFfmSacB a0N-f3c)`b#NX)'CbEfdk*fjeE'`R+#Pp$3N*#9X[CACPER4G$3P'C@9N)'%JFh4 bD@jR)(GTG'JJG'KTFb!SB@jN)("PFQKKF(-JE@pbC5NJCACPER4c)(4[)%&&3f& `G(9bC9"KFR0PFJd*$90[E@8JEAPcG'9bD@9c1Jd*+L!*GfKKG#"TFb!R*R0eBQS R)#dJDA3JDA-JFf9ZG#"TEL"KEL"KBh4TGQ&dC5"PGQ9ZG$S**R0eBQSk*fjeE'` R+#N0#3P8D'8JB@0dDACKG'8JCACPER3JGfpbDh-JGfKPEL"dD'Pc)'Pc)'aPCR3 JEh9d,L"")("[Fh0TBQPXDA4j2`d*+JPZC@9NFb"dEb"NC@&X)(GTG'JJC@eLC@4 NC@3JB@aTBA0cCA-0$3dR*bF0AepfCA*cD@pZAemJ25!R-#i`-$%R$9pIBA9dD'p bAemJ25!RCACL*`d0$@PYF'pbG#"cG(*TEQFJ$@PYF'pbG#"YEh*PCQPZC'9bG'p [E(-0$@p`C@jdB@FJ25!RHbF0Bfa[Ff9dB@FJ25!RI5F0$3d0D@e`Eh*d)'&PG'p [E(-0D@e`Eh*d)'&PG(P`CA-0$@0XBA0c)'9fC@jdG'&XDf9b+'&PG'p[E(-Z9'& XDe4[+6S0#A"KFh-0$@4PCL"`FQpMCA0cCA-S+6S0#5FR*dKPE("PFL"QG@jMG'P [EL"dEb"RCA3JG'KP)'aTFh3JEfBJBh9bFQ9ZG#"`FQpMCA0cCA-JB@jN)(4SC@P b)'0bC@&dEh*c$3P8D'Pc)'0[C'8JGf&c)'e[Fh4XH5"hFQPdG'9Z)'*j)%&&3f& `G(9bC9"KFR0PFL%J5A3JB@PZ*h3JF(*PG(4j,#"LGA3JG'KKG#Gc)'j[G#"`HA4 SEfiRFb"QBA9XG#%R*bF0#A4KE'YPFL!p)'9fC@jdG'&XDf9b+#G03806*bN0#9p KFQGeE@9ZG(-J25"lI3d*Af&dG(*TBR9dCA-J25"lI3d*F#!p)&YG$3PZB@ePFb! p)&YG$3PMFQ9KG'pbFb!p)&YG$3PbCA0eE(4c)$dJ@ed0#5-JCQPbFh3JCf9d)(4 SC5"XDA0d)'pQ)("bEf0PFh-JEQ&YCA-0#9pKFQGeE@9ZG(0E*bdY,5dRA5!p)'& PG(P`CA-Z6f*UC@0d8h"PBfPQD@9b+(GKER3pB@9dHA"PFbj8HA"P+#G`Bf&`*bN X$3N*#@C[FQdp)QPZC(JL,#"cC@aN2@&PG(P`CA-Z9@jVEQphELJRB@*cEbFX)#* KE'`J)LNX)'Cb28j[EQ8T$3PIFQ9`E(NX)&pKFQGeE@9ZG(-X)&pKG(4bD@*eG'9 c)$dJG'&XDf9b,R0PEQ3S*f0[FQ8R,#!RCf9dC#FX)&pKFQGeE@9ZG(-X)&pKG(4 bD@*eG'9c+3d*D@BJAf&bCh9YC@jdFbjSBA0IDf9j+#GPFR*Z*bNk$3N*FQ&TFf8 JB@9dEfpXFbj&FR*[FL`JB@9dEfpXFbjNC@0[C'9PFR*[FLKIBA*RG@ePER4c+3d *D@BJAf&bCh9YC@jdFbjSBA0IDf9j+#FY,5dY*bNk$3N*F#!p)&pKFQGeE@9ZG(0 E*bdY,5dRA3d*CQpb)("bEf-JD@iJF$S0#3PZB@ePFbjKF("PEQ3SF(*[BbjcC@a N+3d*)b"dD'9Z)'GPG#"dD'8JE'PcG#"[CL"`FQpMCA0c)'0bC@&dEh*c$3PIBA* RG@ePER4c)$dJHhd0#9pKG(4bD@*eG'9c)$dJHhd0#8&&Ef*UC@0dAc!`)$dJB@9 dHA"PFbj2BQTPBh46F'9MD@CTCA)SGf&ZG$eKCA4jF'9c,P4jF'8S*h"MBA!R+5` JCQpbE6dLD@jNH#)X)(0PE'3pB@9dHA"PFbj9EQYZEhGZ+#GKBR0[*b`J)Q&XE#! L+5`JCR)p6QpZC5N0#8&&Ef*UC@0dAc!a)$dJB@9dHA"PFbj2BQTPBh46F'9MD@C TCA)SGf&ZG$eKCA4jF'9c,P4jF'8S*h"bEh!R+5`JCQpbE6dLF(*[F#)X)(0PE'3 pB@9dHA"PFbj8HA"P+#GQBh*d*bNX)'Cb28&&Ef*UC@0dAc!`+3d*Af&bCh9YC@j dFeXR,5dY,5GG)$dJ389[BQTPBh4I-$%0#9pbCA"XH5`JAf&bCh9YC@jdFb`JAf& dG(*TBR9dCA-J25"dB@aVCA)ZFf9ZC#JRBfpbC5FX)#GRCA4N*b`JAf&bCh9YC@j dFb`JAf&dG(*TBR9dCA-T$3PTCL"IBA*RG@ePER4c,QKKFepVCANS*f9bFQiR+6S 0#3PbB@PcC5"KCA4[Efac,N9bFQpb,#"KCA4[Efac,Q4PBfpNC@9bFQpb+&pKFQG eE@9ZG(-T$3PTCL"IBA*RG@ePER4c,QKKFepVCANS*bdY,5dR+6S0#3P`)$dJAf& bCh9YC@jdFeXR,5dY,5GG$3PQEh)JF(*[Bb"TEL"`1Jd*#@0bC@&dEh*c,Q&`F'9 ZC#K`FQpM,R4jF'8T$3NM)(4SC@iJF(9d)(4SC5"XDA0dFb"dEfGPG'KPFJd*CQp b)'NJD@iJFQ&ZCf8SE'9Z+'jKE@9c+5Nk$3N*FQ9cG@adFbjKF("PEQ3S+'jKE@9 c@fPG,#"MFQ9KG'pbFeYTA5NT$3PbCA4eFQiJFQ9cG@adF`d0#3N0BfaKFh-J389 $BA"dGA*P8'&bFf9b1Jd**bFRBfpZGQ9bG#"K)'0KF(4eFQ9N)'&`F'aPCACPER3 YC'9cBh*TF(4TEfiJD@jdEb"PH'9MGA4KBQaP)("jG'K[EL"MEf4P*bFR$3PNC@B JAepTEQPdAemSFf9XCL`JB@9dCAKd+6S0#3PcC@aQ,Q&PG'9iG#!p)'&PG'9iG!d *#A0PE'BZCACPER4c)$dJ@ed0#3PcC@aQ,Q&bCh9YC@jdFb!p)(Yp$3N*Ff9XCLj [BQTPBh4TEQ4PH#!p)$!0#3PcC@aQ,RCKFQPZC'9i)$dJ-!d*#A0PE'BZBh9bFQ9 ZG'9fC@jd)$dJ)(XRGQ&bD@&LE'9c*cTlI5`J*f&bCh9YC@jdFbFkHhdX)#G[BQT PBh4c*cTlIAd0#3PcC@aQ,R"KFR0P+#N0#3d*C'9Q)("KFR0P+(0PE'BT1Jd*#A0 PE'BZE'PZCA-J25"cG(*TEQFZFh"XDA3SFf9XCLjKCA4PH(3X)#GFELFT$3N*CQp b)'`JD@iJFf9XCLjXD@jPFcS0#3N*D@BJE&Xk0edJ26dJ*eYPGQ9ZG$SR1Jd*#3N *Ff9XCLjPGQ9ZG'KPB@4PFLKX+3d*#3PPE'PQ)'aE1MGG)$dp)#GE,f9fC@jd*cS 0#3N*#@PQ)'aPELKcC@aQ,Q0eFR*PER4PGQ9ZG#Nm2M!k$3N*#3N*Ff9XCLjPGQ9 ZG(-ZBA"`C@jN+(0PE'BZBh9bFQ9ZG'9fC@jd+3d*#3N*#A0PE'BZBh9bFQ9ZG'9 fC@jd)$dJHbGfBA*TB@*XCA-R1RYp,#!RBA*RG@ePER4c*cTlI5`J*fpLDQ9MG(- R1RYpI3d*#3N*#A0PE'BZEf*UC@0dD@jNCAJJ25!`$3N*#@9XFf8k$3N*#3PcC@a Q,QaTEQ8SE#N0#3d*C'9Q)'aTEQ8SFf9XCL`JGQ&XG@8T1Jd*#5FR*fPZG'9bF(* PG#"XDA4PFQ&XFb`JGQ&bD@&LE'9c,#"XDA0dFb"PG'-Z*bFR$3N*)b"cG(9QCL" TEL"E)#"G,#"X)'PcG(-0#3PfBA*cG'&bG#!p)(0dFQPZCbjQD@jN+(CKE(9P,#! R@bFT$3N*GQ&bFh4[F#!p)(0dFQPZCbjQD@jN+(CKE(9P,#!RA5FT$3N*D@BJGQ& bFh4KFR3J2$iJ,6%JB@jN)(CKFR0dEh!J2$iJ,6%JB@jN)(CKFR0dEh!qGQ&bFh4 KFR3k$3N*#ACKFQPKBQaP)$dJGQ&XG@9EGQ&bFh4KFR3kGQ&bFh4[F#XaA3d*#3P ZB@eP)$dJ*f&PGQ&bAbFVFh4bD@jR,RTQD@aX+(0PE'BZGQ&bD@jNCAJX)$)T$3N *#A0PE'BZBh9bFQ9ZG'9fC@jd@bGfBA*TB@*XCA-RA9YZB@ePA5!p)(CKFQPKBQa P$3N*#ACKE(9P)$dJGQ&XG@9E1RCKFR0dBA*dA5YZB@eP+hCKE(9P@hCKFR0dEh! V-6TG$3N*#A0PE'BZGQ&bD@jNCAJJ25"cC@aQ,RCKFQPZC'9i)#XJ-3d*#5-JFh4 eCQBJD@iJab!Jb!d*#5-JG'KPFf8JBA*P)#G[FQ4TEQ&X*b"NCA0MFQP`G'pbFb" [CL!d)'aPG(4PFL"MEf4PFb`JFfmJG(*KER0XBA4P$3N*GQ&bFh4KFR3J25"cG(* TEQFZCQPZC#KfB@aeC5`J*mFR+3d*#ACKFR0dEh!J25"cG(*TEQFZCQPZC#KfB@a eC5`J*mJR+3d*#@PQ)(CKFR0dBA*d)$`q)#da)'&ZC#"fBA*cG'p`)$`q)#da)'& ZC#"fBA*cG'p`2RCKFR0dBA*d1Jd*#3PfBA*TB@*XC5!p)(CKE(9P@hCKFR0dBA* d+c%kGQ&bFh4[F&d0#3N*G#!p)#FR$3N*#@C[FL"T)'PZ)(*KEQGP+$!X)'aPELK fBA*TB@*XC5NX)$)T1Jd*#3N*Bb!p)'9fB@`S*c"i*bYfBA*TB@*XC9YT)$SJD5X bA5N0#3N*#A3J25"d)#XJBfKb+'-T$3N*#3d*#3PZB@eP)$dJ*f&PGQ&bAbFVFh4 bD@jR,RTQD@aX+(0PE'BZGQ&bD@jNCAJX)$)T$3N*#A0PE'BZBh9bFQ9ZG'9fC@j d@bGfBA*TB@*XCA-RA9YZB@ePA5!p)#FL*b!V)(3J+b!R)LF0#3N*GQ&XG@8J25" fB@aeC9XkGQ&bFh4KFR4G+fjKE@8VGQ&XG@9EGQ&bFh4[F#Xa1Pd0#3N*Ff9XCLj fBA*TEQ4PH#!p)(0PE'BZGQ&bD@jNCAJJ+b!a$3N*F'pc)$dJFh4bD@jR,QCTEQ3 SGQ&XG@8X)#Fk*bN0#3PTCL"`Eh-p25da1R*PG(9bEJd*#@pV)$dJ-3d*#AGSD@a P)'pV)$`q)%j[EQ8k$3N*#ACKE(9P,#"[Db!p)(0PE'BZF'&bFf9[BQTPBh3SGQ& XG@8T$3N*Ff9XCLjMGA*bC@jdCACPER4E*f&bCh9YC@jdFbGG,R9`C'&dC5KcC@a Q,R0`E'PdF'&bG(-SGQ&XG@8X)#Fk*bNT$3N*$3N*)b"bC@e[GQ8JG'KP)#CcG@* U)'&bCh9YC@jd2`d*#@PQ)(0PE'BZBh9bFQ9ZG'9fC@jd@bGKFQGeE@9ZG(-RA5j SBA0IDf9j+#FQFh9LDLFT1Jd*#3PNC@`JFf9XCLjMGA*bC@jdCACPER4E*f&bCh9 YC@jdFbGG@bFQFh9LDLGG$3N*#3d*#5-JBfKPBfXJCQpb)'&bCh9YC@jdFb"XC@i SB5NJ2#!d,#"KEQ3JF'&N)(GTG'JJFh"KBf9c$3N*CQpb)'XJD@iJFf9XCLjMGA* bC@jdCACPER4E*f&bCh9YC@jdFbGG,QYPHA-S+6S0#3N*D@BJE'9Z+'XT2$3k$3N *#3PZCAGV)$dJDb!V)#Jd,@aPELKV+5NU*b!R$3N*#3PcC@aQ,Q0eFR*PER4PGQ9 ZG&XRBA*RG@ePER4c*eeEEQ9hDedJ25"cC@aQ,Q0eFR*PER4PGQ9ZG&XRBA*RG@e PER4c*eeEDed0#3N*#@4PE#"cC@aQ,Q0eFR*PER4PGQ9ZG&XRBA*RG@ePER4c*ee EDed0$3PNC@BJF'&bFf9[BQTPBh3SFf9XCL`JEf*U+6S0#3PK,#"L)$dJFf9XCLj QD@jNG'&R+'pLDLN0#3PcG(9QCL!p)%j[EQ80#3PTCL"K2$j1EfjP)'&ZC#"L2$j 1EfjP1Jd*#3PcG(9QCL!p)'pLDPYK1Q*G$3N*#@jKE@8J25!R389[BQTPBh4I*bY cG(*TEQFZHQCTE'`SFf9XCLj[BQTPBh4TEQ4PH#`J-LN0#3N*Ff9XCLjMGA*bC@j dCACPER4E*fpLDQ9MG(-RA9YZB@ePA5!p)(0PE'BZFh"XDA4`BA*dFbKcG(9QCL` J*cSR+3d*#3P[BQSJ25"[BQTE1Q%Y09dJ+b"ZB@eP)#XJEf*U@f)V-6TG$3N*#A0 PE'BZEf*UC@0dD@jNCAJJ25"cC@aQ,QpLDQ9MG'PZC'9i)#Xa$3N*FQ9dGA*Z)'p LDL`JFh4eCQB0#3N0#@4PCL"ZCAKdEh"PELKcC@aQ,#"`Eh-X)(4PH(3T1Jd*#A* PG(9bEL"cG(*TEQFZCQPZC#KdCAKd,#"[F'9ZG'&R,#"`Eh-T$3N*$3PNC@BJEQ9 iG'0XEh0PC#KcC@aQ,#"`Eh-X)(4PH(3T1Jd*#A*PG(9bEL"cG(*TEQFZCQPZC#K dCAKd,#"ME'pcCA4KCb`JF'pc+3d*$3PNC@BJEQ9iG(4KCbKcC@aQ,#"`Eh-X)(4 PH(3T1Jd*#A0dBA*d)$dJFf9XCLjZCAKdEh"PELK`Eh-X)(4PH(3T$3N*Fh4[F#! p)(0PE'BZEQ9iG'0XEh0PC#K`Eh-X)(4PH(3T$3N*D@BJFh4KFR3J26dJ,6%k$3N *#@PQ)(0dEh!J26dJ,6%k$3N*#3PbCA4eFQiJ,6%X)#da$3N*#A*PG(9bEL!`,#" cG'p`$3N*D@BJFh4KFR3J2#"cG'p`)'&ZC#"cG'&bG$`q,6%k$3N*#A*PG(9bEL! a,#"cG'&bG!d*#@9XFf8k$3N*#A*PG(9bEL!`,#"cG'p`$3N*#3N*$3PNC@BJCQP ZC(4KCbKcC@aQ,#"dCAKd+6S0#3P`)$dJ,6%0#3PXBA0d)$dJ6QpZC5a1EfjP$3N *GfKTE'8J-6S0#3N*DfPZC#`JF#!p)(0PE'BZEQ9iG(4KCbK`+c%X)(4PH(3T$3N *#@PQ)'aKFh4E-&dp26%JB@jN)'YTEQ3p26!k$3N*#3PbCA4eFQiJE'&cG&XaA5Y XC@iSEh"PER4KCbNX)(!0#3N*D@BJ+'YTEQ3X)(!T)$dp)#JY-5`J,6%T1Jd*#3N *BR*PB@X0#3N*E'&cG$eVD@jN,#"`$3N*FQ9dGA*Z)%j[EQ8X)%j[EQ80#3d*C'9 Q)(0`E'PdF'&bG(-SFf9XCL`JG(Kd,#"cF'aTG(4PFLNk$3N*FQ9c)$dJHhd0#3P `BA*dFb!p)(0dFQPZCbjcF'aTG#KdH(3X)#FX)#FT$3N*CQpb)(!JD@iJF'&bG(- k$3N*#A"[Fb!p)(0dFQPZCbjQD@jN+(!X)(0`E'PdG'9b+3d*#3PVCANJ25"cG(* TEQFZFh4bDA!SF&XkF'pcA5N0#3N*GQ&XG@8J25"cG(*TEQFZFh4bDA!SF&Y`Eh- V-6TG+3d*#3PbCA0EDf9jA5!p)(0PE'BZE@&`+(CKE(9P+3d*#A*PG(9bEL"bCA- 0#3N0#@4PCL"PGQ9ZG'KPB@4PFLKcC@aQ,#"SC()T1Jd*#A0PE'BZBh9bFQ9ZG'9 fC@jd@bGPGQ9ZG#GG)$dJFf9XCLjcF'aTG("KFR4c+'KNFPXh1LdaA5`J*cdR+3d *$3PNC@BJF(*TER4[BQTPBh3SFf9XCL`JC#Nk$3N**bFRF(*TER3JEfjP)'pLDQ9 MG#"KFb"`HA4SEfiJBfpNC5FR*`d*#A3J25"EA3d*#@pLDL!p)(Yp$3N*Ef*U,R9 `C'&dC5KN+3d*#A3ZBA"`C@jN+#*KCA4jF'9c,NpLDQ9MG&0`C@0TCQPPFLJL+3d *#@PQ)'pLDLjSBA0IDf9j+#GhB@jd*bNk$3N*#A3ZBA"`C@jN+#GhB@jd25FJ+b" cC@aQ,QeKF#K[BQTE*hGKER3RA5NT$3N*#@4PE#"[BQTE*hGKER3RA3d*#3Pd,Q& `F'9ZC#JR,#!R+3d*#@PQ)'pLDLjSBA0IDf9j+#GQEh*Y*bNk$3N*#A3ZBA"`C@j N+#GQEh*Y25FJ+b"KC'4aG@pdCA-SFf9XCLjYBA!SEf*U@bGQEh*Y*edT+5N0#3N *C'9X)'pLDPXRCQpbE5GG$3N*#A3ZBA"`C@jN+#FX)#FT$3N*D@BJEf*U,QKKFep VCANS*h0PE'3R+6S0#3N*G#jKF("PEQ3S*h0PE'3p*b!V)(0PE'BZE@&`+'pLDPX RFf9XC#GG+5N0#3N*C'9X)'pLDPXRFf9XC#GG$3N*#A3ZBA"`C@jN+#FX)#FT$3N *D@BJEf*U,QKKFepVCANS*fCbEfdR+6S0#3N*G#jKF("PEQ3S*fCb25FJ+b"cC@a Q,QeKF#K[BQTE*fCbEfdRA5NT$3N*#@4PE#"[BQTE*fCbEfdRA3d*#@PQ)'aPELK [BQSZDf9jFbJT+5!q)$!k$3N*#A"bD@jd)#FM)#FX)'"[BQTJ#3N*$3N*G#jKF(" PEQ3S)LNL+3d*#A*PG(9bEL"cG(*TEQFZDQpTELKd,#!R*bN0#3d*C'9Q)'eKF#K cC@aQ,#"d+6S0#3NR*bGYBA!JFfpYC5"$BA"dGA*P)(0jER4KH#"dEb"`HA4SEfi 0#3PYBA4MD(0dFQPZCb!k)&XSEfaN,#"ZCAFT,#!Z,LiJA3d*#5FR*`d*#@dJ25" l$3N*#3NRG(P`C5JR1L"E+#GdHA"P+#FX)#*KCA4jF'9c,P4jF'8S*b)T,#!S*bN R,#!L*bNL+9dX$3N*#3NL*fjeE'`R+#NL1L"E+#)RER9XE#FS+5)X)#*1EfjP)LP G,!d*#3N**f&LFfmS*cSJ@bJRB@*cEbJR,#!LB@9dHA"PFbj9EQYZEhGZ+#GKBR0 [*b`J)LPG,!d*#3N**p)R1JPE+#I5*b`J*b)R+9dX$3N*#3NRdbFk#9XS*p-R,#! R)LFTA5`0#3N*#5GE*cS*@bJR@bFX)#FS*bNX)#JR,#!R,#!R,#FTA5`0#3N*#5G G*cS*@bJRA5FX)#FT*bPG,!d*#3N**mFR1JPE+#I(*b`J)XFL+9dX$3N*#3NRb#F k#9XS*mJR,#!Lb#)TA5`0#3N*#3d*#3Pp$3N*CQpb)'XJD@iJE5jVCAPc+#Nk$3N *#@PQ)(0dFQPZCbjQD@jN+(3X)'XT)$`q)#da1Jd*#3N*CQpb)'pXC#`JEQ9h)'P Z)'eEDedk$3N*#3N*F#!p)(0dFQPZCbjcF'aTG#Kd,#"[E'3T$3N*#3N*G#!p)(0 dFQPZCbjUEfPZ+(!X)'jPGbN0#3PbCA4eFQiJG!d*#3d*C'9Q)("bD@jdCACPER3 SFf9XCL`JD5Nk$3N**bFRF(*TER3JG'KP)'9ZG'PbC5"MBA"dGA*PC#"cCA&eC@j MC5"KFb"`HA4SEfiR*bF0#3PPGR3J25"cC@aQ,Q9fC@jdFeYTA3d*#@0[C'8J25" EA3d*#@0[C'8ZBA"`C@jN+#GFEL-JFh4KFR3JCACPER3J*b!V)'"TB#N0#3NM)'G PG#"dD'8JFfPREQ&dGA*P)'C[FL"dD'8JG'&bCf9d)'&`F'aTBf&dD@pZ$3N*Bfp NC5jKF("PEQ3S)P0*4cdR)LYcC@aQ,QGPG(4KFQGPG#KPGR4E*f9fC@jd*eeE*h4 KFQGPG#GG+5XL*b)T$3N*BfpNC5jKF("PEQ3S)R4KE'YPFL!p)'9fC@jdG'&XDf9 b+&0*4bNL+3d*#@0[C'8ZBA"`C@jN+#*IBA*RG@ePER4c)$dJHhdL+3d*#@0[C'8 ZBA"`C@jN+#*IBA4dFQPLGA4PFb!p)(Yp)LN0#3PMEf4P,Q&`F'9ZC#JLAf0[C'8 J25!R)L!V)'9fG&XRCACPER3RA9XRBfaKFh-RA5!V)#)R)LN0#3PMEf4P,Q&`F'9 ZC#JLAh0eBQ0[C'8J25!R)L!V)'9fG&XRCACPER3RA9XRD@3RA5!V)#)R)LN0#3N M)(GbDA4P)(4SC5"fBA*TB@*XCA-0#3PQEh)JDf9j,#"fB@aeC5"TEL"PGR4E*hC KFQPKBQaPFbGG,QPdC@ec+#Nk$3N*#ACKE(9P)$dJCACd@bGfBA*TB@*XCA-RA9Y VCAPG$3N*#@0[C'8ZBA"`C@jN+'YPH5!V)#FJ25!R)#XJGQ&XG@8T$3N*)b"hFQP dC5"dD'8JEf*UC@0d)'PZ)(4SC5"bD@GSG#"[FQ4PFJd*#@pLDQYPHA-J25"PGR4 E*fpLDQ9MG(-RA5jVCAPc+#N0#3P[BQTVCAPc,R0[FR3S+3d*#@C[FL"VCANJD@i JEf*UDf9jFcS0#3N*GQ&XG@8J25"PGR4E*fpLDQ9MG(-RA9YVCAPG$3N*#@0[C'8 ZBA"`C@jN+'YPH5!V)#FJ25!R)#XJFf9XCLj`FQPZG'pLDQ9MG#KfB@aeC5NT$3N *)b"dD'9Z)(GbDA4P)(4SC5"KFQGeE@9ZG(-0#3PQEh)JDf9j,#"fB@aeC5"TEL" PGR4E*f&bCh9YC@jdFbGG,QPdC@ec+#Nk$3N*#@0[C'8ZBA"`C@jN+#*IBA*RG@e PER4c@b)J+b"KC'4aG@pdCA-SDf9j+5!V)#*G)$dJ)L!V)(CKE(9P)#N0#3PMEf4 P,Q&`F'9ZC#JLAh*PF'aj,#"IBA*RG@ePER4c,#"IBA4dFQPLGA4PFb!p)(4KE'Y PFLjcC@jN+&pMEf4P,#"IFh9LBfpNC5`JAf&bCh9YC@jdFb`JAf&dG(*TBR9dCA- T)LN0#3PMEf4P,Q&`F'9ZC#JLD@BJAf&bCh9YC@jdFbjSBA0IDf9j+#GPFR*Z*bN k)LN0#3PMEf4P,Q&`F'9ZC#JRA(4bB@PcC5"KCA4[Efac,N9bFQpb,#"KCA4[Efa c,Q4PBfpNC@9bFQpb+&pKFQGeE@9ZG(-T*bN*$3N*BfpNC5jKF("PEQ3S)QPQ)&p KFQGeE@9ZG(-ZD'&cAfYPH5JR,5dY,5FT1L)T$3N*BfpNC5jKF("PEQ3S)PadF(* TER3JAf&bCh9YC@jdFeXR,5dY,5GG)LN0#3PMEf4P,Q&`F'9ZC#JR)b"PEQ3JCAC PER3J*b!V)'"TB#N0#3PbCA4eFQiJFh4bD@jR,QT[D@iSBfpNC5`J*eaZ*bN0#3d *C'9Q)'GPG(4KFQGPG#KcC@aQ,#"dBA*RCA3T1Jd*#5FR*fGPG#"dD'8JFfPREQ& dGA*P)'C[FL"dD'8JG'&bCf9d)'&`F'aTBf&dD@pZ*bFR$3N*G'&bCf9d)$dJG'& bCf9d@c%k,6&G$3N*D@BJG'&bCf9d)$dp)#G'D@jNCA)R1Jd*#3PbCA4eFQiJ)Ne "3e-L$3N*BA"`Fb!p)("bEf0PFh0PFbJT$3N*CQpb)'jKE@8X)'0bC@&dEh)JD@i JBA"`FcS0#3N*D@BJEQ&YC5!p25"dBA*RCA3k$3N*#3PbCA4eFQiJBh*PBA4[FJd *#A*PG(9bEL!R+LSU+LF0#3N*$3PNC@BJE@&VC@0[C'8SFf9XCLNk$3N*BfpNC5! p)&YG$3N*BfpNC5jKF("PEQ3S)PaZA'iL+3d*#@0[C'8ZBA"`C@jN+#)M)'0[C'8 JCf9ZCA*KG'9N)'*j)%&&3f&`G(9bC9"KFR0PFL"f)#)J+b"IAhCPFR0TEfjIAbN 0#3PMEf4P,Q&`F'9ZC#JL)b"TEA"[FR4c,#"NC@CTEQPdD@pZFb"QEh)JB@aX)'9 fC@jdFb)T$3N*BfpNC5jKF("PEQ3S)QPYF'pbG#"KCA4[Efac)LN0#3PMEf4P,Q& `F'9ZC#JLD@e`Eh*d)'&PG(P`CA-L+3d*#@0[C'8ZBA"`C@jN+#*ME'&cFb"PGQ9 ZG(4KE'YPFLKKCA4[Efac,P4KE'Y8EbNk)LN0#3PMEf4P,Q&`F'9ZC#JLA(4`BA0 c)LN0#3PMEf4P,Q&`F'9ZC#JL)b"dD'8JCACPER4c)LN0#3NM)("bD@jd)(4SC5" PGQ9ZG(-0#3PQEh)JD5"TEL"bB@jRC5KXC@iSFf9XCLjPGQ9ZG(-T+6S0#3N*Bfp NC5jKF("PEQ3SFf9XCLj`FQPZG'9fC@jd+'NT+3d*#@0[C'8ZBA"`C@jN+#)M)'9 ZC#"MEf4P)LN0#3PbCA4eFQiJFh4bD@jR,QT[D@iSBfpNC5`J*eaZ*bN0$@4PCL" KC'4aG@pdCA-SG(Kd+6S0#A&eEh4PFb!p)&XR)LFX)#)R)Pd0#@PQ)'j[G#"dH(4 E-&dJD@iJFA9[G'9c)'&ZC#"ZEh3JG(Kd@bdaA5"TEL"aG@pdCA-k$3N*FQ9dGA* Z)#FL*bYdH(3V*b)R$3PbCA4eFQiJG(Kd)!d*$3N0$3d0$5-J,5dY,5dY,5dY,5d Y,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY$5-*G'KP)'CKBh4[FRN0)b! Y,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5d0$5-JCQp b)'PZFh4KEQ0P,#"dD'Pc)'9fC@jd)(GKFb"MBA"dGA*PC#"QFQpY)(4SC5"6Bh* TF(3J4@4TG'pb)'&cDfPZCb"dD'8J4QPZC'9b)'C[FL"K)'aTFh3JEfBJB@0dDAC P)("bEf0PFh0PFbi0$@9fC@jdFQ9MCA"dB@0XC5!p)#)L)Jd0@f9fC@jd1L"dBA* RCA3p)NCTEQ4PFL)X)'0XBA0c2@0[FQ8X)'PN2@GPG'4G$5FY,5dY*cT[BQSJHfC [FQdkD@jNH#`JGf&ZG$TdHA"P+("MBA!T,#"cC@aN1Q&LFfmSacBa0N-f3c)`b#N X)'CbEfdk*fjeE'`R+#Pp$9X[CACPER4G$9YPGQ9ZG$SJG'&bCf9d25*'D@jNCA) L,#"ME'&cFceMEh*P,#"TC$eRCA4NA3dR,5dY,5FkEf*U)(YQEh*Y1R"bEh!X)(G KER3kG(P`C5K`FQp`+5`JFf9XC$TdHA"P+'CMFR3T,#"QFQpY1QpLDL"lCQpbE6T TEQ4i,#"hB@jd1R4jF'8SF'0KF#NX)(0PE'3kB@*cEbM(0M%f3cC$-M$)+5`JCR* [E6SRER9XE#FS+Aep$9X[CACPER4G$3dL)L)0$@&PG#!p)%&&3f&`G(9bC9"KFR0 PFLKPGQ9ZG(*PBf9`G'&ME'8T$A"bD@jd)'&PG#jYB@YPBfpNC5JTZdN!!!%!!!! "`3!!!-%!!!"#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!![AYc"`!!!(4KBR0THQ8S!J!!!'N)!!!!D3%!!!"c$!!!!'C [ER4cCA4dD@jRFbJ%!!!!F`X!!!"3HA4SEfiY8f&ZFfN!!!!!D3N!!!!S!`!!!'N !!!!!D3!!!!"T!!!!!(--!!!!GfPZC'phBQpeEQ4c+!3!!!"Tk!%!!'Pi!!!!DH) %!!"TL`-!!(-,!!!!FR9ZAf&cAfeKD@jT!!!!!(-*!!!!Ff9XC@0dD@pZ+!)!!!" Tk3J!!'Rb#!!!-!!!!3!!!!("!!!!`3!!!%)(,)4X"$S!!!!F!$)!!&"j9e-!!!! +!)!!!!!!!!!(-k1N$hGTEQ4[Gb"cCA4dD@jRFr"R: --Emailer_-1257145820-- From erik@letterror.com Wed Mar 29 14:00:37 2000 From: erik@letterror.com (Erik van Blokland) Date: Wed, 29 Mar 2000 16:00:37 +0200 Subject: [Pythonmac-SIG] AECaptureParser, fixed Message-ID: <200003291408.QAA21644@leidschenveen.denhaag.dataweb.net> --Emailer_-1256708656 Content-Type: text/plain; charset="US-ASCII" Sorry, The previous AECaptureParser still imported morefindertools, this was unnecessary. This one is fixed. Erik --Emailer_-1256708656 Content-Type: application/mac-binhex40; name="AECaptureParser.py.hqx" (This file must be converted with BinHex 4.0) :%N&&3f&`G(9bC9"KFR0PFLj`H3"849K88'PNC3%!!!!XNJ!!!J0hrbFR*`e"480 KF(4eFQ93BA*cCA)JE@&VCA-JB5"LFQ&fC5"KG(4PEA"d)(4[)'0[ERCPFR3JG'K P)(4PH(3JEh9dF(9d$@pQ)(4SC5"fCA*j)'KKEQ4j)%aKFh0[)%0KF(4eFQ8J388 JBfpZG(*[E#"`B@jPE!eTER4[)'0XEh0P,@9ZEh9RD#"PH'9MGA4KBQaP)("jG'K [EL"MEf4P,Jd05@iJB5"bEh9ZC'&LEh9d)(GKH5""480KF(4eFQ93BA*cCA)JEfC QCA*c)(4SC5"hBANJG'mJGh*TG'8JE'PZCA-JEfBJ3A"`E'96Bh*TF(30B@jN)'0 [ERCPFR3JG'KPE5"dEb"`HA4SEfiJBfpNC5iJ6fjMC5"3HA4SEfjTFf9N,#"dD'8 JBfpNC5"MB@iJBQ8JE@&NC5"`FQ9dG'PPFL`0B@jN)'Pd)'0KEL"bG@iJGfPdD'p eG#"$BA"dGA*P)'pb)&0MFQP`G#"&C'PdEh)JBQ9TEQFJEh"PELi0$9P[G5"ZC@9 N)%aKFh0[)%0KF(4eFQ8J388JCR*[E5"#E(9PGfpbE'3k$@CdF$S[,fCdF#jLE(9 PGfpbE'3ZBfpY,daKFh0[-M8a,daKFh0[3f&`G(9bC8&&,QKaH!d06'&cFfmJ3f& `G(9bC5""45"`FQPZG(-JFh4bG@0dGA*PC#"KFf0TD5"bCA"bCA0PER4KG'P[ER- JD@iJB5"cE@&XE#"hD@jNEhFZ$8&c)(4SCA0P)(4bB@jcBh*TF(4c)'0KEL"LC5" fCA*j)'0[EA"XCAJX)'0eG#"KEQ3JF'&cG'8JG'mJ389$BA"dGA*P8'&bFf9b,#" TG#"`BA*cCA-JB@jN)(GbDA4PF`e`HA4SEfiJBfpNC5"dD'&d)(GTE'`X)(GSC@i JCAKPBh9dC@3X)'0KGA0P)(4SC5"cB@eP)'9fC@jdFb"dEb"SBA"`C@iZ$8Pd*h- JBQ9PEL"dCA0dC@3JGfPdD#"cEfeP)'K[GA0PD'pXC#"fBA*TCA4j)'9fC@jdFb` J55GY)(0eFQ8JG'KPFQ8JGfPXE#"LC5"dEfjc)(4SBA30C'pZ*h3JGfpbDbi0$8& XE#"[BQTPBh4c)'&bC5"MEfjfCA*dC@3JG'mJFh4KEQ4KFQ3JB@9dHA"PFbj2BQT PBh46F'9MD@CTCA)JD@jcG'&ZBf9c,Jd05'ph)(4[)(9cC6S0#6%Z)&0dBA*d)(4 SC5"$BA"dGA*P)(GTEQ4[G`d*-LiJ3f&eFf8JG'KP)'4PFfPbC@3JBA"`E'9PGQ9 ZG#"dEb"SBA"`C@i0#3NY)'*j)(GbDA4TEQFJB5"XD@jP)'pQ)'&`F'aPFf0bDA" d)'PZ)&0MFQP`G#"&C'PdEh)JB@jN)(*eEQjTEQFJDA3J+#%T$3N*,5"LH5"bC@0 [FQ4TEQFJFfpYC5"KBh4TEfiJD@iJ8f0bDA"d)%9NDA4[FL"KEQ3JFR9ZEQPZCb" TG!d*-biJ4QPZC#"dD'8JCACPER4c)'PZ)%0KF(4eFQ8k$3N*,5"YB@YP)(0eFQ8 JH@pe)'GPG#"dD'8JBA"`FQp`FQPKG'8JCACPER4c,#"MG@aX)'PQ)'jPBf9cFf& bH3d*#5dJFfpYCA4TE@9c)%0KF(4eFQ8JBQ&bCR-X)'TeFh3JFA9TG#"KEQ3JFh4 KFR3J3f&`G(9bC5"KCf&TEL`JFR9Z)'9fC@jdFb"KCf&TEJd*#5dJ389$BA"dGA* P8'&bFf9b)'0KEL"`FQpMCA0c)'eeE(4TF'aP)'9fC@jdFb!Y)'Pd)(GTE'`JDR9 cG#"YB@YP)'e[FQ8JBfpNC5i0#63Z)%0[F(NJB@jN)("KFh4P)'PZ)(4SDA-JFf0 bDA"d)'&ZC#"PH'9MGA4P$3Ne,L"*G#"hD@aX)("bD@jd)("jG'K[EL"MEf4P)(4 SBA3X)(GSC@iJCAKPBh9dC@3JFQ9MFQ9KG'9c)(4SC5"PGQ9ZG(-Z$3e&H'&YF'a P1Jd*4Qpb)'PZFh4KEQ0P)(4SC5"QEfaXEhGTEQFJE'PZC5"[CL""F("XC90MFQP `G#"TEL"6Bh*TF(3J4@4TG'pb$3N*#A4PE'`JBA"`E'PMBA4TEfiJ)NCTEQ4PFL) 0#3N*#A*PG(9bEL"KF("XD@0KG'P[EL"`FQpMCA0cCA-0#3N*C@jN)(4PE'`0#AG TE'`JFQ9cG@ad)'PZ)(4SC5"QEfaXEhGTEQFJG(*KER0MFQP`G$S0#3N*@f9fC@j d1L"dBA*RCA3p)NCTEQ4PFL)X)'0XBA0c2@0[FQ8X)'PN2@GPG'4G$3N*#5FY,5d Y*cT[BQSJHfC[FQdkD@jNH#`JGf&ZG$TdHA"P+("MBA!T,#"cC@aN1Q&LFfmSacB a0N-f3c)`b#NX)'CbEfdk*fjeE'`R+#Pp$3N*#9X[CACPER4G$3P'C@9N)'%JFh4 bD@jR)(GTG'JJG'KTFb!SB@jN)("PFQKKF(-JE@pbC5NJCACPER4c)(4[)%&&3f& `G(9bC9"KFR0PFJd*$90[E@8JEAPcG'9bD@9c1Jd*+L!*GfKKG#"TFb!R*R0eBQS R)#dJDA3JDA-JFf9ZG#"TEL"KEL"KBh4TGQ&dC5"PGQ9ZG$S**R0eBQSk*fjeE'` R+#N0#3P8D'8JB@0dDACKG'8JCACPER3JGfpbDh-JGfKPEL"dD'Pc)'Pc)'aPCR3 JEh9d,L"")("[Fh0TBQPXDA4j2`d*+JPZC@9NFb"dEb"NC@&X)(GTG'JJC@eLC@4 NC@3JB@aTBA0cCA-0$3dR*bF0AepfCA*cD@pZAemJ25!R-#i`-$)R$9pIBA9dD'p bAemJ25!RCACL*`d0$@PYF'pbG#"cG(*TEQFJ$3e[F'9ZG'&R)$dJ*hXR$@0XEh0 PG'&R)$dJ*hdR$3d0$@PYF'pbG#"KCA4[Efac$@PYF'pbG#"KCA4jF'9c$3eME'& cFb"PGQ9ZG(4KE'YPFLKKCA4[Efac,P4KE'Y8EbNk$3P`BA0c$3eNC@BJF(*[Bf9 cFf9c+#Nk$3NR*bG)C@a`CA)JCR9ZBh4TEfiJG'mJCf9d)(4SC5"XDA0d)'pQ)'0 eFR*PER3JF(*[Bf9cFf9c)'&ZC#"dD'9TFL"MFQ9KG'pbF`d*9'KTFb"MEf4P)(G KFb"YEh0dE(NJGh*TG(4PEL"LH5""480KF(4eFQ93BA*cCA)K)%Pd)'&TELGd)(" bCA4dH5`JBR9d)(4SBA3RFb"ZEh3JF(PdD'pZ*h-JCQ&eE(3K*bFR$3PdB@aVCA) J25"PGQ9ZG(4KE'YPFLJR68&$8bFT$3PIBA*RG@ePER4c)$dJHhd0#9pKG(4bD@* eG'9c)$dJHhd0#A!J25"EA3d*EQ&YCA-J25"EA3d*Bh*PBA4[FR-J25"EA3d*FQ9 cG@adFb!p)&YG$3NM)'CTFR0d)'GPG#"dD'8JE'PcG#"[CL"`FQpMCA0c)'jKE@9 c$3PIBA*RG@ePER4c@bFY,5dY*edJ25"KCA4jF'9c,NpLDQ9MG&0`C@0TCQPPFLK hB@jd2@&PG(P`CA-Z9(P`C5JRF'0KF#FT,!d*#3PQEh*Y25*TEQ4i)L`JFf9XC$e KCA4jF'9c,P9ZDfj[GfiS*f&LFfmR,#!LB@aX)#)T,#"QFMe1EfjP+3d*Ah*PF'a j,#"IBA*RG@ePER4c,#"IBA4dFQPLGA4PFb!p)(4KE'YPFLjcC@jN+#GMEh*P*b` J*fGPG'3R,#"IBA*RG@ePER4c,#"IBA4dFQPLGA4PFbN0#@PQ)&pKFQGeE@9ZG(- ZD'&cAfYPH5JRCA*bELFT1Jd*#A*KDA0P)'&PG'p[E(-Z4A*bEh)X)'&PG'p[E(- ZC'9MEf4PCA*bEh)SAf&bCh9YC@jdFbN0#@PQ)&pKFQGeE@9ZG(-ZD'&cAfYPH5J R,5dY,5FT1Jd*#A!J25"IBA*RG@ePER4c@bFY,5dY*ed0#@C[FL"`FQpM)'PZ)(! k$3N*EQ&YCA-ZBA"`C@jN+("bEf-ZFf9XC#N0#5-JG'KPEL"RCA3JG'KP)'aTFh3 JEfBJF(*[Bf9cFb"MFQ9KG'pbF`d*Af&bCh9YC@jdFb!p)(Yp$3PIBA4dFQPLGA4 PFb!p)(Yp$3P"4@pLDQ9MG&m`-#!p)'&PG(P`CA-Z6f*UC@0d8h"PBfPQD@9b+(G KER3pB@9dHA"PFbj8HA"P+#G`Bf&`*bNX)'C[FQdp)QPZC(JL,#"cC@aN2@&PG(P `CA-Z9@jVEQphELJRB@*cEbFX)#*KE'`J)LNX)'Cb28j[EQ8T$3P"4@pLDQ9MG&m `-5!p)'&PG(P`CA-Z6f*UC@0d8h"PBfPQD@9b+(GKER3pB@9dHA"PFbj8HA"P+#G `FQp`*bNX)'C[FQdp)R"bEh!L,#"cC@aN2@&PG(P`CA-Z9(P`C5JRCQ0bG#FT,#" QFMe"4@pLDQ9MG&m`-#N0#9pKFQGeE@9ZG(0E*bdY,5dRA5!p)%&&Ef*UC@0dAc! a$3PIFQ9`E(NX)&pKFQGeE@9ZG(-X)&pKG(4bD@*eG'9c)$dJG'&XDf9b,R0PEQ3 S*f0[FQ8R,#!RCf9dC#FX)&pKFQGeE@9ZG(-X)&pKG(4bD@*eG'9c+3d*D@BJAf& bCh9YC@jdFbjSBA0IDf9j+#GPFR*Z*bNk$3N*FQ&TFf8JB@9dEfpXFbj&FR*[FL` JB@9dEfpXFbjNC@0[C'9PFR*[FLKIBA*RG@ePER4c+3d*D@BJAf&bCh9YC@jdFbj SBA0IDf9j+#FY,5dY*bNk$3N*F#!p)&pKFQGeE@9ZG(0E*bdY,5dRA3d*CQpb)(" bEf-JD@iJF$S0#3PMFQ9KG'pbFbjKF("PEQ3SF(*[BbjdHA"P+3d*)b"dD'9Z)(" eG#"dD'8JE'PcG(-JG'pRCA4SCA)0#@C[FL"T)'PZ)(*KEQGP+'aPELKZB@ePFbN T1Jd*#A*PFh9XG(-ZBA"`C@jN+#KZB@ePFeYTA5`JBh*PBA4[FR0ED9dT+3d*FQ9 dGA*Z)(*PFh9XG(-0$3N*$@0XBA0c)%&&3f&`G(9bC9"KFR0PFMS0#5FR*f0[ERC PFR3JB5"MBA"dGA*PC#"KF("XC@9fC@jd,@4PFf0bDA"dD@pZ)'PZG'mJCAKPBh9 dB@*XC5"`HA4SEfiJBfpNC5FR*`d*C'9Q)&pID@jTG&pI+(0PE'BX)'&PG'9iG#N k$3N*Ff9XCLjKCA4PH(3J25"KCA4PH(30#3PcC@aQ,Q9fC@jdFb!p)&YG$3N*Ff9 XCLjKFQGeE@9ZG(-J25"lI3d*#A0PE'BZEf*UC@0dD@jNCAJJ25!`$3N*Ff9XCLj fBA*TEQ4PH#!p)$!0#3PcC@aQ,Q0eFR*PER4PGQ9ZG#!p)#"l*hCKFQPKBQaPFbF kHhdX)#GKFQGeE@9ZG(-R1RYp,#!REf*UC@0dFbFkHhep$3N*Ff9XCLj`BA*cC5J T$3N0#@4PCL"`BA*cC5KcC@aQ+6S0#3PcC@aQ,QaTEQ9c)$dJFh4bD@jR,R0`E'P d+(0PE'BZB@9dCAKd,#!RA'iR+3d*#@C[FL"X)'PZ)(0PE'BZE'PZCA-k$3N*#@P Q)'aE1MGG)$dp)#GECACPER3k*cS0#3N*#A0PE'BZCACPER4SC@&NCA)SE#N0#3N *C@aTCL"X@cShA5!p25!R@bpPGQ9ZG#Fk$3N*#3PTCL"XC@iSFf9XCLjMGA*bC@j dCACPER3T2$i`1Jd*#3N*#A0PE'BZCACPER4c,Q&`F'9ZC#KcC@aQ,Q0eFR*PER4 PGQ9ZG#N0#3N*#3PcC@aQ,Q0eFR*PER4PGQ9ZG#!p)(XRGQ&bD@&LE'9c*cTlI5` J*f&bCh9YC@jdFbFkHhdX)#G[BQTPBh4c*cTlIAd0#3N*#3PcC@aQ,QpLDQ9MG'P ZC'9i)$dJ-!d*#3PPE(0P1Jd*#3N*Ff9XCLjXD@jP+'`T$3N0#@4PCL"XD@jP+(0 PE'BX)(CKE(9P+6S0#3NR*bGTER4PFR"bCA3JE'PdCA*KE(-X)(CKFQPKBQaPFb` JE'PcG(-JCA4M,LFR*`d*#5-JFh4eCQBJD@iJ@b!JA5`JE#"TFh4c$3N*GQ&bFh4 KFR3J25"cG(*TEQFZCQPZC#KfB@aeC5`J*eXR+3d*#ACKFR0dEh!J25"cG(*TEQF ZCQPZC#KfB@aeC5`J*edR+3d*#@PQ)(CKFR0dBA*d)$`q)#da)'&ZC#"fBA*cG'p `)$`q)#da)'&ZC#"fBA*cG'p`2RCKFR0dBA*d1Jd*#3PfBA*TB@*XC5!p)(CKE(9 P@hCKFR0dBA*d1RCKFR0dEh!V-9d0#3N*EQ&YC5!p)#GKCACKFPmR+h0dFQPZCbj kCQPXE#KcC@aQ,RCKFQPZC'9i,#!b+3d*#3PcC@aQ,Q0eFR*PER4PGQ9ZG&XRGQ& bD@&LE'9c*eeEEQ&YC9dJ25"fBA*TB@*XC3d*#3PfB@aeC5!p)(CKE(9P@cTfBA* cG'&bG&dVEQ&YC5YfB@aeC9YfBA*cG'p`+c%kA3d*#3PcC@aQ,RCKFQPZC'9i)$d JFf9XCLjfBA*TEQ4PH#!V)$%0#3NM)(0dG@CQ)'PZ)-FJ)-J0#3NM)(4SCA0P)'& bC5!REh*ND@jKE#FJC'9cBh*TF(4[FR-JEfBJ0#"XCA4dCA)JBfpNCA-X)(0[)(4 bB@jcE'&dC3d*#ACKFR0dBA*d)$dJFh4bD@jR,QCTEQ3SGQ&XG@8X)#I(*bN0#3P fBA*cG'p`)$dJFh4bD@jR,QCTEQ3SGQ&XG@8X)#I)*bN0#3PTCL"fBA*cG'&bG#! m2L!Y-5"KEQ3JGQ&bFh4[F#!m2L!Y-5"KEQ3JGQ&bFh4[F$jfBA*cG'&bG$S0#3N *GQ&bD@&LE'8J25"fB@aeC9YfBA*cG'&bG#Xa1RCKFR0dEh"G$3N*#A3J25!R*`d *#3PQEh)JD5"TEL"bB@jRC5J`,#"XC@iSGQ&bD@&LE'8T,#!b+6S0#3N*#@-J25" PGQ&X+#F`H#FVGQ&bD@&LE'9ED5!k)'NV-PdT$3N*#3Pd)$dJG#!V)'0SFLKM+3d *#3N0#3N*EQ&YC5!p)#GKCACKFPmR+h0dFQPZCbjkCQPXE#KcC@aQ,RCKFQPZC'9 i,#!b+3d*#3PcC@aQ,Q0eFR*PER4PGQ9ZG&XRGQ&bD@&LE'9c*eeEEQ&YC9dJ25! R)LFJ+b"d)#XJ*b)R$3N*#ACKE(9P)$dJGQ&XG@9E1RCKFR0dBA*dA5YZB@eP+hC KE(9P@hCKFR0dEh!V-6TG$3N*#A0PE'BZGQ&bD@jNCAJJ25"cC@aQ,RCKFQPZC'9 i)#XJ-3d*#A"[Fb!p)(0dFQPZCbjQD@jN+(CKE(9P,#!R1LFT$3N*D@BJF'pc26d Y-6TbCA4eFQi0#3P[Db!p)$%0#3PhD'PXC5"[Db!m2L"1EfjP1Jd*#3PfB@aeC5` JEfXJ25"cC@aQ,R"KFR0PEf*UC@0d+(CKE(9P+3d*#A0PE'BZBh9bFQ9ZG'9fC@j d@bGKFQGeE@9ZG(-RA5jeF'4KG'8SFf9XCLjcF'aTG("KFR4c+(CKE(9P,#!R1LF T+3d*#3d*#5-JFQ9YEhCP)(4SC5!QFh9LDL"KFQGeE@9ZG$m0#3PTCL"cC@aQ,Q0 eFR*PER4PGQ9ZG&XRBA*RG@ePER4c*edZD'&cAfYPH5JR*R0eBQSR+6S0#3N*C'9 X)(0PE'BZBh9bFQ9ZG'9fC@jd@bGKFQGeE@9ZG(-RA9XR*R0eBQSRA3d*#3N0#3N M)'0SC@0V)'C[FL"KFQGeE@9ZG(-JE'9Z+'%T)$`J0#`JB@jN)("KC#"hDA4S)(0 `B@0PF`d*#@C[FL"V)'PZ)(0PE'BZBh9bFQ9ZG'9fC@jd@bGKFQGeE@9ZG(-RA5j VCAPc+#Nk$3N*#@PQ)'aPELKV+6`d1Jd*#3N*EQ9hDb!p)'XJ+b!S0#eXC@iSDbN T+LFJ*`d*#3N*Ff9XCLjMGA*bC@jdCACPER4E*f&bCh9YC@jdFbGG@fjPGfYG)$d JFf9XCLjMGA*bC@jdCACPER4E*f&bCh9YC@jdFbGG@fYG$3N*#3PNC@`JFf9XCLj MGA*bC@jdCACPER4E*f&bCh9YC@jdFbGG@fYG$3d*C'9Q)("KFR0PEf*UC@0d+(0 PE'BX)'pLDLNk$3N*B5`JBL!p)(0PE'BZCQPZC(4KCbK[BQST$3N*Fh4eCQBJ25" 1EfjP$3N*D@BJB6`q6QpZC5"KEQ3JBM`q6QpZC6S0#3N*Fh4eCQBJ25"[BQTEB6T LA3d*#3PZB@eP)$dJ*d&&Ef*UC@0dAbFVFh4bD@jR,RTQD@aX+(0PE'BZEf*UC@0 dD@jNCAJX)$)T$3N*#A0PE'BZBh9bFQ9ZG'9fC@jd@bG[BQTPBh4c*eeEEQ&YC9d J25"cC@aQ,R0`E'PdF'&bG(-SFh4eCQBX)#Fk*bN0#3N*Ef*U)$dJEf*U@cTK,69 G)#XJEQ&YC5!V)'pLDPYL+c%kA3d*#3PcC@aQ,QpLDQ9MG'PZC'9i)$dJFf9XCLj [BQTPBh4TEQ4PH#!V-3d*#A*PG(9bEL"[BQSX)(0dG@CQ$3N*$3PNC@BJEQ9iG'p `C@iSFf9XCL`JF'pc,#"dCAKd+6S0#3PbCA4eFQiJFh4bD@jR,QCTEQ3SG'9iG#` JEh"PER4KCb`JF'pc+3d*#3d*C'9Q)'jPH(4ME'pcC@3SFf9XCL`JF'pc,#"dCAK d+6S0#3PbCA4eFQiJFh4bD@jR,QCTEQ3SG'9iG#`JBfa[Ff9dB@FX)("[FbN0#3d *C'9Q)'jPH(4dB@FSFf9XCL`JF'pc,#"dCAKd+6S0#3PcG'&bG#!p)(0PE'BZEQ9 iG'p`C@iSF'pc,#"dCAKd+3d*#A0dEh!J25"cC@aQ,QjPH(4ME'pcC@3SF'pc,#" dCAKd+3d*#@PQ)(0dBA*d)$dp)#da1Jd*#3PTCL"cG'p`)$dp)#da1Jd*#3N*FQ9 dGA*Z)#da,#!Y-3d*#3PbCA4eFQiJ-#`JFh4[F!d*#@PQ)(0dBA*d)$`JFh4[F#" KEQ3JFh4KFR3m2Lda1Jd*#3PbCA4eFQiJ-5`JFh4KFR30#3PPE(0P1Jd*#3PbCA4 eFQiJ-#`JFh4[F!d*#3N*#3d*C'9Q)'CTEQ4dB@FSFf9XCL`JG'9iG#Nk$3N*F#! p)#da$3N*E'&cG#!p)%j[EQ8X6QpZC3d*#AGSD@aP)$%k$3N*#@YTEQ3X)(!J25" cC@aQ,QjPH(4dB@FSF#Xa,#"dCAKd+3d*#3PTCL"XBA0d@c"G26da)'&ZC#"VD@j N26d`1Jd*#3N*FQ9dGA*Z)'aKFh4E-9dVE'9Z+'p`C@jdB@FT,#"`$3N*#@PQ)#K VD@jN,#"`+5!p25!S,6%X)#da+6S0#3N*#@*bC@&V$3N*#@aKFh3pDfPZC#`JF!d *#A*PG(9bEL"1EfjP,#"1EfjP$3N0#@4PCL"cF'aTG("KFR4c+(0PE'BX)(4iG#` JFh"XDA4dCA)T1Jd*#A*PFb!p)(Yp$3N*F'&bG(-J25"cG(*TEQFZFh"XDA3SG(K d,#!R,#!R+3d*#@C[FL"`)'PZ)("KFR4c1Jd*#3P`Eh-J25"cG(*TEQFZCQPZC#K `,#"cF'aTG(4PFLN0#3N*Df9j)$dJFh4bD@jR,R0dFQP`+("E1R"[FedT$3N*#AC KE(9P)$dJFh4bD@jR,R0dFQP`+("EF'pc+c%kA5N0#3N*FQ9c@fYPH9dJ25"cC@a Q,QeKF#KfB@aeC5N0#3PbCA4eFQiJFQ9c$3N*$3PNC@BJCACPER4SC@&NCA)SFf9 XCL`JD'4b+6S0#3PcC@aQ,Q0eFR*PER4PGQ9ZG&XRCACPER3RA5!p)(0PE'BZFh" XDA4`BA*dFbKSC(*E0cSY-9dX)#Fp*bN0#3d*C'9Q)("bD@jdEf*UC@0d+(0PE'B X)'3T1Jd*#5FR*h"bD@jd)'pZC5"[BQTPBh3JBA-JF(PdD'pZ)'0[C'8R*bF0#3P d)$dJ@ed0#3P[BQSJ25"lI3d*#@pLDLjeF'4KG'8SC#N0#3Pd,Q&`F'9ZC#JLB@9 dHA"PFbj2BQTPBh46F'9MD@CTCA)S)LN0#3PTCL"[BQSZD'&cAfYPH5JRGf&ZG#F T1Jd*#3Pd,Q&`F'9ZC#JRGf&ZG$dR)#XJFf9XCLjYBA!SEf*U@bGhB@jd*edT+3d *#3PNC@`JEf*U@bGhB@jd*ed0#3N*G#jKF("PEQ3S*b`J*bN0#3PTCL"[BQSZD'& cAfYPH5JRCQpbE5FT1Jd*#3Pd,Q&`F'9ZC#JRCQpbE6dR)#XJB@4NFA9[G'9c+(0 PE'BZE@&`+'pLDPXRCQpbE5GG+5NT$3N*#@4PE#"[BQTE*fC[FQdRA3d*#3Pd,Q& `F'9ZC#JR,#!R+3d*#@PQ)'pLDLjSBA0IDf9j+#GcC@aN*bNk$3N*#A3ZBA"`C@j N+#GcC@aN25FJ+b"cC@aQ,QeKF#K[BQTE*h0PE'3RA5NT$3N*#@4PE#"[BQTE*h0 PE'3RA3d*#3Pd,Q&`F'9ZC#JR,#!R+3d*#@PQ)'pLDLjSBA0IDf9j+#GQFQpY*bN k$3N*#A3ZBA"`C@jN+#GQFMdR)#XJFf9XCLjYBA!SEf*U@bGQFQpY*edT+3d*#3P NC@`JEf*U@bGQFQpY*ed0#3PTCL"XC@iSEf*U,QYPHA-S+5NJ2L!`1Jd*#3P`FQP ZG#!R)b!R,#"JEf*UB!N*#3d*#A3ZBA"`C@jN+#)T)LN0#3PbCA4eFQiJFh4bD@j R,QT[D@iSG#`J*bFT$3N0#@4PCL"YBA!SFf9XCL`JG#Nk$3N**bFRE@&`)(0[E@8 J3f&`G(9bC5"cH@jdBAJJG'mJF(PdD'pZ$3N*E@&dBfKcG(*TEQFJ1L"E+'pXC#` JEQ9h+5`J,LiZ)&d0#3NR*bF0#3PY)$dJH`d*#3N**h4jF'8S*cSJ@bJRG(P`C5J R,#!LB@9dHA"PFbj8HA"P+#FL+5`J+#FT*b`J)LFT)LPG,!d*#3N*)LGZG@aX*bJ T)MSJ@bJL*fjeE'`R+#NL,#!L6QpZC5)TA5`0#3N*#5GKBR0[+#Fk)&XS*f&LFfm S*b`J)Q&PG(P`CA-Z9@jVEQphELJRB@*cEbFX)#)TA5`0#3N*#5I5*cS*@bJRdLF X)#FL*bPG,!d*#3N**p-R1JPE+#I6*b`J*b)R+9dX$3N*#3NR@bFk#9XS*eXR,#! R+#FT,#!S*b`J*b`J*b`R+9dX$3N*#3NRA5Fk#9XS*edR,#!R+5FTA5`0#3N*#5I (*cS*@bJRabFX)#,()LPG,!d*#3N**mJR1JPE+#I)*b`J)XJL+9dX$3N*#3N0#3N *I3d*#@C[FL"V)'PZ)'dZDf9jFbJT1Jd*#3PTCL"cG(*TEQFZCQPZC#Kd,#"V+5! m2L!Y-6S0#3N*#@C[FL"[E'3X)'jPGb"TEL"Y@fYG1Jd*#3N*#A!J25"cG(*TEQF ZFh"XDA3SG#`JEfaN+3d*#3N*#A3J25"cG(*TEQFZDQpTELK`,#"ZCAFT$3N*FQ9 dGA*Z)(30#3N0#@4PCL"`FQPZG'9fC@jd+(0PE'BX)'NT1Jd*#5FR*h"bD@jd)(4 SC5"PER4TFQ8JBf&`G(9bC@3JFf9aG@9ZBf8JBA-JF(PdD'pZ*bFR$3N*CACd)$d JFf9XCLjPGQ9ZG(0ED9d0#3PMEf4P)$dJ@ed0#3PMEf4P,Q&`F'9ZC#JRA'iM)(0 dBA*d)'9fC@jd)#FJ+b"JD@!J+b!R,#"dB@aVD@jR)(4[)#FJ+b"PGR4E*f9fC@j d*eeE*h4KFQGPG#GG+3d*#5-JCf9d)(4SC5"cD@GZBA4eFQ8JCQpb)(4SC5"dBA* RCA3JBA"`E'PMBA4TEfi0#3PMEf4P,Q&`F'9ZC#JRG'&XDf9b)$dJCACPER4dB@a VCA)S)LFVFf9XCLjRCA4dBA*RCA3SCACd@bGPGQ9ZG#GG@bGdBA*RCA3RA5NV*b) T*bN0#3PMEf4P,Q&`F'9ZC#JLAf&bCh9YC@jdFb!p)(Yp)LN0#3PMEf4P,Q&`F'9 ZC#JLAf&dG(*TBR9dCA-J25"lI5)T$3N*)b"hFQPdC5"dD'8JGQ&bD@&LE'9c$3N *CQpb)'YPH5`JGQ&XG@8JD@iJCACd@bGfBA*TB@*XCA-RA5jTG'9YFbJT1Jd*#3P fB@aeC5!p)'9fG&XRGQ&bD@&LE'9c*eeEDf9jA3d*#3PMEf4P,Q&`F'9ZC#KVCAN J+b!R)$dJ*b!V)(CKE(9P+3d*#5-JGh*TG'8JG'KP)'pLDQ9MG#"TEL"dD'8JFQP RD(3JEh*NCA)0#3P[BQTVCAPc)$dJCACd@bG[BQTPBh4c*edZDf9jFbJT$3N*Ef* UDf9jFbjcEh*d+#N0#3PQEh)JDf9j)'PZ)'pLDQYPHA-k$3N*#ACKE(9P)$dJCAC d@bG[BQTPBh4c*eeEDf9jA3d*#3PMEf4P,Q&`F'9ZC#KVCANJ+b!R)$dJ*b!V)(0 PE'BZF(*TER4[BQTPBh3SGQ&XG@8T+3d*#5-JG'KPEL"hFQPdC5"dD'8JBA*RG@e PER4c$3N*CQpb)'YPH5`JGQ&XG@8JD@iJCACd@bGKFQGeE@9ZG(-RA5jTG'9YFbJ T1Jd*#3PMEf4P,Q&`F'9ZC#JLAf&bCh9YC@jdFeXL)#XJB@4NFA9[G'9c+'YPH5N J+b!LA5!p)#)J+b"fB@aeC5!T$3N*BfpNC5jKF("PEQ3S*epbCA"XH5`JAf&bCh9 YC@jdFb`JAf&dG(*TBR9dCA-J25"dB@aVCA)ZFf9ZC#JL*bX0#3N*#@9fG&XRCAC PER3RA9XRBfaKFh-RA5XR)L`J)LFVCACd@bGPGQ9ZG#GG@bGTC#GG+bFL,#"IBA* RG@ePER4c,#"IBA4dFQPLGA4PFbNR+3d*#@0[C'8ZBA"`C@jN+#*TCL"IBA*RG@e PER4c,QKKFepVCANS*f9bFQiR+6SL+3d*#@0[C'8ZBA"`C@jN+#GFG(*KDA0P)'& PG'p[E(-Z4A*bEh)X)'&PG'p[E(-ZC'9MEf4PCA*bEh)SAf&bCh9YC@jdFbNR+3N 0#3PMEf4P,Q&`F'9ZC#JLD@BJAf&bCh9YC@jdFbjSBA0IDf9j+#FY,5dY*bNk)LN 0#3PMEf4P,Q&`F'9ZC#JLA(4`FQPZG#"IBA*RG@ePER4c@bFY,5dY*edL+3d*#@0 [C'8ZBA"`C@jN+#FM)'9ZC#"PGQ9ZG#!R)#XJB'PJ+3d*#A*PG(9bEL"cG(*TEQF ZDQpTELKMEf4P,#!RA'iR+3d*$3PNC@BJCf9dG'&bCf9d+(0PE'BX)(4KFQGPG#N k$3N**bFRCf9d)(4SC5"cD@GZBA4eFQ8JCQpb)(4SC5"dBA*RCA3JBA"`E'PMBA4 TEfiR*bF0#3PdBA*RCA3J25"dBA*RCA4E-6SY-9d0#3PTCL"dBA*RCA3J26dJ*dC TEQ4PFLFk$3N*#A*PG(9bEL!L68&$8b)0#3PKF("c)$dJF(*[Bf9cFf9c+#N0#3P QEh)JEQ&YC5`JBh*PBA4[FL"TEL"KF("c1Jd*#3PTCL"ZB@eP)$dp)(4KFQGPG$S 0#3N*#A*PG(9bEL"MFQ9KG'pb$3N*FQ9dGA*Z)#FU+LSU*`d*#3N0#@4PCL"YB@Y PBfpNC5KcC@aQ+6S0#3PMEf4P)$dJ@ed0#3PMEf4P,Q&`F'9ZC#JLA'jFEL)T$3N *BfpNC5jKF("PEQ3S)L-JBfpNC5"RC@jPFQ&dC@3JBRNJ389$BA"dGA*P8'&bFf9 b)(BJ)L!V)&pIGQ9bFfP[EPpI+3d*#@0[C'8ZBA"`C@jN+#)M)'PYF'pbG(-X)'4 PCQPZDA4TEfjc)'C[FL"KE'`JCACPER4c)LN0#3PMEf4P,Q&`F'9ZC#JLD@e`Eh* d)'&PG'p[E(-L+3d*#@0[C'8ZBA"`C@jN+#*TEA"[FR3JB@9dHA"PFb)T$3N*Bfp NC5jKF("PEQ3S)Q0XBA0c)'9fC@jdG'&XDf9b+'&PG'p[E(-Z9'&XDe4[+6SL+3d *#@0[C'8ZBA"`C@jN+#*FG("KFh-L+3d*#@0[C'8ZBA"`C@jN+#)M)(4SC5"PGQ9 ZG(-L+3d*#5-JF(*TER3JG'KP)'9fC@jdF`d*#@C[FL"T)'PZ)(*KEQGP+'aPELK cC@aQ,Q9fC@jdFbNT1Jd*#3PMEf4P,Q&`F'9ZC#KcC@aQ,R"bD@jdCACPER3SD5N T$3N*BfpNC5jKF("PEQ3S)L-JC@jN)'0[C'8L+3d*#A*PG(9bEL"cG(*TEQFZDQp TELKMEf4P,#!RA'iR+3d0C'9Q)'&NC(&eEh4PFbKdH(3T1Jd*FA9[G'9c)$dJ@bF L*b`J)LFLA3d*D@BJEQpd)(4iG&X`A5"TEL"aG@pdCA-JB@jN)'j[G#"dH(4E,6& G)'PZ)(&eEh4PFcS0#3PbCA4eFQiJ*b)R+h4iG#XR)LF0#A*PG(9bEL"dH(3J$3N 0#3d0$3d0)b!Y,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5d Y,5d0)`PdD'8JCQ&MG'pbH3dM)#dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5dY,5d Y,5dY,5dY,5dY,5dY,3d0)b"QEh)JD@jcG'&ZBf8X)(4SDA-JCACPER3JGf&c)'0 KF(4eFQ9N)'CbEfdJG'KP)&0MFQP`G#"&C'PdEh)JBA0VD@jR)(4SC5"'D@jNCA) JCQpb)'%JE'PcG#"[CL"KBh4TGQ8JF(*[Bf9cFf9c,Jd0CACPER4bC@0PF(4KBfa P)$dJ)L)L$3eECACPER3k)(4KFQGPG$dL4QPZC'9b)L`JBfaKFh-pBfpbC5`JD@3 pFf9dC&d0*bdY,5dR1QpLDL"lCQpbE6T`FQp`,#"hB@jd1R4jF'8SF(*[F#NX)(0 PE'3kG(P`C5K`Eh0Z+5`JCR*[E6T[BQSJHfC[FQdkEQ&YC5`JGf&ZG$TdHA"P+'0 QEf`T,#"cC@aN1Y*0Ee"KFMT%BA4K1N4PGN4PGMT3HA4SEfik8(PdD'pZ)$%Z05i bBc%k4AKdC@jcD@pZFp-X)'CbEfdk*fjeE'`R+#PpI5`JC'&dB6TE-6!`,#!a-&d 0@bpPGQ9ZG&d0$5)L)Jd0B@9d)$dJ389$BA"dGA*P8'&bFf9b+'9fC@jdFQ9MCA" dB@0XC5N0F(*TER3JB@9d,QeKDf9MEf4P+#R2e3!!!3!!!!("!!!!`3!!!%)!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!# pHh-(!!!!G'&LFfPkC5J#!!!!D3J!!!"T!3!!!(--!!!!CQpZG(0PG(4TEQGc+!3 !!!"c#`!!!&"jG'K[ELe6B@jcD3!!!!"T#3!!!#J$!!!!D3!!!!"T!!!!!'N!!!! !F``!!!"hD@jNEhGLEh9ZC(-S"!!!!'RS!3!!DAJ!!!"TiJ3!!'Q,!`!!F`X!!!" bG@jIBA0IE@&TEQN!!!!!F`N!!!"cC@aPBh4TEfiS!J!!!'Nq#!!!D6i)!!!`!!! "!!!!!F%!!!$"!!!!3JFXK'`%2J!!!"`!-J!!8(PA8`!!!!S!J!!!!!!!!!Fha-` 2GfPZC'ph)(0PG(4TEQGcTCi!: --Emailer_-1256708656-- From noboru.yamamoto@kek.jp Thu Mar 30 01:05:52 2000 From: noboru.yamamoto@kek.jp (Noboru Yamamoto) Date: Thu, 30 Mar 2000 10:05:52 +0900 Subject: [Pythonmac-SIG] Re: PythonCGISlave update References: <20000327133619.986851CDA8@dinsdale.python.org> Message-ID: <38E2A7BE.CC511F92@kek.jp> Just van Rossum wrote: > > At 10:37 PM +0900 28-03-2000, Noboru Yamamoto wrote: > >Thanks for a PythonCGIServer.py program. That is a program I wanted for > >a while. > >I added a little enhancement to the program. It now can send back data > >longer than > >32 KB to WebStar server. It uses a mechanism to send > >back data to the WWW server. > > Very cool! Thanks. > > >I have tested it with WebStar 4.0(demo version) and it should work with > >WebStar 3.x. > > I would like to incorporate the enhancements into PythonCGISlave, but I > wonder: do other web servers support the same mechanism? In other words, > can we turn this into something independant from WebStar? As it is now it > would blow up if the CGI would try send >32k of data under *any* other > server, since it explicitly start an AE connection with WebStar. I think > the incoming AE contains info about the web server, so I think we should > try and use that. I have NO exprerience with WWW server other than WebStar. It seems unlikely that other WWW server porgrams support "SEND_PARTIAL" mechanism as same way as WebStart. I will introduce new class, PythonCGIslaveFroWebStar for example, which inherite PythonCGISlave class from the PythonCGISlave.py. So that WebStar specific code will be separated from the PythonCGISlave.py. It should be noted that we need to put "if __name__ == '__main__': " statement in the PythonCGISlave.py. I will post the source when I finish a test. > > I've appended my latest working copy, which besides PythonCGISlave now also > contains BuildCGIApplet, which does what I've described earlier: it > converts a CGI script to an applet, but wrapped in PythonCGISlave's > compatibility layer. > > Just > Noboru From Benjamin.Schollnick@usa.xerox.com Thu Mar 30 15:28:33 2000 From: Benjamin.Schollnick@usa.xerox.com (Schollnick, Benjamin) Date: Thu, 30 Mar 2000 10:28:33 -0500 Subject: [Pythonmac-SIG] Macintosh Appletalk connections? Message-ID: <8B049D471C61D111847C00805FA67B1C04FE2EC7@usa0129ms1.ess.mc.xerox.com> Hi! I was wondering if there was any method to make a Appletalk "connection" to another server, from inside a python program. In otherwords, mount a server's drive, from inside a python program. I was considering FTPing, but I don't think the resource forks would be intact after I FTP it over. I had considered "Stuff"ing the files, but then I would have to "unstuff" the files after FTPing 'em. If anyone has any suggestions or work arounds, please feel free to let me know. The problem is simple, I need to retrieve files off a NT Server, using Python on the Mac. - Benjamin From jack@oratrix.nl Thu Mar 30 15:42:33 2000 From: jack@oratrix.nl (Jack Jansen) Date: Thu, 30 Mar 2000 17:42:33 +0200 Subject: [Pythonmac-SIG] Macintosh Appletalk connections? In-Reply-To: Message by "Schollnick, Benjamin" , Thu, 30 Mar 2000 10:28:33 -0500 , <8B049D471C61D111847C00805FA67B1C04FE2EC7@usa0129ms1.ess.mc.xerox.com> Message-ID: <20000330154234.1CE2A370CF2@snelboot.oratrix.nl> There may be an AppleEvent interface to mounting disks, in which case you could wrap this with gensuitemodule.py. But I wouldn't know where to look for the interface, maybe the network browser, maybe the finder, maybe somewhere else... For all practical uses I've had for mounting a remote disk it's always been the same disk, and then an alias is all you need: just access it and the remote disk will be mounted automatically by the system. From Python you'll need to call ResolveAlias, I guess. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From owrede@khm.de Thu Mar 30 16:04:06 2000 From: owrede@khm.de (Oliver Wrede) Date: Thu, 30 Mar 2000 18:04:06 +0200 Subject: [Pythonmac-SIG] MacASCII to ISO-Latin conversion Message-ID: Hello. This may be a FAQ, but I did not find any hint on this subject. I have the problem with Mac users typing special chars into an browser textarea to enter text into a UNIX based database. The ASCII code which is stored in the database is mac-ascii, which causes problems when processing the information in the database. I need a possibility in python to convert mac text to iso-latin and back so every text insterted into the database is clean ISO-Latin format. I looked at string.maketrans() and string.translate() in the Python Documentation, but I am not sure how to use these... Oliver .. Oliver Wrede .. owrede@khm.de .. Academy of Media Arts, Cologne .. Peter-Welter-Platz 2 . 50676 Koeln, Germany .. http://www.khm.de .. ICQ# 6580315 .. PGP 6.0 Fingerprint: .. 922C FFA2 9A07 5B8E CB2A 10A2 C370 6A62 2232 196C From just@letterror.com Thu Mar 30 17:53:38 2000 From: just@letterror.com (Just van Rossum) Date: Thu, 30 Mar 2000 18:53:38 +0100 Subject: [Pythonmac-SIG] Macintosh Appletalk connections? Message-ID: At 10:28 AM -0500 30-03-2000, Schollnick, Benjamin wrote: >Hi! > >I was wondering if there was any method to make a Appletalk "connection" to >another server, from inside a python program. In otherwords, mount a >server's >drive, from inside a python program. > >I was considering FTPing, but I don't think the resource forks would be >intact after I FTP it over. I had considered "Stuff"ing the files, but >then I would have to "unstuff" the files after FTPing 'em. > >If anyone has any suggestions or work arounds, please feel free to let me >know. > >The problem is simple, I need to retrieve files off a NT Server, using >Python >on the Mac. Another approach that might work for you is to mount the drive by hand once, than create an alias to it, and then later use findertools.launch(pathtoyouraliasfile). Just From erik@letterror.com Thu Mar 30 17:18:35 2000 From: erik@letterror.com (Erik van Blokland) Date: Thu, 30 Mar 2000 19:18:35 +0200 Subject: [Pythonmac-SIG] Macintosh Appletalk connections? Message-ID: <200003301726.TAA29419@leidschenveen.denhaag.dataweb.net> --Emailer_-1255980939 Content-Type: text/plain; charset="US-ASCII" -- Schollnick, Benjamin [3/30/00 5:28 PM]: >If anyone has any suggestions or work arounds, please feel free to let me >know. > >The problem is simple, I need to retrieve files off a NT Server, using >Python >on the Mac. The following works on my freshly installed OS9, and I can mount remote volumes with it. It uses the "Standard Additions" in the scripting additions folder in the system folder, but I don't know since which sys version these Standard Additions were present. It's not present in 8.0. I tested it opening a volume on a regular Mac server, also OS9. I don't know whether it would talk to NT, if your NT machine shows up in the Chooser it will probably work. YMMV, but I hope it helps. best, erik #made with the AECaptureParser import aetools import aetypes class eventtalker(aetools.TalkTo): pass def mountservervolume(volume, server, username, password): talker = eventtalker("MACS") _arguments = {} _attributes = {} _arguments["PASS"] = password _arguments["USER"] = username _arguments["SRVR"] = server _arguments['----'] = volume _reply, _arguments, _attributes = talker.send("aevt", "mvol", _arguments, _attributes) if _arguments.has_key('errn'): raise aetools.Error, aetools.decodeerror(_arguments) if _arguments.has_key('----'): return _arguments['----'] mountservervolume('Robot', 'Robot CE', 'erik', '1234') --Emailer_-1255980939 Content-Type: application/mac-binhex40; name="mountvolume.py.hqx" (This file must be converted with BinHex 4.0) :$Qe[G@jdGQpXG@eP,R"j!&4&@&43D@4P!3!!!!*H!!!#!jqq$@PYF'pbG#"KCA4 [Efac$@PYF'pbG#"KCA4jF'9c$@0XBA0c)'9fC@jdG'&XDf9b+'&PG'p[E(-Z9'& XDe4[+6S0#A"KFh-0$@4PCL"YEh9ZG(0PFRCPFRC[E(9YC5KfEfaeE@8X)(0PFRC PFL`JGA0PFQjKE@8X)("KFh0hEh*N+6S0#A4KE'YPFL!p)'9fC@jdG'&XDf9b+#* 03806)LN0#9pKFQGeE@9ZG(-J25"lI3d*Af&dG(*TBR9dCA-J25"lI3d*Af&bCh9 YC@jdFeXL8%&68b*G)$dJF'&cFhG[FQ30#9pKFQGeE@9ZG(0E)P9649)LA5!p)(9 cCA*ZB@eP$3PIBA*RG@ePER4c@b*68PC5)PdJ25"cCA*fCA)0#9pKFQGeE@9ZG(0 E*bdY,5dRA5!p)(C[E(9YC3d*Ah*PF'aj,#"IBA*RG@ePER4c,#"IBA4dFQPLGA4 PFb!p)(4KE'YPFLjcC@jN+#*KCACd)L`J)QefEf`L,#"IBA*RG@ePER4c,#"IBA4 dFQPLGA4PFbN0#@PQ)&pKFQGeE@9ZG(-ZD'&cAfYPH5JRCA*bELFT1Jd*#A*KDA0 P)'&PG'p[E(-Z4A*bEh)X)'&PG'p[E(-ZC'9MEf4PCA*bEh)SAf&bCh9YC@jdFbN 0#@PQ)&pKFQGeE@9ZG(-ZD'&cAfYPH5JR,5dY,5FT1Jd*#A*PG(9bEL"IBA*RG@e PER4c@bFY,5dY*ed0$@e[G@jdFf9bGQ9bGQpXG@eP+#G5Ef*[G#FX)#G5Ef*[G#" $45FX)#GPFQPV*b`J*c%b-bFT4e`!!!%!!!!"`3!!!-%!!!"#!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!![AYc"`!!!(4 KBR0THQ8S!J!!!'N)!!!!D3%!!!"c$!!!!'C[ER4cCA4dD@jRFbJ%!!!!F`X!!!" 3HA4SEfiY8f&ZFfN!!!!!D3N!!!!S!`!!!'N!!!!!D3!!!!"T!!!!!(--!!!!GfP ZC'phBQpeEQ4c+!3!!!"TeJ%!!'Nj!3!!D6-%!!"TDJ-!!(-,!!!!FR9ZAf&cAfe KD@jT!!!!!(-*!!!!Ff9XC@0dD@pZ+!)!!!"TA!)!!'PF!J!!-!!!!3!!!!("!!! !`3!!!%)$*R'S")S!!!!F!$)!!&"j9e-!!!!+!)!!!!!!!!!$-Df)$hGTEQ4[Gb" cCA4dD@jRFdif: --Emailer_-1255980939-- From billb@mousa.demon.co.uk Thu Mar 30 17:49:30 2000 From: billb@mousa.demon.co.uk (Bill Bedford) Date: Thu, 30 Mar 2000 18:49:30 +0100 Subject: [Pythonmac-SIG] Macintosh Appletalk connections? In-Reply-To: <8B049D471C61D111847C00805FA67B1C04FE2EC7@usa0129ms1.ess.mc.xerox.com > References: <8B049D471C61D111847C00805FA67B1C04FE2EC7@usa0129ms1.ess.mc.xerox.com > Message-ID: At 10:28 am -0500 30/03/00, Schollnick, Benjamin wrote: >Hi! > >I was wondering if there was any method to make a Appletalk "connection" to >another server, from inside a python program. In otherwords, mount a >server's >drive, from inside a python program. If you have system 8.5 or later run gensuitemodule on Standard Addition in the scripting additions folder. This will give you a mount_volume appleevent command This is the applescript dictonary for this command, the python one will be similar mount volume: Mount the specified AppleShare volume mount volume string -- the name or URL path (starting with 'afp://') of the volume to mount on server string -- the server on which the volume resides [in AppleTalk zone string] -- the AppleTalk zone in which the server resides [as user name string] -- the user name with which to log in to the server; omit for guest access [with password string] -- the password for the user name; omit for guest access -- Bill Bedford The trouble is that things *never* get better, they just stay the same, only more so. From jack@oratrix.nl Thu Mar 30 20:04:39 2000 From: jack@oratrix.nl (Jack Jansen) Date: Thu, 30 Mar 2000 22:04:39 +0200 Subject: [Pythonmac-SIG] MacASCII to ISO-Latin conversion In-Reply-To: Message by Oliver Wrede , Thu, 30 Mar 2000 18:04:06 +0200 , Message-ID: <20000330200445.31AEDE2673@oratrix.oratrix.nl> If you can wait until 1.6a1, due in a month or so, your problem will be solved, as Python will speak Unicode and has all the converters available. If you can't wait you'll have to dig up a translation table somewhere. Once you have such a table ... Hmm, let me check [... pom pom ...] No, I thought I might have one lying around. Anyway, once you have such a table you make a string with 256 characters, where the N-th character is 'M' if chr(N) in your source-charset should be translated to 'M' in your destination set. You pass this as an argument to string.translate and there you are. -- Jack Jansen | ++++ stop the execution of Mumia Abu-Jamal ++++ Jack.Jansen@oratrix.com | ++++ if you agree copy these lines to your sig ++++ www.oratrix.nl/~jack | see http://www.xs4all.nl/~tank/spg-l/sigaction.htm From mbarre@mac.com Fri Mar 31 04:14:13 2000 From: mbarre@mac.com (Matthew Barre) Date: Thu, 30 Mar 2000 22:14:13 -0600 Subject: [Pythonmac-SIG] tkinter Message-ID: I've seen posts on the newsgroup stating that Tkinter on the Mac is broken. I've just started playing with it the past few days, and I'm seeing some odd behavior, particularly with the Python IDE locking up when trying to exit a Tkinter application. Is it really broken or are people just doing something wrong? -Matt --------- "Luck will often enough save a man, if his courage hold." -Buliwyf From erik@letterror.com Fri Mar 31 08:09:45 2000 From: erik@letterror.com (Erik van Blokland) Date: Fri, 31 Mar 2000 10:09:45 +0200 Subject: [Pythonmac-SIG] Macintosh Appletalk connections? Message-ID: <200003310817.KAA15229@leidschenveen.denhaag.dataweb.net> --Emailer_-1257567820 Content-Type: text/plain; charset="US-ASCII" -- Schollnick, Benjamin [3/30/00 10:33 PM]: >I'll try this a little bit later 'morrow, and see how it works. >It sounds like this will do quite well. > >Trick question, though, how do I "eject" / "unmount" the >drive? heh heh, the other side of the problem. Alright, here is unmountvolume which unmounts volumes by name. Note it's not called unmountservervolume as it appears to also unmount local volumes. The Finder seems to be bothered if you unmount the volume right after mounting it, but that might just be my system. Have fun, Erik # code generated by AECaptureParser v 0.003 import aetools import aetypes class eventtalker(aetools.TalkTo): pass def mountservervolume(volume, server, username, password): talker = eventtalker("MACS") = {} attrs = {} args["PASS"] = password args["USER"] = username args["SRVR"] = server args['----'] = volume _reply, args, attrs = talker.send("aevt", "mvol", args, attrs) if args.has_key('errn'): raise aetools.Error, aetools.decodeerror(args) if args.has_key('----'): return args['----'] def unmountvolume(volume): talker = eventtalker("MACS") args = {} attrs = {} AEobject_00 = aetypes.ObjectSpecifier(want=aetypes.Type('cdis'), form="name", seld=volume, fr=None) args['----'] = AEobject_00 _reply, args, attrs = talker.send("fndr", "ptwy", args, attrs) if args.has_key('errn'): raise aetools.Error, aetools.decodeerror(args) if args.has_key('----'): return args['----'] mountservervolume('Robot', 'Robot CE', 'erik', '123') unmountvolume('Robot') --Emailer_-1257567820 Content-Type: application/mac-binhex40; name="mountvolume.py.hqx" (This file must be converted with BinHex 4.0) :$Qe[G@jdGQpXG@eP,R"j!&4&@&43D@4P!3!!!!2V!!!#!pGh)b"MEf4P)'GPEQ9 bBA4PC#"LH5""480KF(4eFQ93BA*cCA)JGL!`,M!`-`dM)'9bD@Y!E'9dG'9bFQp b,Q0[E3d0D@e`Eh*d)'&PG'p[E(-0D@e`Eh*d)'&PG(P`CA-0BfaKFh-JCACPER4 dB@aVCA)SB@9dEfpXFbj8B@aV9'mT1Jd*F'&cF`d0C'9Q)'e[G@jdFf9bGQ9bGQp XG@eP+(C[E(9YC5`JFf9bGQ9b,#"eFf9bEQ&YC5`JF'&cFhG[FQ3T1Jd*G'&XDf9 b)$dJCACPER4dB@aVCA)S)Ne"3e-L+3d*)$dJHhd0#@&dG(*c)$dJHhd0#@&bCh0 E)P""8e-LA5!p)("KFh0hEh*N$3PKFQGc@b*98d95)PdJ25"eFf9bEQ&YC3d*BA* RFeXL8e*@8L*G)$dJFf9bGQ9b$3PKFQGc@bFY,5dY*edJ25"fEfaeE@80#9pbCA" XH5`JBA*RFb`JBA4dFR-J25"dB@aVCA)ZFf9ZC#JLB@9fG#)X)#*YGQpX)L`JBA* RFb`JBA4dFR-T$3PTCL"KFQGc,QKKFepVCANS*f9bFQiR+6S0#3PbB@PcC5"KCA4 [Efac,N9bFQpb,#"KCA4[Efac,Q4PBfpNC@9bFQpb+'&bCh-T$3PTCL"KFQGc,QK KFepVCANS*bdY,5dR+6S0#3PbCA4eFQiJBA*RFeXR,5dY,5GG$3eNC@BJG@jYEh9 ZG(C[E(9YC5KfEfaeE@8T1Jd*G'&XDf9b)$dJCACPER4dB@aVCA)S)Ne"3e-L+3d *BA*RFb!p)(Yp$3PKG(4bFb!p)(Yp$3P"4@pLDQ9MG&m`-#!p)'&PG(P`CA-Z6f* UC@0d8h"PBfPQD@9b+(GKER3pB@9dHA"PFbj8HA"P+#GMC'Pc*bNX)'C[FQdp)Qj KE@8L,#"cC@aN2AC[E(9YC5`JCR)p6QpZC5N0#@&bCh0E*bdY,5dRA5!p)%&&Ef* UC@0dAc!`$3PIFQ9`E(NX)'&bCh-X)'&dG(*c)$dJG'&XDf9b,R0PEQ3S)QCZC() L,#!LF(4hH5)X)'&bCh-X)'&dG(*c+3d*D@BJBA*RFbjSBA0IDf9j+#GPFR*Z*bN k$3N*FQ&TFf8JB@9dEfpXFbj&FR*[FL`JB@9dEfpXFbjNC@0[C'9PFR*[FLKKFQG c+3d*D@BJBA*RFbjSBA0IDf9j+#FY,5dY*bNk$3N*FQ9dGA*Z)'&bCh0E*bdY,5d RA3d0E@peER4cCA*fCA*fEfaeE@8S*e*[BQpd*b`J*e*[BQpd)%0&*b`J*f9bD@X R,#!R-6)c*bN0G@jYEh9ZG(C[E(9YC5JR8QpLEh3R+6EG!!!"!!!!!F%!!!$"!!! !3J!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!,elF`F!!!"dB@*cDATP+!)!!!"T#!!!!'N"!!!!F``!!!"QEfjdFf9dG'P ZCh-S"!!!!(-,!!!!8(PdD'pZ,90KER0T!!!!!'N*!!!!+!-!!!"T!!!!!'N!!!! !D3!!!!"c$!!!!(GTEQ4[Gf*[G@jNFbJ%!!!!DGB"!!"T13%!!'Nc"!!!D@S$!!" c#`!!!(*eEPpKFepYB@PZD3!!!!"c#3!!!(0PE'9MG'P[ELJ#!!!!D8!!!!"T3!! !!$!!!!%!!!!"`3!!!-%!!!"##)CNi!8#!!!!(!!b!!"3H9G6!!!!#J#!!!!!!!! !#)CEc!phD@jNEhFJFf9dG'PZCh2,,!: --Emailer_-1257567820-- From kantel@mpiwg-berlin.mpg.de Fri Mar 31 09:44:47 2000 From: kantel@mpiwg-berlin.mpg.de (=?iso-8859-1?Q?J=F6rg?= Kantel) Date: Fri, 31 Mar 2000 11:44:47 +0200 Subject: [Pythonmac-SIG] tkinter Message-ID: >I've seen posts on the newsgroup stating that Tkinter on the Mac is broken. >I've just started playing with it the past few days, and I'm seeing some odd >behavior, particularly with the Python IDE locking up when trying to exit a >Tkinter application. Is it really broken or are people just doing something >wrong? No, Tkinter on the Mac isn't completely broken. It didn't work with the IDE - but this is documented. But there is also a strange behaviour of the installer (it hides files and put it on thew wrong places that Tkinter needs). Also strange is, that the Interpreter freezes by calling Tkinter interactively - but running the scripts by dropping the file over the interpreter is still working. I think I will make an How To during the weekend (if I find time between testing the wonderfull PythonCGISlave ;o) and if someone is willing to correct my awfull (d)english I will put it on my website. HTH J"org -- -------------------------------------------------------------------------- J"org Kantel Max-Planck-Institute for the History of Science Computer-Department kantel@mpiwg-berlin.mpg.de joerg@kantel.de Wilhelmstr. 44 http://www.mpiwg-berlin.mpg.de/staff/kantel/kantel.html D-10117 Berlin fon:+4930-22667-220 mobil:+0170-9023970 fax:+4930-22667-299 -------------------------------------------------------------------------- From seanh@unforgettable.com Fri Mar 31 12:42:07 2000 From: seanh@unforgettable.com (Sean Hummel ) Date: Fri, 31 Mar 2000 12:42:07 +0000 (GMT) Subject: [Pythonmac-SIG] Raw Ethernet examples? In-Reply-To: <20000330200445.31AEDE2673@oratrix.oratrix.nl> Message-ID: Does anyone have code which shows how to use raw Ethernet packets in place of IP? I am interested in using this in order to write a server client package where the client detects the server by sending a broadcast package which is then responded to by all the servers. ------------------------------------------------ Children are natural mimics who act like their parents despite every effort to teach them good manners. ================================================ ____________seanh@unforgettable.com_____________ ------------------------------------------------ From jwmurphy1@att.com Fri Mar 31 17:48:01 2000 From: jwmurphy1@att.com (James W. Murphy) Date: Fri, 31 Mar 2000 12:48:01 -0500 Subject: [Pythonmac-SIG] RE: Macintosh TCL/Tk rooted Python GUIs Message-ID: <38E4E4D1.4C6BFACC@att.com> Kelvin: Which Tk/TCL stuff from Scriptics did you use? Some choices (of binaries) are: mactk8.0.3.sea.hqx mactk8.0.4.sea.hqx mactk8.0.5.sea.hqx mactk8.1a2.sea.hqx mactk8.2.1.sea.hqx MacTk8.2.Final.PPC.sea.hqx MacTk8.3.0.sea.hqx -- jim m.