Commit Graph

1832 Commits

Author SHA1 Message Date
Guido van Rossum 810a3396d1 Speed up the implementation of quote().
Fix the implementation of quote_plus().  (It wouldn't treat '+' in the
original data right.)

Add urlencode(dict) which is handy to create the data for sending a
POST request with urlopen().
1998-07-22 21:33:23 +00:00
Guido van Rossum 1f00eed8b5 Feature added by Harri Pasanen (at my suggestion): .py suffix on
filename may be omitted.
1998-07-22 13:35:21 +00:00
Guido van Rossum 052969a602 Don't use calculations on values gotten from tell(). Also use a
slightly different way to test for the existence of unread.
1998-07-21 14:24:04 +00:00
Guido van Rossum 136a112bf1 Untabified. 1998-07-20 23:22:51 +00:00
Guido van Rossum f60e8e8108 Update the documentation. Get rid of the section "how it works"
(which is not very relevant when you're in the debugger :-).
1998-07-20 23:21:21 +00:00
Guido van Rossum b5699c7240 Added support for specifying a filename for a breakpoint, roughly
according to an idea by Harri Pasanen (but with different syntax).
This affects the 'break' and 'clear' commands and their help
functions.  Also added a helper method lookupmodule().

Also:

- Try to import readline (important when pdb is used from/as a script).
- Get rid of reference to ancient __privileged__ magic variable.
- Moved all import out of functions to the top.
- When used as a script, check that the script file exists.
1998-07-20 23:13:54 +00:00
Guido van Rossum c612681b20 Fix another bug in ESR's changes. In order to work properly,
onecmd(line) must return the value returned by emptyline() or
default(line).
1998-07-20 21:22:08 +00:00
Guido van Rossum 0aec9fb183 Add missing initializer for self._backupfilename. Due to Ralph Butler. 1998-07-20 15:49:28 +00:00
Guido van Rossum 3a8d1f5a6b Modest speed improvement to escape() by Piet van Oostrum. 1998-07-20 15:46:13 +00:00
Guido van Rossum 7333c4cafc Patch by Piet van Oostrum to avoid calculating with the result of
fp.tell() -- that won't work on Windows.

(A patch for rfc822 is still needed for one case where it finds a bad
header line and wants to back up.)
1998-07-20 15:24:01 +00:00
Guido van Rossum bd9f093fcd Measure performance of sub(), split(), findall(). 1998-07-17 21:10:42 +00:00
Guido van Rossum 0e5ab17ad3 Get a 3- to 4-fold speedup for sub()/subn(), split() and findall() by
not calling self.search(); instead, call self.code.match() directly
and interpret the list of registers it returns directly.  This saves
the overhead of instantiating a MatchObject for each hit, basically
inlining search() as well as group().  When a MatchObject is still
needed, one is allocated and reused for the duration of the scan.
1998-07-17 20:18:49 +00:00
Guido van Rossum c364cf8228 Added tests for findall().
Added test for m.groups() with default.
Added a few prints announcing various tests in verbose mode.
1998-07-17 20:05:02 +00:00
Guido van Rossum 7f1d3aa3d9 Add tests for array self-assigns. (This one has no relevance to JPython.) 1998-07-16 15:31:43 +00:00
Guido van Rossum affd77f71e Add tests for list self-assigns. (Sorry, this should have been here
before JPython 1.0 came out.)
1998-07-16 15:29:06 +00:00
Guido van Rossum 93d1fe1c56 From: Nicolas CHAUVAT <nico@caesium.fr>
In the bbox method of Group (Canvas.py file), you should read

	return self.canvas._getints(self._do('bbox'))

instead of

	return self._getints(self._do('bbox'))
1998-07-16 13:43:05 +00:00
Fred Drake 182c590869 Tk.__init__(): In computing baseName, add ".pyo" to list of dropped
extensions, and include the "." in ".pyc".  Still need to get
	_tkinter.c:Tkapp_New() to use baseName....
1998-07-15 04:36:56 +00:00
Guido van Rossum 69a79bca68 Better RFC 821 compliance (MAIL and RCPT, and CRLF in data)
by Carey Evans <c.evans@clear.net.nz>, for picky mail servers.
1998-07-13 15:18:49 +00:00
Guido van Rossum eeb64287f1 (1) Added a sys.exc_info() emulation. (It returns None for the traceback.)
(2) Made the test script a bit fancier -- you can now use it to run
arbitrary scripts in restricted mode, and it will do the right thing.
(The interactive mode is still pretty lame; should integrate this with
code.interact().)
1998-07-09 13:52:38 +00:00
Guido van Rossum b84ef9bc61 Put back the call to report_unbalanced() that was lost when
parse_endtag() was restructured in parse_endtag() and finish_endtag().
1998-07-07 22:46:11 +00:00
Guido van Rossum 9d865e1a30 Get rid of some obsolete opcodes. 1998-07-07 14:58:39 +00:00
Guido van Rossum 9f2b524385 The permissions ('mode' flag) should default to 0666. 1998-07-03 14:16:55 +00:00
Guido van Rossum 8ba4036a40 The _fromlinepattern was a little too restrictive -- some sendmails
don't put the seconds in the time!
1998-07-02 23:05:32 +00:00
Guido van Rossum 6bbd1d0f0e According to Robin Dunn, at least one FTP server returns 200 instead
of 250 on a successful delete.
1998-07-02 20:41:20 +00:00
Guido van Rossum 030eb11823 Gotta have an __init__() method -- pdb.py calls it! 1998-07-01 22:53:04 +00:00
Barry Warsaw bfa3f6b673 Several changes:
1. Convert to using re module

2. Added two new exception classes

    a. MissingSectionHeaderError which signals an early parsing
       exception when options appear in the file before any section
       header.  Previously a bogus TypeError was thrown deeper down.

    b. ParsingError which collates any non-fatal parsing errors.
       ConfigParser.read() will raise this after the entire file was
       parsed if any errors occurred during parsing (client could just
       catch the exception and continue, because the ConfigParser
       instance would still be initialized with the valid data).

   (small note: Error.__msg => Error._msg)

3. ConfigParser.__read() now uses re which has the following minor
   semantic change: underscore is now allowed in section header and
   option name.  Also, because of the old regexps, theoretically.
   Fixed continuation line bug reported by F. Lundh.

4. It seemed that the old ConfigParser automatically added the option
   `name' to every section, which contained the name of the section.
   This seemed bogus to me so I took it out.
1998-07-01 20:41:12 +00:00
Guido van Rossum 7011504e27 Improved test set for int() and long() string conversions. 1998-06-30 17:02:20 +00:00
Guido van Rossum bf0db032cd Add pop method. 1998-06-30 15:40:05 +00:00
Guido van Rossum 0f91183b1a Fix the comments describing the return values of the head(), body(),
article() commands.
1998-06-30 14:50:26 +00:00
Guido van Rossum 8b3282be9f For completeness, add a dummy load_package() method to RHooks. It
should never be called, so this isn't really needed, but this
signifies that rexec now supports packages -- because ihooks does.
1998-06-29 20:32:57 +00:00
Guido van Rossum 9f5c36fddb Support loading of packages. (I had this coded up for a while but
didn't want to commit until it had been tested.  I presume that it
works in Grail.)
1998-06-29 20:31:16 +00:00
Guido van Rossum be0b62cab4 Added findall() to RegexObject -- return a list of all matches in a
string.  Added groupdict() to MatchObject -- return the named groups
as a dict.  Added default argument to groups() to specify what to
return for unmatching groups; groupdict() also has this.
1998-06-29 20:29:08 +00:00
Guido van Rossum 80884075f0 Improved by Eric Raymond. 1998-06-29 17:58:55 +00:00
Guido van Rossum 716b78474c # Make tabnanny happy. 1998-06-29 17:58:43 +00:00
Guido van Rossum 3ad9dd559a Improved by Eric Raymond. 1998-06-29 17:56:06 +00:00
Guido van Rossum c94f16f156 Oops! Of course, Tim is right -- when the item is not a hex number,
the '%' should be put back in.
1998-06-29 00:42:54 +00:00
Guido van Rossum 52e86ad05b Speed-up unquote(), inspired by post from Daniel Walton. 1998-06-28 23:49:35 +00:00
Guido van Rossum 1cd4d52f2f Remove RCS and #! cruft at top. 1998-06-26 13:38:38 +00:00
Guido van Rossum 88b63b8d30 Allow binding a Tcl command (given as a string) as well as a Python
function.
1998-06-25 18:54:49 +00:00
Guido van Rossum 01852838f3 Treat "HEAD" same as "GET", so that CGI scripts won't fail. 1998-06-25 02:40:17 +00:00
Guido van Rossum 2349015a87 Rewrite the (test) main program so that when used as a script, it can
retrieve one or more URLs to stdout.  Use -t to run the self-test.
1998-06-25 02:39:00 +00:00
Guido van Rossum b1f0812be7 Piers' latest version, labeled 2.11. This time he integrated my
changes, and made only a few minor changes.  No changes of my own this
time.
1998-06-25 02:22:16 +00:00
Guido van Rossum 95e6f7089a Eric Raymond added support for ESMTP protocol and corrected some typos
in comments and doc strings.
1998-06-25 02:15:50 +00:00
Guido van Rossum a93b848e33 Subsume the interact() function in a class. This should make it
possible to use this in PythonWin, and to replace Fredrik Lundh's
PythonInterpreter class.  Fredrik is credited with the class' API.
1998-06-23 19:31:19 +00:00
Guido van Rossum d9d2625dbd "if match(x) >= 0:" smells of regex matching; should use "if match(x):" 1998-06-23 14:43:06 +00:00
Guido van Rossum 4d40b0a165 Patch by Eric Raymond: add an optional 'seekable' flag to the
MultiFile constructor, and only do the posstack bookkeeping when it is
true.
1998-06-23 14:20:27 +00:00
Guido van Rossum 5430b432e6 Bugfix to ESR's code reported by himself: should use hasattr() to test
for presence unread, not getattr()!
1998-06-22 15:46:26 +00:00
Guido van Rossum cef4c844df Turns out that 'winfo id' returns the id as a hex string, with 0x prefix.
The int() function (aliased to getint()) doesn't handle that, so we must
use self.tk.getint() again...
1998-06-19 04:35:45 +00:00
Guido van Rossum 268824e089 Different trick to get the _test() window to pop up. 1998-06-19 04:34:19 +00:00
Guido van Rossum eda960a1dd Piers' latest version -- authentication added by Donn Cave. 1998-06-18 14:24:28 +00:00
Guido van Rossum e50b0a44cb In class _Subfile, make sure read(n) can't read beyond EOF. Also
allow negative numbers to specify read until EOF (like for a regular
file's read() method).
1998-06-17 18:34:40 +00:00
Guido van Rossum 81d10b479e Add __getitem__ to AddressList object, to make it a sequence. 1998-06-16 22:29:03 +00:00
Guido van Rossum 4d4ab9245f Some extra comments and docstrings, and a new class (AddressList), all by ESR. 1998-06-16 22:27:09 +00:00
Guido van Rossum 32490824b6 Fixed the UDP server -- this never worked. Ray Loyzaga deserves
credit for complaining about this and for testing these changes.
1998-06-16 02:27:33 +00:00
Guido van Rossum d458faadc3 In completer(), return None instead of raising an IndexError when
there are no more completions left.  (This for compatibility with
Donald Beaudry's code.)
1998-06-12 19:42:14 +00:00
Guido van Rossum c3da02e904 Don't catch interrupts in getpass() -- the finally clause will reset
the tty and the caller can deal with the interrupt.

In the windows version, recognize ^C and raise KeyboardInterrupt (not
sure if this is needed, but can't hurt).
1998-06-12 14:28:38 +00:00
Guido van Rossum ae9ee7329d Use the getpass module instead of having platform-specific echo on/off
code here.
1998-06-12 14:21:13 +00:00
Guido van Rossum 69256612d7 With the recent change that makes numbers compare smaller than anything,
the outcome of the test for max has changed.
1998-06-11 22:25:59 +00:00
Guido van Rossum 08636f08ed Now that test_MimeWriter is untabified, do the same here! 1998-06-11 22:22:39 +00:00
Guido van Rossum cff311aa37 Be more careful than the previous patch. The default content-type
should only be set to application/x-www-form-urlencoded when the
method is POST.  E.g. for PUT, an empty default (defaulting to
text/plain later) makes more sense.
1998-06-11 14:06:59 +00:00
Guido van Rossum e894fc0ea3 Support new overridable method, isheader() (ESR).
Also implement __setitem__(), more-or-less correctly (GvR).
1998-06-11 13:58:40 +00:00
Guido van Rossum c7bb8577c7 Some changes suggested/provided by Eric Raymond:
- explain seekable
- when seekable==1, test fp.tell() and set it to 0 if that fails
- support overridable method iscomment(line) to weed out comments
- check for unread() method on file object before trying to seek

And one of my own:

- Add a get() method which behaves like a dictionary's get(); this is
actually implemented by giving getheader() an optional second argument
to specify the default, and aliasing get to getheader.
1998-06-10 21:31:01 +00:00
Guido van Rossum 1f40cd6314 Add the __doc__ string from the original module on copy_none(). 1998-06-09 21:33:44 +00:00
Guido van Rossum dd47ec98e2 Default content-type to application/x-www-form-urlencoded at the top
level of a form.  This means that browsers that omit the content-type
header when sending a POST command aren't penalized so heavily.
1998-06-09 19:49:16 +00:00
Guido van Rossum e614fb12a0 Changed runs of 8 spaces to tab -- to satisfy the tab nanny. 1998-06-09 19:20:12 +00:00
Guido van Rossum 068ad97330 Untabified -- to satisfy the tab nanny. 1998-06-09 19:19:40 +00:00
Guido van Rossum 5a43e1a90c Get rid of tabnanny's last complaints. 1998-06-09 19:04:26 +00:00
Guido van Rossum aa2a7a4ae6 From: "Tim Peters" <tim_one@msn.com>
The 1.5.1 tabnanny.py suffers an assert error if fed a script whose last
line is both indented and lacks a newline:

if 1:
    print 'oh fudge' # no newline here:

The attached version repairs that.
1998-06-09 19:02:21 +00:00
Guido van Rossum fe02efdbf4 getint() now raises ValueError, not TclError, on errors. 1998-06-09 02:37:45 +00:00
Guido van Rossum 3c46234e5e Remove Emacs and #! cruft. 1998-05-29 18:22:53 +00:00
Guido van Rossum d659693b5b Improve the self-test code a bit: read a host from sys.argv[1] if set,
and list the host name when prompting for the password.
1998-05-29 18:08:48 +00:00
Guido van Rossum cc20b76ad0 Add comments explaining thread unsafety of this code. 1998-05-29 17:51:59 +00:00
Guido van Rossum d03e1197cb Make gauss() semi-thread-safe. It can still give duplicate results,
but it can no longer raise an exception when called by several threads
simultaneously.
1998-05-29 17:51:31 +00:00
Guido van Rossum b39e461b89 Two places where _time() should be used said time.time(), which
doesn't work of course.
1998-05-29 17:47:10 +00:00
Guido van Rossum 6884af706b Piers Lauders' latest version, with some of my own changes reapplied.
Also replaced random()*32000 with randint(0, 31999).
1998-05-29 13:34:03 +00:00
Guido van Rossum 1ad00717fb Patch by Lars Marius Garshol:
- Handle <? processing instructions >.

- Allow . and - in entity names.

Also fixed an oversight in the previous fix (in one place, [ \t\r\n]
was used instead of string.whitespace).
1998-05-28 22:48:53 +00:00
Jeremy Hylton 2b9d029308 add handler for JPython's org.python.core.PyStringMap object, which
walks and quacks like a dictionary.
1998-05-27 22:38:22 +00:00
Guido van Rossum 16653cb273 Add Tim's worst case scenario.
Revert to using whrandom so it will work with older versions of Python.
1998-05-26 15:05:12 +00:00
Guido van Rossum 7462942b69 Added some tests to make sure that long->int conversions near
sys.maxint and near -sys.maxint-1 work correctly.
1998-05-26 14:51:55 +00:00
Fred Drake 5b34ec1b14 Fixed spelling in comment: "RFC", not "RFX". 1998-05-22 18:18:08 +00:00
Guido van Rossum e9387ea773 introduce a new platform-specific variable: os.linesep is the
platform's line separator.  \n on Unix, \r\n on DOS, OS/2 and Windows,
\r on Macs.
1998-05-22 15:26:04 +00:00
Guido van Rossum 26fd98201f Change the last 4-space indent into a 1-tab indent. 1998-05-22 15:05:36 +00:00
Guido van Rossum 7ef2a1de9b Shouldn't use newdir.dir(), which no longer exists! 1998-05-22 14:11:57 +00:00
Fred Drake c9132066e7 knownfiles: Add the default installation dirs for Apache
versions <= 1.2, >= 1.3.
1998-05-21 13:15:45 +00:00
Guido van Rossum b26a1b4e2b Use random instead of whrandom. 1998-05-20 17:05:52 +00:00
Guido van Rossum 33d7f1a76c Add Interfaces to replace remaining needs for importing whrandom.
# XXX TO DO: make the distribution functions below into methods.
1998-05-20 16:28:24 +00:00
Guido van Rossum 0bd5433cf8 Get rid of nearly all clals to self._do -- turns out self.tk.call can
be used just as well, so this saves one Python call in many cases!
1998-05-19 21:18:13 +00:00
Fred Drake 4941341858 guess_extension(): Revise documentation string to be more clear. If not
inited, call init().
1998-05-19 15:15:59 +00:00
Guido van Rossum 5f4fb913a2 Test that "import sys.imp" fails as it should. 1998-05-19 15:09:42 +00:00
Fred Drake 5109ffd607 guess_extension(): New function. Performs a reverse mapping from MIME type
to filename extension.
1998-05-18 16:27:20 +00:00
Guido van Rossum 67133e25a2 Neatify the _timezones table and remove a misleading comment about
inaccuracies in mktime_tz().
1998-05-18 16:09:10 +00:00
Fred Drake 3130b7a2a9 Fixed typo in docstring: suffixes_map --> suffix_map. 1998-05-18 16:05:24 +00:00
Guido van Rossum 4658682205 Subject: bug fixes for imaplib.py
From: Piers Lauder <piers@staff.cs.usyd.edu.au>
To: Python List <python-list@cwi.nl>
Date: Mon, 18 May 1998 09:51:53 +1000

Following is a context diff for imaplib.py in the Python1.5.1 distribution.
It fixes 2 bugs. One to do with argument quoting, and the other to do with
caching of un-tagged responses. Apologies for its size.
1998-05-18 14:39:42 +00:00
Guido van Rossum 7beaad4e75 Add file extension .xml, mapping it to text/xml. 1998-05-18 14:25:08 +00:00
Jeremy Hylton ee918cb487 Fix bug reported by Harri Pasanen: gzip + cPickle doesn't work. The
problem was a couple of bugs in the readline implementation.

1. Include the '\n' in the string returned by readline
2. Bug calculating new buffer size in _unread

Also remove unncessary import of StringIO
1998-05-13 21:49:58 +00:00
Guido van Rossum 01fc65d92f From: conrad@cgl.ucsf.edu (Conrad Huang %CGL)
To: python-list@cwi.nl
Date: 13 May 98 18:33:11 GMT

I think I found a bug in CGIHTTPServer.py.  (Does anyone care? :-)
I was trying to use it as the web server for uploading files.
Python CGI scripts (using the CGI module) that worked for other
servers (e.g., Netscape Enterprise server) hang when run from
CGIHTTPServer.  The problem is that the content type parameters,
in particular the boundary parameter, were not passed through to
the CGI scripts, thus making the MIME parsing code choke.

My simple-minded fix is:

	% diff CGIHTTPServer.py /usr/local/lib/python1.5/CGIHTTPServer.py
	137,140c136
	<           if self.headers.typeheader is None:
	<               env['CONTENT_TYPE'] = self.headers.type
	<           else:
	<               env['CONTENT_TYPE'] = self.headers.typeheader
	---
	>           env['CONTENT_TYPE'] = self.headers.type

Conrad
1998-05-13 20:13:24 +00:00
Guido van Rossum b298a300dd Reduce memory requirements. 1998-05-12 13:21:31 +00:00
Guido van Rossum 03e35c548f Add a few doc strings. 1998-05-10 18:27:29 +00:00
Guido van Rossum ea176b663e benchmark for list.sort() 1998-05-10 18:20:05 +00:00
Guido van Rossum b1b4f94527 Make Tim O'Malley's requested change: in FieldStorage.__init__(), when
method='GET', always get the query string from environ['QUERY_STRING']
or sys.argv[1] -- ignore an explicitly passed in fp.
1998-05-08 19:55:51 +00:00
Fred Drake 073b829021 When a file name is selected ("OK" button, <Return> in the filename entry),
and the "key" keyword parameter was used to invoke .go(), use the directory
of the selected file as the stored directory to return to when the same key
is used again.  This is useful since the user may well entry at least part
of the path in the filename box instead of doing a lot of clicking around in
the listboxes.
1998-05-06 17:28:23 +00:00
Guido van Rossum e7b6e396fc New files from Thomas Gellekum 1998-05-06 15:14:36 +00:00
Guido van Rossum d618c91f14 Added table of WSA error codes. 1998-05-06 13:48:04 +00:00
Guido van Rossum e0c0da98d8 Patches to make the proxy code work again. (Why does that always break
as soon as I change things even just a little bit? :-)  Even works
when accessing a password-protected page through the proxy.  Prompted
by complaints from, and correct operation verified by, Nigel O'Brian.
1998-05-05 13:58:13 +00:00
Guido van Rossum a986bb7e5c Take out the check for AUTH-LOGIN or AUTH=LOGIN in login() -- some
servers support LOGIN but don't advertise it.  If it's not supported
the protocol will respond NO.  Approved by Piers Lauder.
1998-05-05 03:08:46 +00:00
Guido van Rossum b485224d82 REMOVE samefile(), sameopenfile(), samestat() -- these cannot be made
to work reliably (at least I wouldn't know how).
1998-05-02 00:47:09 +00:00
Guido van Rossum e365a590d4 Change the names of all methods in the Wm class: they are now
wm_title(), etc.  The old names (title() etc.) are still defined as
aliases.

This brings all methods up to use the same naming convention: whether
the Tcl syntax is

   .window.path.name command subcommand [options]

or

   command subcommand .window.path.name [optins]

the Python equivalent is always

   windowobject.command_subcommand(options)
1998-05-01 19:48:20 +00:00
Guido van Rossum 0132f69c2e Another optimization, probably of negligeable effect: instead of
calling self.tk.getint() and self.tk.getdouble(), call the globals
getint() and getdouble(), which in turn are just names for the Python
builtins int() and double().  (Making them globals actually save a
dict lookup compared to using the built-in.)  The corresponding
methods of class Misc have been changed similarly.  (Note that
getboolean() hasn't been changed because there's no Python
equivalent.)

The use of int() and float() has another advantage: if/when Tcl calls
can actually return Tcl objects with other types than string, use of
int() and float() is essential.
1998-04-30 17:50:36 +00:00
Guido van Rossum dc59340646 In _bind(), found a way to test for break without a temp variable. 1998-04-29 22:16:57 +00:00
Guido van Rossum f975699c07 Save a tiny bit of time: self.tk.call takes a tuple argument so it's
not needed to say apply(self.tk.call, t); self.tk.call(t) has the same
effect.  This cuts down tremendously on the number of apply() calls
made.  No measurable effect, but at the very least it saves the lookup
of apply() in the globals!
1998-04-29 21:57:08 +00:00
Guido van Rossum f0c891a2b2 Import MacOS at the top instead of insize Tk.__init__() -- the latter
repeats the I/O for the failed import on each interpreter creation.
1998-04-29 21:43:36 +00:00
Guido van Rossum 7e6d18c1c0 Replace all calls to acquire_lock() and release_lock() with acquire()
and release() instead.
1998-04-29 14:29:32 +00:00
Guido van Rossum 57a0661cb8 On the Mac, create the Temporary Items folder if it does not exist yet.
(Jack)
1998-04-28 16:03:34 +00:00
Guido van Rossum 9c93a69335 Put quotes around the filename, so spaces in filenames work.
(Jack)
1998-04-28 16:03:03 +00:00
Guido van Rossum 53117ae82a typo in error message (fname vs. file).
(Jack)
1998-04-28 16:01:13 +00:00
Guido van Rossum b86ba124ea Support byte-swapped dbhash (bsddb) files. Found by Ben Sayer. 1998-04-28 15:41:03 +00:00
Guido van Rossum fc1f64d90d Oops, I had 'n' and 'c' mixed up in my mind. Get rid of the comment
that wonders what the difference is and explain them properly.
1998-04-28 15:23:09 +00:00
Guido van Rossum a5c0998242 Inspired by Ben Sayer, rewritten the code and some of the comments to
be more intelligent when the database already exists (use the module
for the existing file, according to whichdb).  Noted in the doc
strings that there doesn't seem to be a different between 'c' and 'n'.
1998-04-28 15:19:34 +00:00
Guido van Rossum e86271af72 When setting the event structure fields, don't die when the widget
name is not registered; simply use the string.  This happens for
tear-off widgets (e.g. if you've registered enter/leave events for the
menu).
1998-04-27 19:32:59 +00:00
Guido van Rossum 0eae8fba81 Feeble attempt at making urlopen more robust -- don't call splituser()
when splithost() returned no useable host, to avoid calling
splituser() on None.
1998-04-27 15:19:17 +00:00
Fred Drake 9291d271fb parse150(): Simplify RE used to parse the message a little, taking advantage
of using re instead of regex.
1998-04-27 14:39:44 +00:00
Guido van Rossum 446898ff4a Use hex() when outputting the various checksums so the test output is the
same on 32 and 64 bit machines.
1998-04-24 18:31:28 +00:00
Guido van Rossum bb189dbcb0 Small corrections to comments that were cloned from aifc; moreover
the description of setparams() was wrong.

wave.py: Include the tag of an unknown format in the exception.
1998-04-23 21:40:02 +00:00
Guido van Rossum 1740b8d2f7 New test sample -- "Nobody expects the Spanish Inquisition!" 1998-04-23 21:37:22 +00:00
Guido van Rossum e26132cf5e Move unified findfile() into test_support.py 1998-04-23 20:13:30 +00:00
Guido van Rossum 5fd90684a9 Run the self-test (test.test_MimeWriter) when invoked as a script. 1998-04-23 13:34:57 +00:00
Guido van Rossum 2ad816f47e Add test for MimeWriter module 1998-04-23 13:33:56 +00:00
Guido van Rossum e87ed5f6d4 Add writelines() method to Compare class. 1998-04-23 13:33:21 +00:00
Guido van Rossum 9a34523e19 As Tim Peters points out, ``from string import *'' should not set re to None.
Also rename safe_env to _safe_env.
1998-04-20 14:01:00 +00:00
Fred Drake de2f708299 Fix regexp for attrfind; bug reported by Lars Marius Garshol
<larsga@ifi.uio.no>.
1998-04-16 21:04:26 +00:00
Fred Drake ac36c6403f Open wave files in binary mode.
Accept 'rb' and 'wb' as well as 'r' and 'w' as the mode parameter to open().
1998-04-16 16:44:33 +00:00
Guido van Rossum 64d036c8fe Add connect_ex to list of methods. 1998-04-14 01:30:45 +00:00
Guido van Rossum fb9b7fd5ee Be nicer to systems that have neither termios nor msvcrt. 1998-04-13 20:22:21 +00:00
Guido van Rossum b19e2a383c Whoops! Add a missing 'instantiated = 1' to load_inst(); otherwise it
would still try to call the class...
1998-04-13 18:08:45 +00:00
Guido van Rossum be14e69742 New revision -- sometimes it's AUTH-LOGIN, sometimes AUTH=LOGIN! 1998-04-11 03:11:51 +00:00
Guido van Rossum 5c7e8cd267 Avoid using the obsolete rand module; and improve the randomness
of the boundary chosen by choose_boudary() by using milliseconds
of the timestamp.
1998-04-11 03:06:02 +00:00
Guido van Rossum 38d8f4e1c2 New version doesn't require REV1 capability. 1998-04-11 01:22:34 +00:00
Guido van Rossum c74521acc4 Oops -- remove some debug print statements! 1998-04-11 01:18:35 +00:00
Guido van Rossum c296651e10 Add image_types() and image_names() as methods to Misc class. 1998-04-10 19:16:10 +00:00
Guido van Rossum ce73acf5e6 Tim's version 4, with my mods 1998-04-10 19:14:59 +00:00
Guido van Rossum 4cee3c49c2 Another easter present. 1998-04-10 16:14:34 +00:00
Guido van Rossum 7f5013a9a9 New Java-style threading module. The doc strings are in a separate module. 1998-04-09 22:01:42 +00:00
Guido van Rossum bb08066053 The usual 1998-04-09 21:47:39 +00:00
Guido van Rossum b5903ac9fb Another new utility: getpass() prompts for a password, with echo off.
Also contains getuser(), which returns the username (not prompting though).
These work on Unix and Windows!
1998-04-09 20:37:16 +00:00
Guido van Rossum 29e5f5d81f When getcwd() doesn't exist or raises an exception, don't fail but
fall back to using os.curdir instead; if it is fine, don't use
os.curdir at all.
1998-04-09 14:27:57 +00:00
Guido van Rossum c09e6b1c0a Clarify that put *blocks* when the queue is full. Add some blank
lines to doc strings.
1998-04-09 14:25:32 +00:00
Guido van Rossum eeec0af307 Piers' new version (but I unfolded a few doc strings). 1998-04-09 14:20:31 +00:00
Guido van Rossum c2c07fa10c Piers Lauder's IMAP module. 1998-04-09 13:51:46 +00:00
Guido van Rossum 03774bb5ea Version with docstrings and some other changes, by Piers Lauder.
(Adapted by Just, I believe.)
1998-04-09 13:50:55 +00:00
Fred Drake 3217be9395 Relocating file to Lib/lib-old. 1998-04-09 04:05:43 +00:00
Fred Drake 153165ca3d Restore ni as an obsolete module. 1998-04-09 04:04:18 +00:00
Guido van Rossum 484772d472 Dave Ascher's pop client code. 1998-04-06 18:27:27 +00:00
Guido van Rossum 8053d89f7b Add usage message when no arguments. 1998-04-06 14:45:26 +00:00
Guido van Rossum f4b44fa6ef Tim's latest version (supports old and new tokenize modules) 1998-04-06 14:41:20 +00:00
Guido van Rossum 986abac1ba Give in to tabnanny 1998-04-06 14:29:28 +00:00
Guido van Rossum 1ae297ae8b Remove some long obsolete files... 1998-04-06 14:16:12 +00:00
Guido van Rossum f62cf61548 Give in to tabnanny. 1998-04-06 14:14:25 +00:00
Guido van Rossum 5810297052 Correction to vonmisesvariate() by Magnus Kessler: it should take and
return something between 0 and 2*pi.  Also added a reference to the
literature.
1998-04-06 14:12:13 +00:00
Guido van Rossum 56c04b8376 Restructured the event_* calls slightly -- there's really no need to
use the default root, and instead of string.split, use splitlist.
1998-04-06 03:10:03 +00:00
Fred Drake bdc61b1c7b Relocating file to Lib/lib-old. 1998-04-04 01:05:17 +00:00
Fred Drake a351f89a94 Relocating file to Lib/lib-old. 1998-04-04 00:54:56 +00:00
Guido van Rossum 8430c583da AMK's latest 1998-04-03 21:47:12 +00:00
Guido van Rossum a50547e0c0 Track changes in tokenize.py 1998-04-03 19:56:40 +00:00
Guido van Rossum 18586f4c48 Add optional argument to help(). 1998-04-03 17:03:13 +00:00
Guido van Rossum 1d5102cac1 Explicitly close rfile and wfile in StreamRequestHandler.finish() --
mostly for jpython.
1998-04-03 16:49:52 +00:00
Guido van Rossum a90c78b918 Differentiate between NEWLINE token (an official newline) and NL token
(a newline that the grammar ignores).
1998-04-03 16:05:38 +00:00
Guido van Rossum fbe63de37d UnixMailbox: don't be fooled by lines that begin with "From " but
otherwise don't look like headers at all...
Also robustify the test code a bit.
1998-04-03 16:04:05 +00:00
Guido van Rossum 7e07b3845b Sjoerd's latest. 1998-04-03 16:02:39 +00:00
Guido van Rossum 0454b51282 Oops, pulled over by the tab police :-) 1998-04-03 15:57:58 +00:00
Guido van Rossum b5916ab065 Change by Sjoerd (with minor reformatting):
guess the mime type of a local file.

Change suggested by Sjoerd (with different implementation):
  when retrieve() creates a temporary file, preserve the suffix.

Corrollary of the first change:
  also return the mime type of a local file in retrieve().
1998-04-03 15:56:16 +00:00
Guido van Rossum 75d92c1864 Added a __delitem__ to the Message class.
(Still no __setitem__, until I get a request to add it!)
1998-04-02 21:33:20 +00:00
Guido van Rossum b1062fc9d2 Correct dumb typo found by kjpylint (stack should be self.stack). 1998-03-31 17:00:46 +00:00
Guido van Rossum 599174f74d Correct a definite typo ('mem' should be 'memo'). 1998-03-31 16:30:28 +00:00
Guido van Rossum 9ab75cbaab Tim Peters' program for checking whether a program's indentation is
sensitive to tab size.  Uses a different strategy than tabpolice.py,
but has compatible usage.
1998-03-31 14:31:39 +00:00
Guido van Rossum a6bb6be95f Strip argument to atol and atof to match what strop does better. 1998-03-30 17:22:30 +00:00
Guido van Rossum a08fabad72 A few lines were indented using spaces instead of tabs -- fix them. 1998-03-30 17:17:24 +00:00
Guido van Rossum 117a5a8138 Return the name of the Tcl command defined by _bind(). This can
optionally be passed to unbind() (or you can apss it to
deletecommand()).
1998-03-27 21:26:51 +00:00
Guido van Rossum 548703a1b8 The usual. 1998-03-26 22:14:20 +00:00
Guido van Rossum 65e5399081 Don't write "if self.dict: self.dict.close()"; just write
"self.dict.close()" and ignore the exception.  The "if self.dict:"
part would be calculated through len(self.dict.keys()), which is very
expensive for a large dictionary...
1998-03-26 22:12:22 +00:00
Guido van Rossum 3ec38f0ee4 A few lines were indented using tabs instead of spaces -- fix them. 1998-03-26 22:10:50 +00:00
Guido van Rossum 45e2fbc2e7 Mass check-in after untabifying all files that need it. 1998-03-26 21:13:24 +00:00
Guido van Rossum 9ea7024754 Delete this unused relic. 1998-03-26 21:07:14 +00:00
Guido van Rossum 7e7ca0ba17 A few lines were indented using spaces instead of tabs -- fix them. 1998-03-26 21:01:39 +00:00
Guido van Rossum 8ca842066c A few lines were indented using spaces instead of tabs -- fix them. 1998-03-26 20:56:10 +00:00
Guido van Rossum fa6e254b34 Mass check-in after untabifying all files that need it. 1998-03-26 20:23:01 +00:00
Guido van Rossum 1847d06493 Reindented with tabs only (seems fair to the Windows crowd). 1998-03-26 20:22:30 +00:00
Guido van Rossum 2830dcc15c Get rid of the Emacs cruft now that Python-mode guess the desired settings! 1998-03-26 19:52:46 +00:00
Guido van Rossum 41360a4696 Mass check-in after untabifying all files that need it. 1998-03-26 19:42:58 +00:00
Guido van Rossum cd0f59ea08 Get rid of the Emacs cruft now that Python-mode guess the desired settings! 1998-03-26 19:30:30 +00:00
Guido van Rossum 69c70a2fd1 Support 'whence' parameter to seek(). 1998-03-25 16:25:26 +00:00
Guido van Rossum c8d36284f3 Give in to Timmy's Tedious Tab Theorem. 1998-03-23 15:31:22 +00:00
Guido van Rossum c457048744 Give in to the tab police. 1998-03-20 20:45:49 +00:00
Guido van Rossum 677bedab0c Fix indent of one line in mkarg(), that got indented badly by the
recent reindent!
1998-03-19 15:14:24 +00:00
Guido van Rossum 3f0666c4a2 Add obvious needed else clause to format_exception(). 1998-03-18 17:48:06 +00:00
Guido van Rossum 96c07fefa9 Prefer clock() over times() for timer function, except on the Mac,
where we use GetTicks() -- its clock() is a crock, with only 1 second
accuracy, I believe.
1998-03-17 14:46:43 +00:00
Guido van Rossum 677fc843ea As Mike Fletcher pointed out, a __deepcopy__() method should be called
with the memo as an argument.
1998-03-13 20:12:17 +00:00
Guido van Rossum 6d4d1c2a25 Added support for "data" URL, by Sjoerd Mullender. 1998-03-12 14:32:55 +00:00
Guido van Rossum 5c1d2297ea Instead of 'import mac', use 'import os' -- this way, the path syntax
manipulation routines can be used on non-Mac platforms (e.g. to
manipulate pathnames in a Mac specific archive).
1998-03-03 21:49:01 +00:00
Guido van Rossum 9e43adbe78 Initialize adlist variable in getrouteaddr(), so an illegal address
doesn't cause a traceback.
1998-03-03 16:17:52 +00:00
Guido van Rossum d8c5b8c90f Typo (coestring -> codestring) discovered by Mark Hammond. 1998-03-02 02:40:39 +00:00
Guido van Rossum 13452644d5 Sjoerd writes: When a multipart message is incomplete, mimify crashes. 1998-02-27 14:40:38 +00:00
Guido van Rossum 6e73af723c New version of tb_lineno(), this time *not* using try-except, to avoid
disturbing the current exception, and returning tb.tb_lineno, which is
the line number of thr traceback, rather than the current line number.
By Jim Hugunin.
1998-02-26 17:25:02 +00:00
Guido van Rossum 46c86bbca9 A working version of the 'args' command (it prints the current values
of the variables known to hold arguments, but that's as close as I can
get, and generally it's close enough).
1998-02-25 20:50:32 +00:00
Guido van Rossum d151d34ebd Add test for core dump -- make sure it doesn't come back! 1998-02-25 17:51:50 +00:00
Guido van Rossum 7266496b00 Tweak the tb_lineno() function to be compatible with JPython, which
has no line number table etc.
1998-02-25 16:33:39 +00:00
Guido van Rossum 21df8f5dc4 Typo: baseWidht -> baseWidth. 1998-02-24 23:26:18 +00:00
Guido van Rossum 0001a11986 Fix bug in trace_vdelete(); should use master's delete command. 1998-02-19 21:20:30 +00:00
Guido van Rossum 2fc4d581ba Added debug statements to report data actually sent and received on
the socket.
1998-02-19 21:19:48 +00:00
Guido van Rossum b1908846af Fix for literal null bytes -- these must be replaced by the four
characters \, 0, 0, 0.
1998-02-19 21:18:56 +00:00
Guido van Rossum 72c2e1b56e Fixed a bug in the gauss() function. The bug was reported by Mike
Miller, who complained that its kurtosis was bad, and then fixed by
Lambert Meertens (author of the original algorithm) who discovered
that the mathematical analysis leading to his solution was wrong, and
provided a corrected version.  Mike then tested the fix and reported
that the kurtosis was now good.
1998-02-19 21:17:42 +00:00
Guido van Rossum 9824509d3e Add rmd() (remove directory command); fix comment in parse257.
In login(), force passwd and acct to '' when they are None (this can
happen in the test program!).
1998-02-19 21:15:44 +00:00
Guido van Rossum 0d530cedd7 Faster implementation of normcase (using string.lower(
string.replace(...)) instead of a for loop).

Don't call normcase() in normpath() -- the filesystem just might be
case preserving...
1998-02-19 21:08:36 +00:00
Guido van Rossum a73033fcc2 Feature added by Bill van Melle: when no timezone is present, assume
local time -- that's better than failure.
1998-02-19 00:28:58 +00:00
Guido van Rossum 16a0bc278e (1) Change normpath() to *not* also call normcase().
(2) Fix normcase() to use string.lower() and string.replace() -- it
turns out that the table constructed for translate() didn't work in
locales that have a different number of lowercase and uppercase
letters.
1998-02-18 13:48:31 +00:00
Guido van Rossum 00455b77a6 Fix sign reversal in mktime_tz discovered by Bill van Melle. 1998-02-18 05:06:30 +00:00
Guido van Rossum 358473c1a2 Andrew Kuchling writes:
First, the RNG in whrandom.py sucks if you let it seed itself from the time.
The problem is the line:
			t = int((t&0xffffff) | (t>>24))
Since it ORs the two parts together, the resulting value has mostly
ON bits.  Change | to ^, and you don't lose any randomness.
1998-02-16 14:52:42 +00:00
Guido van Rossum e60142f2c1 Adding output of test_xmllib.py 1998-02-13 16:35:21 +00:00
Fred Drake fe82acc3b1 Fixed typo in docstring: "__ version__" --> "__version__" 1998-02-13 03:24:48 +00:00
Guido van Rossum 8a666e7c56 Fix a horrible race condition -- various routines were storing the
most recently opened URL in self.openedurl of the URLopener instance.
This doesn't really work if multiple threads share the same opener
instance!

Fix: openedurl was actually simply the type prefix (e.g. "http:")
followed by the rest of the URL; since the rest of the URL is
available and the type is effectively determined by where you are in
the code, I can reconstruct the full URL easily, e.g. "http:" + url.
1998-02-13 01:39:16 +00:00
Guido van Rossum d76732918a Added rmtree(), to recursively remove a directory tree.
Code by David Ascher (docstring by me).
1998-02-06 21:38:09 +00:00
Guido van Rossum 03710d2a40 Two suggested features by Sjoerd:
- use the tempcache in the open() method, too.

- use the "unwrap"ped url as key for the tempcache.
1998-02-05 16:22:27 +00:00
Guido van Rossum c5d8fed261 (1) Use matchobj.groups(), not matchbj.group() to get all groups.
(2) Provisional hack to avoid dying when trying to turn echo on or off
on Macs, where os.system() doesn't exist.
1998-02-05 16:21:28 +00:00
Guido van Rossum c9aef03af4 Make this test work when imported from the interpreter instead of run
from regrtest.py (it still works there too, of course).
1998-01-29 21:53:17 +00:00
Guido van Rossum fc40a8316a Sez The Dragon:
Ok, I fixed the quotes, along with a bug or two.
	Also added another exception.
1998-01-29 17:26:45 +00:00
Guido van Rossum bbe323e52c SMTP client by The Dragon De Monsyne <dragondm@integral.org>. 1998-01-29 17:24:40 +00:00
Guido van Rossum 02505e4850 New version of xmllib from Sjoerd.
The main incompatibility is that the error reporting method is now
called as
 parser.syntax_error(msg)
instead of
 parser.syntax_error(lineno, msg)

This new version also has some code to deal with the <?xml?> and
<!DOCTYPE> tags at the start of an XML document.
The documentation has been updated, and a small test module has been
created.
1998-01-29 14:55:24 +00:00
Guido van Rossum b16a3b8450 (This fix is really by Jeremy)
Here's my suggested replacement for gzip.py for 1.5.1.  I've
re-implemeted methods readline and readlines, added an _unread, and
tweaked read and _read.

I tried a more complicated buffer scheme for unread (using a list of
strings and string.join), but it was more complicated and slower.
This version is a lot faster than the current version and is still
pretty simple.
1998-01-27 19:29:45 +00:00
Barry Warsaw abe2a457de Unpickler.load_inst(), Unpickler.load_obj(), Unpickler.load_build():
Fixed problems when unpickling in restricted execution environments.
These methods try to assign to an instance's __class__ attribute, or
access the instances __dict__, which are prohibited in REE.  For the
first two methods, I re-implemented the old behavior when assignment
to value.__class__ fails.

For the load_build() I also re-implemented the old behavior when
inst.__dict__.update() fails but this means that unpickling in REE is
semantically different than unpickling in unrestricted mode.
1998-01-26 22:47:35 +00:00
Barry Warsaw 5da0f504ba get(): Fixed a bug in the merge order of the dictionaries. This makes
a copy of the defaults dictionary and merges the section's dictionary
into it so that sections can override the defaults.
1998-01-26 22:42:48 +00:00
Guido van Rossum c567b8176a Revamped, to match py_compile.py:
- added docstrings
- support option to specify a different purported directory name
- reindented with 4 spaces
1998-01-19 23:07:55 +00:00
Guido van Rossum f7edadbc58 Add Gopher to list of protocols that support query strings. 1998-01-19 22:27:21 +00:00
Guido van Rossum e7579624ef Fix bad new bug in ftp code -- the test for existing file using NLST
would set the transfer to text mode instead of the specified mode.
1998-01-19 22:26:54 +00:00
Guido van Rossum ca99c2ce75 Fix to ismount(). Can't remember who told me this. 1998-01-19 22:25:59 +00:00
Guido van Rossum 29c4688659 Patch by Tim O'Malley for servers that send a response looking just like
HTTP/1.x 200
instead of
    HTTP/1.x 200 OK
1998-01-19 22:25:24 +00:00
Guido van Rossum d2dd9a8b7f Some patches by Lars Marius Garshol:
- fix type_to_name(); it never worked
- add path_to_selector()
add path_to_datatype_name()
1998-01-19 21:59:48 +00:00
Guido van Rossum 63566e2ef2 Added docstrings.
Added an optional third parameter giving the purported filename for
error messages from the module.

Append a newline to the code string if needed.
1998-01-19 04:01:26 +00:00
Guido van Rossum e2c6e203c6 Add trace methods to class Variable 1998-01-14 16:44:34 +00:00
Guido van Rossum f473cb007b Added tests for qualified sub and split 1998-01-14 16:42:17 +00:00
Guido van Rossum 8687164426 Seems I've found a way to fix this. 1998-01-14 15:40:30 +00:00
Guido van Rossum 0d8fcb233e Update the doc string to emphasize non-Unix behavior earlier;
sys.prefix is no longer empty on any platform that I know of.
1998-01-13 18:32:40 +00:00
Guido van Rossum 2b2b3f9bcb Fix two bugs:
(1) maxsplit was ignored in split().

(2) groups() would return a string instead of a singleton tuple when
there was only one group.
1998-01-12 18:57:53 +00:00
Guido van Rossum 46f37144d3 New module added. 1997-12-31 00:11:03 +00:00
Guido van Rossum 51ca6e3e42 When there's no filename, don't make one up.
Added _test() that behaves (a bit) like gzip.
Fix a comment (*sequential* access is okay -- *random* access it out!)
1997-12-30 20:09:08 +00:00
Guido van Rossum f5910e42d1 Add tests for re.L(OCALE). 1997-12-30 17:32:33 +00:00
Guido van Rossum 380bf64424 Since DSA.py never made it to the release, neither should dos-8x3/dsa.py. 1997-12-30 05:03:39 +00:00
Guido van Rossum d01e9aa0df the usual 1997-12-30 04:20:58 +00:00
Guido van Rossum 1cd6a457d9 Two critical fixes to the changes that I made for Greg McFarlane --
patches provided by Greg (am I glad I sent him my latest version!).
1997-12-30 04:07:19 +00:00
Guido van Rossum 5baf4bc978 Moved things around a bit in interact(), so outout is processed before
input.  When an EOF is read, break out of the loop instead of (by
default) writing an empty line (which doesn't do much good).  Don't
close self when falling through the loop.
1997-12-29 20:05:45 +00:00
Guido van Rossum 9fd41e363b Fixed several bugs reported by Greg McFarmane:
*  The invoke methods of the three Tkinter widgets Button,
    Checkbutton and Radiobutton should return the value returned by
    the callback, (like the Menu widget does):

	def invoke(self):
	    return self.tk.call(self._w, 'invoke')

 *  The select_from method of the Canvas widget should use 'from', not
    'set':

	def select_from(self, tagOrId, index):
	    self.tk.call(self._w, 'select', 'from', tagOrId, index)

    Currently, if you use select_from, you get the error message:
 'TclError: bad select option "set": must be adjust, clear, from, item, or to'

 *  The 'entrycget' and 'type' methods of the Tk menu widget are
    missing from Tkinter.

 *  There is a bug in grid_columnconfigure and grid_rowconfigure.  For
    example, this should return the current value of the 'minsize'
    option for column 0:

	f.grid_columnconfigure(0, 'minsize')

    Instead it returns the same as:

	f.grid_columnconfigure(0)

    I suggest that the hint given in the comment in the
    Tkinter.Misc.configure method should be followed - "ought to
    generalize this so tag_config etc.  can use it".  Repeating the
    same configure code several times in Tkinter is inviting errors.
    [I did not follow this advice --G]

 *  The grid_slaves method should handle options.  Currently, to pass
    options to the grid_slaves method, you have to do something like:

	grid_slaves('-row', 1)
1997-12-29 19:59:33 +00:00
Guido van Rossum 23e21e7cf3 Minor editing corrections. 1997-12-29 19:57:36 +00:00