Guido van Rossum [Tue, 13 Oct 1998 20:02:39 +0000 (20:02 +0000)]
Perhaps a controversial change: when reporting a callback exception,
assign the exception info to sys.last_{type,value,traceback}. That
way, an introspective Tkinter app can inspect its own stack trace.
(The controversy is that it would keep some objects alive, but that's
probably no big deal.)
Guido van Rossum [Mon, 12 Oct 1998 16:26:22 +0000 (16:26 +0000)]
Looks like I didn't test this interactively. The EventHook() code was
broken; it asked for the current thread state when there was none.
Fixed by using the saved event_tstate.
Guido van Rossum [Sat, 10 Oct 1998 18:48:31 +0000 (18:48 +0000)]
Initial checking of Tk-based Python IDE.
Features: text editor with syntax coloring and undo;
subclassed into interactive Python shell which adds history.
Patch by Jonathan Giddy (with some cleanup by me) to always use the
thread state of the thread calling mainloop() (or another event
handling function) rather than the thread state of the function that
created the client data structure.
Barry Warsaw [Fri, 9 Oct 1998 16:39:58 +0000 (16:39 +0000)]
Document the new list.extend() method. Interesting enough, the
canonical definition of extend() is very similar to append() except
that the former doesn't list-ify the argument!
Implement new format character 't#'. This is like s#, accepting an
object that implements the buffer interface, but requires a buffer
that contains 8-bit character data. Greg Stein.
Add a new member to the PyBufferProcs struct, bf_getcharbuffer. For
backward compatibility, this member should only be used (this includes
testing for NULL!) when the flag Py_TPFLAGS_HAVE_GETCHARBUFFER is set
in the type structure, below. Note that if its flag is not set, we
may be looking at an extension module compiled for 1.5.1, which will
have garbage at the bf_getcharbuffer member (because the struct wasn't
as long then). If the flag is one, the pointer may still be NULL.
The function found at this member is used in a similar manner as
bf_getreadbuffer, but it is known to point to 8-bit character data.
(See discussion in getargs.c checked in later.)
As a general feature for extending the type structure and the various
structures that (may) hang off it in a backwards compatible way, we
rename the tp_xxx4 "spare" slot to tp_flags. In 1.5.1 and before,
this slot was always zero. In 1.5.1, it may contain various flags
indicating extra fields that weren't present in 1.5.1. The only flag
defined so far is for the bf_getcharbuffer member of the PyBufferProcs
struct.
Note that the new spares (tp_xxx5 - tp_xxx8), once they become used,
should also be protected by a flag (or flags) in tp_flags.
For 1.5.2a2.
Install zlib.dll in DLLs instead of windows32 system directory.
Install freeze, webchecker and versioncheck tools.
Add Content type: text/plain registry keys for .py, .pyw.
Add file type .pyo (same as .pyc).
Changes to support other object types besides strings
as the code string of code objects, as long as they support
the (readonly) buffer interface. By Greg Stein.
BSDI specific patches, inspired by Nigel Head and otto@mail.olympus.net.
Also (non-BSDI specific):
- Change the CHECK_STATUS() macro so it tests for nonzero error codes
instead of negative error codes only (this was needed for BSDI, but
appears to be correct according to the PTHREADS spec).
- use memset() to zero out the allocated lock structure. Again, this
was needed for BSDI, but can't hurt elsewhere either.
Barry Warsaw [Wed, 7 Oct 1998 03:36:58 +0000 (03:36 +0000)]
Moved the main pynche.py file to Main.py. Added minimal driver
scripts pynche.py and pynche.pyw for Unix and Windows startup
respectively. Document the .pyw file in the README.