Barry Warsaw [Fri, 25 Feb 2000 21:54:19 +0000 (21:54 +0000)]
Changes inspired by Randall Hooper to allow callbacks when an
OptionMenu is modified. Somewhat rewritten and elaborated by myself.
class _setit: The constructor now takes an optional argument
`callback' and stashes this in a private variable. If set, the
__call__() method will invoke this callback after the variable's value
has changed. It will pass the callback the value, followed by any
args passed to __call__().
class OptionMenu: The constructor now takes keyword arguments, the
only one that's legally recognized is `command', which can be set to a
callback. This callback is invoked when the OptionMenu value is set.
Any other keyword argument throws a TclError.
Guido van Rossum [Fri, 25 Feb 2000 19:26:31 +0000 (19:26 +0000)]
Pat Knight:
Solaris 2 has stub implementations of the POSIX thread functions such as
pthread_detach in libc. This means that configure tries to use them without
-lpthread, then the test of pthread_create fails and the configuration
falls back to the Solaris thread library. This patch moves the test for
pthread_create in -lpthread ahead of the test for pthread_detach in libc.
The patch also ensures that -lpthread is at the start of the library list
when linking, to pick up POSIX thread semantics for fork (see below).
Justification.
Use of POSIX threads on Solaris ensures that the fork() call only runs the
thread that called fork() in the child. This is desirable to prevent (for
example) parent server or database threads running in the child. Sun's
-lthread library uses a traditional fork() which replicates all the
parent's threads in the child. I find this undesirable.
Digression.
The configure.in seems to always test for -lthread even if a POSIX library
is found. I'm not enough of a configure.in wizard to decide whether this is
desirable or how to fix it. It is also irrelevant to this patch - I just
spotted it while testing.
End of Digression.
Guido van Rossum [Fri, 25 Feb 2000 19:25:05 +0000 (19:25 +0000)]
Test case for fork1() behavior.
Only the main thread should survive in the child after a fork().
Guido van Rossum [Fri, 25 Feb 2000 17:51:00 +0000 (17:51 +0000)]
Delete references to _SC_AIO_LIST_MAX; it appears that that symbol was
just a typo in some Linux header; the real symbol is
_SC_AIO_LISTIO_MAX.
Guido van Rossum [Fri, 25 Feb 2000 16:34:11 +0000 (16:34 +0000)]
Gerrit forgot to remove the "import string".
Fred Drake [Fri, 25 Feb 2000 16:14:08 +0000 (16:14 +0000)]
Gerrit Holl's patch to move attribution from the docstring to a
comment. <gerrit@nl.linux.org>
Guido van Rossum [Fri, 25 Feb 2000 11:48:42 +0000 (11:48 +0000)]
Fix a couple broken append() calls, spotted by Tim.
Guido van Rossum [Fri, 25 Feb 2000 11:46:50 +0000 (11:46 +0000)]
Fix a couple dozen broken ci.append(x, y, z) calls, spotted by Tim.
Guido van Rossum [Fri, 25 Feb 2000 11:44:03 +0000 (11:44 +0000)]
Fix a broken r.append(name, value) call, spotted by Tim.
Guido van Rossum [Thu, 24 Feb 2000 21:48:29 +0000 (21:48 +0000)]
OKOK, Greg's right, I should've used the :name option in the argument
format strings.
Guido van Rossum [Thu, 24 Feb 2000 15:26:30 +0000 (15:26 +0000)]
Peter Funk:
This patch allows building the Python 'mpzmodule' under SuSE Linux
without having to install the source package of the GMP-libary.
The gmp-mparam.h seems to be an internal header file. The patch
shouldn't hurt any other platforms.
Guido van Rossum [Thu, 24 Feb 2000 15:23:03 +0000 (15:23 +0000)]
Made all list methods use PyArg_ParseTuple(), for more accurate
diagnostics.
*** INCOMPATIBLE CHANGE: This changes append(), remove(), index(), and
*** count() to require exactly one argument -- previously, multiple
*** arguments were silently assumed to be a tuple.
Guido van Rossum [Thu, 24 Feb 2000 15:01:43 +0000 (15:01 +0000)]
Moshe Zadka:
Added docstrings to tkSimpleDialog.py
Greg Ward [Thu, 24 Feb 2000 03:17:43 +0000 (03:17 +0000)]
Fix from est@hyperreal.org: missing initialize in 'find_defaults()'.
Guido van Rossum [Thu, 24 Feb 2000 02:26:51 +0000 (02:26 +0000)]
Mark Favas discovered this: getatime() accidentally returned the MTIME!
This fixes PR#211.
Guido van Rossum [Thu, 24 Feb 2000 02:24:50 +0000 (02:24 +0000)]
Piers Lauder:
A change in my last patch could, under certain circumstances,
cause a loop if the connection to the server dropped while
waiting for a command completion. I've changed the code to
re-raise the error after possible debugging output.
Andrew M. Kuchling [Wed, 23 Feb 2000 22:23:17 +0000 (22:23 +0000)]
Add tests to exercise sequence operations (multiplication, indexing,
slicing) using long integers
Andrew M. Kuchling [Wed, 23 Feb 2000 22:21:50 +0000 (22:21 +0000)]
Allow using long integers as arguments to PyObject_GetItem(), _SetItem(),
and _DelItem().
In sequence multiplication by a long, only call PyErr_Occurred() when the
value returned is -1.
Andrew M. Kuchling [Wed, 23 Feb 2000 22:18:48 +0000 (22:18 +0000)]
Allow using long integers as slice indexes
Fred Drake [Wed, 23 Feb 2000 15:47:16 +0000 (15:47 +0000)]
dict_has_key(): Accept only one parameter. PR#210 reported by
Andreas Jung <ajung@sz-sb.de>.
Fred Drake [Wed, 23 Feb 2000 15:44:58 +0000 (15:44 +0000)]
Added entry for libtabnanny.tex.
Fred Drake [Wed, 23 Feb 2000 15:44:34 +0000 (15:44 +0000)]
Added dependency on libtabnanny.tex.
Fred Drake [Wed, 23 Feb 2000 15:44:08 +0000 (15:44 +0000)]
Initial version from Peter Funk <pf@artcom-gmbh.de>, with minor
consistency changes and a note that the API may change in the future.
Guido van Rossum [Wed, 23 Feb 2000 15:34:43 +0000 (15:34 +0000)]
Deleting tabpolice.py; it was superceded by tabnanny.py long ago.
Guido van Rossum [Wed, 23 Feb 2000 15:33:52 +0000 (15:33 +0000)]
Moved tabnanny.py to standard library status.
Guido van Rossum [Wed, 23 Feb 2000 15:32:19 +0000 (15:32 +0000)]
Added tabnanny.py, by Tim Peters, formerly from Tools/scripts, to the
standard library. Added some comments:
# XXX Note: this is now a standard library module.
# XXX The API needs to undergo changes however; the current code is too
# XXX script-like. This will be addressed later.
Fred Drake [Tue, 22 Feb 2000 18:20:03 +0000 (18:20 +0000)]
This branch is for 1.6 & forward.
Guido van Rossum [Tue, 22 Feb 2000 00:19:58 +0000 (00:19 +0000)]
Added a new command: Check module (Alt-F5) It does a full syntax check
of the current module. It also runs the tabnanny to catch any
inconsistent tabs.
Also did a little bit of refactoring: added an errorbox() method to
simplify the display of error dialogs.
Jeremy Hylton [Mon, 21 Feb 2000 22:46:00 +0000 (22:46 +0000)]
satisfy the tabnanny (thanks to MH for noticing the problem)
Fred Drake [Mon, 21 Feb 2000 18:19:06 +0000 (18:19 +0000)]
What used to be tp_xxx4 is now tp_flags; set it to Py_TPFLAGS_DEFAULT.
Fred Drake [Mon, 21 Feb 2000 17:59:48 +0000 (17:59 +0000)]
Remove comment that Guido agree's doesn't make sense:
PyEval_EvalCode() is *not* a "backward compatible interface", it's the
one to use!
Fred Drake [Mon, 21 Feb 2000 17:20:16 +0000 (17:20 +0000)]
Script to help locate markup that LaTeX2HTML has a problem with.
Guido van Rossum [Mon, 21 Feb 2000 16:50:31 +0000 (16:50 +0000)]
Mark pointed out a buglet in his patch: i < _sys_nerr isn't strong
enough, it could be negative. Add i > 0 test. (Not i >= 0; zero isn't
a valid error number.)
Jack Jansen [Mon, 21 Feb 2000 11:07:37 +0000 (11:07 +0000)]
Added FreeMem, MaxBlock and CompactMem calls. The values returned by these are lower bounds in the Python case (as malloc doesn't return memory to the heap) but they can be used to decide when to give low-memory warnings.
Greg Stein [Sat, 19 Feb 2000 13:36:23 +0000 (13:36 +0000)]
add TODO section
Andrew M. Kuchling [Fri, 18 Feb 2000 19:16:45 +0000 (19:16 +0000)]
Patch from Vladimir Marangozov <marangoz@python.inrialpes.fr>
The same problem (mixed mallocs) exists for the pcre stack.
The buffers md->... are allocated via PyMem_RESIZE in grow_stack(),
while in free_stack() they are released with free() instead of
PyMem_DEL().
Andrew M. Kuchling [Fri, 18 Feb 2000 18:30:01 +0000 (18:30 +0000)]
Patch from Vladimir Marangozov <marangoz@python.inrialpes.fr>:
The buffers self->regex and self->regex_extra are allocated in
pcre_compile() and pcre_study() via pcre_malloc, but are released
via free() instead of pcre_free.
Greg Stein [Fri, 18 Feb 2000 13:04:10 +0000 (13:04 +0000)]
reduce fsimp coupling: provide fs_imp param to ImportManager constructor,
add clsFilesystemImporter class attribute, alter handling of suffix list
convert suffix importers to funcs rather than instances
remove backwards compat code: Importer.install and 2-tuple get_code()
result values
Greg Stein [Fri, 18 Feb 2000 12:03:40 +0000 (12:03 +0000)]
shift demo importers to importers.py (destined for Demo/ ?)
switch to isinstance() rather than direct type comparisons
removing chaining concept
update ImportManager.install() to take an optional namespace to install
itself in. this will be useful for setting up rexec environments.
minor comment nits
Greg Ward [Fri, 18 Feb 2000 00:36:20 +0000 (00:36 +0000)]
Changed all references to command methods 'set_default_options()' and
'set_final_options()' to 'initialize_options()' and 'finalize_options()'.
Greg Ward [Fri, 18 Feb 2000 00:35:22 +0000 (00:35 +0000)]
Renamed 'set_default_options()' to 'initialize_options()', and
'set_final_options()' to 'finalize_options()'.
Greg Ward [Fri, 18 Feb 2000 00:26:23 +0000 (00:26 +0000)]
Changed references to the command class 'options' attribute to 'user_options'.
Related docstring changes.
Unrelated comment changes.
Greg Ward [Fri, 18 Feb 2000 00:25:39 +0000 (00:25 +0000)]
Renamed all 'options' class attributes to 'user_options'.
Greg Ward [Fri, 18 Feb 2000 00:14:21 +0000 (00:14 +0000)]
Command classes are now named identically to their commands, so reflect this
in 'find_command_class()' method.
Greg Ward [Fri, 18 Feb 2000 00:13:53 +0000 (00:13 +0000)]
Renamed all command classes so they're exactly the same as the name of the
command itself: no more of this "FooBar class for foo_bar command"
silliness.
Greg Ward [Fri, 18 Feb 2000 00:11:52 +0000 (00:11 +0000)]
Changed 'dist' to 'sdist'.
Greg Ward [Thu, 17 Feb 2000 23:56:15 +0000 (23:56 +0000)]
The 'sdist' command to create a source distribution. This is derived from the
old 'dist' command, but the code for dealing with manifests is completely
redone -- and renaming the command to 'sdist' is more symmetric with the
soon-to-exist 'bdist' command.
Greg Ward [Thu, 17 Feb 2000 23:54:55 +0000 (23:54 +0000)]
The 'dist' command is dead -- long live the 'sdist' command!
Jeremy Hylton [Thu, 17 Feb 2000 22:58:54 +0000 (22:58 +0000)]
changes to _lookupName
- removed now (happily) unused second arg
- need to verify results of [].index are correct; for building consts,
need to have same value and same type, e.g. 2 not the same as 2L
Jeremy Hylton [Thu, 17 Feb 2000 22:09:35 +0000 (22:09 +0000)]
the previous quick hack to fix def foo((x,y)) failed on some cases
(big surprise). new solution is a little less hackish.
Code gen adds a TupleArg instance in the argument slot. The tuple arg
includes a copy of the names that it is responsble for binding. The
PyAssembler uses this information to calculate the correct argcount.
all fix this wacky case: del (a, ((b,), c)), d
which is the same as: del a, b, c, d
(Can't wait for Guido to tell me why.)
solution uses findOp which walks a tree to find out whether it
contains OP_ASSIGN or OP_DELETE or ...
Jeremy Hylton [Thu, 17 Feb 2000 22:06:20 +0000 (22:06 +0000)]
add varargs and kwargs flags to Lambda nodes
Jeremy Hylton [Thu, 17 Feb 2000 17:56:29 +0000 (17:56 +0000)]
satisfy the tabnanny
fix broken references to filename var in generateXXX methods
Fred Drake [Thu, 17 Feb 2000 17:45:52 +0000 (17:45 +0000)]
Update the description of int() to include the radix parameter;
omission noted on c.l.py by Aahz Maruch.
Swapped the order of the descriptions of int() and intern() so that
int() comes first (the functions are in alphabetic order).
Fred Drake [Thu, 17 Feb 2000 17:30:40 +0000 (17:30 +0000)]
Typo in a comment: "wheter" --> "whether"
Guido van Rossum [Thu, 17 Feb 2000 17:12:39 +0000 (17:12 +0000)]
Patches by Piers Lauder.
Reasons for patches:
1st patch (15,21):
version change
2nd patch (66,72):
This is a patch I found in a Zope product release (quite by accident!).
It relaxes the conditions for matching a literal. I've looked over the
logic, and tested it, and it seems sensible.
3rd patch (117,123):
It appears the quoting matcher was too general, and that the IMAP4
protocol requires characters like ':' in commands to be unquoted.
(This is the patch already sent to Guido.)
4th patch (699,705):
Spelling correction in comment.
5th patch (753,761):
Another patch from the Zope product. It seems that some IMAP4 servers
produce unexpected responses in the middle of valid command/response
sequences. This patch ignores the unexpected responses in this
situation. (How I wish users would send me bug reports with examples!).
last 2 patches: (1015,1028) (1038,1044):
Minor improvements to test code.
Guido van Rossum [Thu, 17 Feb 2000 16:14:16 +0000 (16:14 +0000)]
Add primitive customization of window size and font.
A few alternative selections can be made by changing "if 0" to "if 1".
Guido van Rossum [Thu, 17 Feb 2000 15:19:15 +0000 (15:19 +0000)]
Patch by Mark Hammond:
* Changes to a recent patch by Chris Tismer to errors.c. Chris' patch
always used FormatMessage() to get the error message passing the error code
from errno - but errno and FormatMessage use a different numbering scheme.
The main reason the patch looked OK was that ENOFILE==ERROR_FILE_NOT_FOUND -
but that is about the only shared error code :-). The MS CRT docs tell you
to use _sys_errlist()/_sys_nerr. My patch does also this, and adds a very
similar function specifically for win32 error codes.
Guido van Rossum [Thu, 17 Feb 2000 15:18:10 +0000 (15:18 +0000)]
Changes by Mark Hammond related to the new WindowsError exception.
Guido van Rossum [Thu, 17 Feb 2000 15:17:18 +0000 (15:17 +0000)]
Declarations related to new WindowsError exception.
Guido van Rossum [Thu, 17 Feb 2000 15:12:01 +0000 (15:12 +0000)]
Added WindowsError, for Mark Hammond's extensions.
Guido van Rossum [Wed, 16 Feb 2000 21:13:37 +0000 (21:13 +0000)]
Added docs for new crc32() function. By Jim Ahlstrom.
(Fred, please check.)
Guido van Rossum [Wed, 16 Feb 2000 21:13:06 +0000 (21:13 +0000)]
Added test for new crc32() function.
Guido van Rossum [Wed, 16 Feb 2000 21:11:52 +0000 (21:11 +0000)]
Patch by Jim Ahlstrom to add crc32, a useful checksum function
(e.g. used for ZIP files).
The patch includes code that says:
+ Copyright (C) 1986 Gary S. Brown. You may use this program, or
+ code or tables extracted from it, as desired without restriction.
My interpretation (and Jim's) is that Gary S Brown has no claims under
copyright, patent or other rights or interests. Lawyers might disagree.
Guido van Rossum [Wed, 16 Feb 2000 01:22:35 +0000 (01:22 +0000)]
The 0.5 release happened on 2/15, not on 2/14. :-)
Jeremy Hylton [Wed, 16 Feb 2000 00:55:44 +0000 (00:55 +0000)]
support for arglists with implicit tuple unpacks
- added a number of support methods to generate code just before the
body
- hack protocol for communicating number of args to PyAssembler
fix TryExcept generation for case where exception handler has no body
fix visitAssAttr
add comment about incomplete visitAssName
stop using the ExampleASTVisitor
change script invocation to accept a list of .py files (e.g. Lib/*.py)
Jeremy Hylton [Wed, 16 Feb 2000 00:51:37 +0000 (00:51 +0000)]
more robust assignment of lineno for keyword args
get the lineno from the name of the keyword arg
example of case that didn't work--
def foo(x, y, a = None,
b = None):
Jeremy Hylton [Wed, 16 Feb 2000 00:50:29 +0000 (00:50 +0000)]
fix argcount generation for arg lists containing tuple unpacks
this is sort of a hack
Jeremy Hylton [Wed, 16 Feb 2000 00:49:47 +0000 (00:49 +0000)]
add flatten helper function
Jeremy Hylton [Tue, 15 Feb 2000 23:45:26 +0000 (23:45 +0000)]
finish first impl of code generator
add support for nodes TryExcept, TryFinally, Sliceobj
fix visitSubscript to properly handle x[a,b,c]
Jeremy Hylton [Tue, 15 Feb 2000 23:43:19 +0000 (23:43 +0000)]
fix creation of Ellipsis node
Jeremy Hylton [Tue, 15 Feb 2000 21:59:50 +0000 (21:59 +0000)]
add a little debugging support when new.code raises SystemError
Jeremy Hylton [Tue, 15 Feb 2000 21:57:14 +0000 (21:57 +0000)]
no real change -- testing syncmail
Jeremy Hylton [Tue, 15 Feb 2000 21:30:48 +0000 (21:30 +0000)]
add line numbers to nodes in the except clause (when possible)
Jeremy Hylton [Tue, 15 Feb 2000 21:30:00 +0000 (21:30 +0000)]
tidy up tryexcept and tryfinally nodes
Guido van Rossum [Tue, 15 Feb 2000 19:11:26 +0000 (19:11 +0000)]
A bit restructured.
Guido van Rossum [Tue, 15 Feb 2000 18:30:58 +0000 (18:30 +0000)]
Oops, somehow the initial checkin was botched. :-(
Guido van Rossum [Tue, 15 Feb 2000 18:20:28 +0000 (18:20 +0000)]
Added some clarifications.
Guido van Rossum [Tue, 15 Feb 2000 18:20:01 +0000 (18:20 +0000)]
Temporarily add a copy here for easy distribution.
Guido van Rossum [Tue, 15 Feb 2000 18:11:21 +0000 (18:11 +0000)]
More changes.
Guido van Rossum [Tue, 15 Feb 2000 18:08:19 +0000 (18:08 +0000)]
Notice status back and stack viewer.
Guido van Rossum [Tue, 15 Feb 2000 18:05:15 +0000 (18:05 +0000)]
Support for Moshe's status bar.
Guido van Rossum [Tue, 15 Feb 2000 18:04:52 +0000 (18:04 +0000)]
Status bar code -- by Moshe Zadka.
Guido van Rossum [Tue, 15 Feb 2000 18:04:09 +0000 (18:04 +0000)]
Adding the old stack viewer implementation back, for the debugger.
Guido van Rossum [Tue, 15 Feb 2000 18:03:40 +0000 (18:03 +0000)]
New stack viewer, uses a tree widget.
(XXX: the debugger doesn't yet use this.)
Guido van Rossum [Tue, 15 Feb 2000 18:03:01 +0000 (18:03 +0000)]
Correct a typo and remove an unqualified except that was hiding the error.
Guido van Rossum [Tue, 15 Feb 2000 18:02:11 +0000 (18:02 +0000)]
Add an XXX comment about the ClassBrowser AIP.
Guido van Rossum [Tue, 15 Feb 2000 17:19:25 +0000 (17:19 +0000)]
Updated change log.
Guido van Rossum [Tue, 15 Feb 2000 17:17:58 +0000 (17:17 +0000)]
News update. Probably incomplete; what else is new?
Guido van Rossum [Tue, 15 Feb 2000 17:16:40 +0000 (17:16 +0000)]
Updated for pending IDLE 0.5 release (still very rough -- just getting
it out in a more convenient format than CVS).
Guido van Rossum [Tue, 15 Feb 2000 17:15:36 +0000 (17:15 +0000)]
Tiny addition.
Guido van Rossum [Tue, 15 Feb 2000 14:51:46 +0000 (14:51 +0000)]
In response to one particular complaint on edu-sig, change some error
messages from "OverflowError: integer pow()" to "OverflowError:
integer exponentiation". (Not that this takes care of the complaint
in general that the error messages could be greatly improved. :-)
Jeremy Hylton [Mon, 14 Feb 2000 23:57:56 +0000 (23:57 +0000)]
edit a doc string
(real intent is to test out rsync install)
Andrew M. Kuchling [Mon, 14 Feb 2000 22:22:04 +0000 (22:22 +0000)]
Make multiplying a sequence by a long integer (5L * 'b') legal
Jeremy Hylton [Mon, 14 Feb 2000 21:54:57 +0000 (21:54 +0000)]
get rid of spurious print
Guido van Rossum [Mon, 14 Feb 2000 21:42:14 +0000 (21:42 +0000)]
Patch by Gerrit Holl:
* In crlf.py and lfcr.py: regsub -> re
Guido van Rossum [Mon, 14 Feb 2000 21:41:50 +0000 (21:41 +0000)]
Patch by Gerrit Holl:
* In logmerge.py: added '-r' flag to show the oldest checkin
first instead of the newest, and getopt.getopt was used
wrong.
Jeremy Hylton [Mon, 14 Feb 2000 21:33:10 +0000 (21:33 +0000)]
looks like everything is working except for try/except (pystone
compiles correctly)
Jeremy Hylton [Mon, 14 Feb 2000 21:32:42 +0000 (21:32 +0000)]
LeftShift & RightShift: fix reprs, change attr names to left and right
(so they are common with other binary ops)
Fred Drake [Mon, 14 Feb 2000 21:30:52 +0000 (21:30 +0000)]
Fix the question marks next to the expansions of some of the
colorspace name abbreviations, based on email from Gerrit Holl
<gerrit.holl@pobox.com>.
Jeremy Hylton [Mon, 14 Feb 2000 18:34:11 +0000 (18:34 +0000)]
rename several of the generic attribute names for nodes. new node attrs are:
Exec: expr, locals, globals
Dict: items
Assert: test, fail