Commit Graph

11050 Commits

Author SHA1 Message Date
Guido van Rossum 59834f11e3 Mikael Lyngvig writes:
I just noticed that the changes below also apply to cmpcache.py, which
is virtually identical to cmp.py.
1999-06-25 14:21:44 +00:00
Guido van Rossum 3aa9ca147b Patch by Mikael Lyngvig:
1. Fix incorrect file open mode on Win32 platforms (use "rb" instead
of "r").

2. Add shallow parameter to cmp.cmp().  If false, deep file
comparisons are made.

The module should be 100 percent backwards compatible.
1999-06-25 14:12:50 +00:00
Guido van Rossum cf6905f986 Clarify the example by explicitly importing the fcntl module -- this
avoid being fooled into thinking that fcntl and FCNTL are the same
thing -- they aren't!  (fcntl is the extension, FCNTL.py is h2py
output that defines all the constants).

(XXX The example is still weird -- I think there's a more portable way
to do locking now.  That's for someone else to fix...)
1999-06-24 17:58:44 +00:00
Guido van Rossum 336a201d4f Sjoerd Mullender writes:
Urllib makes the URL of the opened file available through the geturl
method of the returned object.  For local files, this consists of
file: plus the name of the file.  This results in an invalid URL if
the file name was relative.  This patch fixes this so that the
returned URL is just a relative URL in that case.  When the file name
is absolute, the URL returned is of the form file:///absolute/path.

[I guess that a URL of the form "file:foo.html" is illegal...  GvR]
1999-06-24 15:27:36 +00:00
Guido van Rossum ff3a278d3b Small patch by Tim Peters - it was using self.maxlist when it should
be using self.maxdict.
1999-06-23 23:27:05 +00:00
Guido van Rossum ce7695191f Simplified version of a patch by Chih-Hao Huang, who wrote:
"""
When there are additional Setup files, specified by -e option of freeze,
checkextenstions.py assumes that *.o, *.a, -Lpath, and -Rpath are all
relative to where the Setup file is. select() inserts the path to the
Setup file to make them absolute. However, the assumption is not true.
There are cases that absolute paths are specified for them. The inserted
prefix, by select(), results in error.

The following fix check for absolute paths. The assumption is: an
absolute path begins with either '/' or '$'. In the latter case, it is
from the environmental variable. (Variables defined locally in the Setup
file have already been handled by expandvars())
"""

My version of the patch has been verified by Charles Waldman (a
colleague of Chih-Hao).
1999-06-23 21:37:57 +00:00
Fred Drake 7c2426439e Removed tty module entry. 1999-06-23 17:31:59 +00:00
Fred Drake 1b2dc9045e Add entries for tty module. 1999-06-23 17:29:02 +00:00
Fred Drake 0bccd73be0 Updates from Moshe, again edited by me. Describe the parameters to
border() using a table instead of text for ease of comprehension.
1999-06-23 17:28:01 +00:00
Fred Drake 92f3f41424 Added "See Also" section for termios module. 1999-06-23 15:12:09 +00:00
Fred Drake ae4d5c23f5 Various updates. 1999-06-23 14:56:13 +00:00
Fred Drake 66239d5530 tty module documentation from Moshe, with some editing and an added
"See also" section.
1999-06-23 14:30:19 +00:00
Fred Drake af81a509c3 Added more sections... 1999-06-23 13:34:22 +00:00
Fred Drake b742a42bc0 Two more from Moshe! 1999-06-23 13:33:40 +00:00
Jack Jansen cab9476330 Drag manager constants. 1999-06-23 09:09:46 +00:00
Fred Drake 4316135a44 Make the mode parameter to open() default in the same way as for wave.open(). 1999-06-22 21:23:23 +00:00
Fred Drake 707f8e67b9 Added entry for the chunk module. 1999-06-22 18:50:06 +00:00
Fred Drake 97793ab6b9 New section from Moshe Zadka, modified by FLD for markup, some
additional content.
1999-06-22 18:49:20 +00:00
Just van Rossum d58c7464d9 mod from Joe Strout: when quitting, catch errors in window.close() methods and ignore them. Otherwise one can never quit. 1999-06-22 18:37:35 +00:00
Guido van Rossum 8746082175 Patch by Tim Peters:
Introduce a new builtin exception, UnboundLocalError, raised when ceval.c
tries to retrieve or delete a local name that isn't bound to a value.
Currently raises NameError, which makes this behavior a FAQ since the same
error is raised for "missing" global names too:  when the user has a global
of the same name as the unbound local, NameError makes no sense to them.
Even in the absence of shadowing, knowing whether a bogus name is local or
global is a real aid to quick understanding.

Example:

D:\src\PCbuild>type local.py
x = 42

def f():
    print x
    x = 13
    return x

f()

D:\src\PCbuild>python local.py
Traceback (innermost last):
  File "local.py", line 8, in ?
    f()
  File "local.py", line 4, in f
    print x
UnboundLocalError: x

D:\src\PCbuild>

Note that UnboundLocalError is a subclass of NameError, for compatibility
with existing class-exception code that may be trying to catch this as a
NameError.  Unfortunately, I see no way to make this wholly compatible
with -X (see comments in bltinmodule.c):  under -X, [UnboundLocalError
is an alias for NameError --GvR].

[The ceval.c patch differs slightly from the second version that Tim
submitted; I decided not to raise UnboundLocalError for DELETE_NAME,
only for DELETE_LOCAL.  DELETE_NAME is only generated at the module
level, and since at that level a NameError is raised for referencing
an undefined name, it should also be raised for deleting one.]
1999-06-22 14:47:32 +00:00
Guido van Rossum 43128905be Patch submitted by Toby Dickenson and approved by Mark Hammond.
Toby writes:

winmakemakefile.py tries to allow for spaces in the python install
path, by adding quotes around the appropriate filenames. It doesn't
quite get this correct; sometimes the quotes end up in the middle of
the path.

Microsoft's NMAKE version 6.0 is happy with this (!!!!)  unless there
is also a space in the name. I guess most users of freeze on windows
do not use the same path as the binary distribution.

I've tested the following changes on systems with and without a space
in the path.
1999-06-21 22:36:53 +00:00
Fred Drake 0f871dc39e Added some "See also" references to htmllib docs.
Documented htmlentitydefs.
1999-06-21 21:20:56 +00:00
Fred Drake 2cd31dc3ea Added entry for curses module. 1999-06-21 21:14:30 +00:00
Fred Drake 4997f4d54a Added entries for four of Moshe's documentation sections. 1999-06-21 21:13:50 +00:00
Fred Drake a4070cef5e Preliminary documentation for the curses module by Moshe Zadka, with
lots of markup fixes and some English nits fixed.

Still needs real review.  Some of the function signatures used in this
module are really bad!  (Two leading optional parameters? Ugh!)
1999-06-21 21:13:09 +00:00
Guido van Rossum 592305011d Add warning FreeBSD users of a problem with curses and termcap,
submitted by Klaus-Juergen Wolf.
1999-06-21 20:51:46 +00:00
Fred Drake d5d55ea02e Fix a markup error. 1999-06-21 18:36:09 +00:00
Fred Drake 4755e7d5c1 Three more modules documented by Moshe! 1999-06-21 18:25:49 +00:00
Jack Jansen 1de2a92791 Initial minimal test program: print information on anything dropped onto Python
window.
1999-06-21 16:19:43 +00:00
Jack Jansen 58b2eacf6b Print something on stderr in case of exceptions in callback routines. 1999-06-21 16:18:51 +00:00
Jack Jansen c4f6331690 Drag manager interface (completely untested, so far) 1999-06-21 15:14:26 +00:00
Guido van Rossum 1a03cf56e0 Greg McFarlane submitted two missing Text methods: mark_next() and
mark_previous().
1999-06-21 14:13:30 +00:00
Fred Drake 6f49e0a154 Added a few minor comments, mostly to discourage documentation of
really old modules that may become obsolete.
1999-06-18 19:58:59 +00:00
Fred Drake a48a083edb Added paragraph about potential re-initialization of extension
modules; responding to suggestion by Robin Boerdijk
<Robin.Boerdijk@nl.origin-it.com>.
1999-06-18 19:17:28 +00:00
Fred Drake a88ef00a50 Further clarfication of the system-dependence of the system() return
value, based on comments from Tim Peters.
1999-06-18 19:11:25 +00:00
Fred Drake 4f298695be Relocating file to Lib/lib-old. 1999-06-18 17:12:36 +00:00
Fred Drake 46e1a32edf Re-categorize the dump module as obsolete. 1999-06-18 17:12:15 +00:00
Fred Drake 354e98222c fpformat has been documented for at least a week now! 1999-06-18 15:21:25 +00:00
Guido van Rossum 1d5ad90c1c CRITICAL PATCH!
We occasionally received reports from people getting "invalid tstate"
crashes (this is a fatal error in PyThreadState_Delete()).  Finally
several people were able to reproduce it reliably and Tim Peters
discovered that there is a race condition when multiple threads are
calling this function without holding the global interpreter lock (the
function may be called without holding that).

Solved the race condition by adding a lock around the mutating uses of
interp->tstate_head.  Tim and Jonathan Giddy have run tests that make
it likely that this fixes the crashes -- although Tim hasn't heard
from the person who reported the original problem.
1999-06-18 14:22:24 +00:00
Guido van Rossum 7f85186921 # Darn! Local variable l declared but not used in abstract_issubclass(). 1999-06-17 19:12:39 +00:00
Fred Drake 26921da2c9 Small markup & usage adjustments. 1999-06-17 18:58:02 +00:00
Fred Drake 924b42de9c When looking for things that might be modules, include *module.c from
the Modules/ directory.  Most of the remaining undocumented modules
seem to be living there.
1999-06-17 18:49:18 +00:00
Guido van Rossum 9e480adf9b Patch suggested (and partially provided) by Lars Damerow: instead of
always lowercasing the option name, call a method optionxform() which
can be overridden.  Also make the regexps SECTRE and OPTRE non-private
variables so they can also be overridden.
1999-06-17 18:41:42 +00:00
Fred Drake e019789962 Correction: the parameters of new.instance() are type-checked.
Edited several of the descriptions for English usage and more
consistent style.
1999-06-17 18:15:07 +00:00
Fred Drake de69ae1753 Updated version from Moshe, with a re-written warning about the
side-effect of cmpcache.cmp() using statcache.stat() internally.
1999-06-17 17:40:52 +00:00
Fred Drake 173ba5e3bc Minor markup nits. 1999-06-17 17:09:23 +00:00
Fred Drake 97c2fa03e5 Small English usage nits. 1999-06-17 16:38:18 +00:00
Fred Drake 7487c02209 Small markup and English usage nits. 1999-06-17 16:10:39 +00:00
Guido van Rossum bfadac00ef In collect_children(), put a try-except around os.waitpid() because it
may raise an exception (when there are no children).  Reported by
Andy Dustman.
1999-06-17 15:41:33 +00:00
Fred Drake 873f0297c3 Add reminder that wave.open() documentation should be updated for the
next Python release.
1999-06-17 15:20:44 +00:00