Tim Peters [Wed, 29 Jan 2003 03:49:43 +0000 (03:49 +0000)]
Whitespace normalization.
Tim Peters [Wed, 29 Jan 2003 00:56:17 +0000 (00:56 +0000)]
pickle: Comment repair.
pickletools: Import decode_long from pickle instead of duplicating it.
Tim Peters [Wed, 29 Jan 2003 00:38:42 +0000 (00:38 +0000)]
Updated info about test_bsddb3 failures.
Tim Peters [Wed, 29 Jan 2003 00:35:32 +0000 (00:35 +0000)]
Expect test_macostools and test_macfs to get skipped whenever
sys.platform != mac. Likewise expect test_win{reg,sound} to get skipped
on non-win32 platforms.
Jack Jansen [Tue, 28 Jan 2003 23:54:05 +0000 (23:54 +0000)]
Test aliases too.
Jack Jansen [Tue, 28 Jan 2003 23:53:40 +0000 (23:53 +0000)]
Converted to not use macfs whenever possible.
Jack Jansen [Tue, 28 Jan 2003 23:29:46 +0000 (23:29 +0000)]
Added a missing INCREF in pathname().
Tim Peters [Tue, 28 Jan 2003 22:34:11 +0000 (22:34 +0000)]
Temporary hacks to arrange that the pickle tests relying on protocol 2
only get run by test_pickle.py now (& not by test_cpickle.py). This
should be undone when protocol 2 is implemented in cPickle too.
test_cpickle should pass again.
Guido van Rossum [Tue, 28 Jan 2003 22:31:25 +0000 (22:31 +0000)]
Add a comment about how some built-in types should grow a
__getnewargs__ method.
Guido van Rossum [Tue, 28 Jan 2003 22:29:13 +0000 (22:29 +0000)]
Get rid of __safe_for_unpickling__ and safe_constructors.
Also tidied up a few lines, got rid of apply(), added a comment.
Tim Peters [Tue, 28 Jan 2003 22:26:28 +0000 (22:26 +0000)]
Renamed "bin" arguments to "proto". Note that this test currently
fails, for reasons unrelated to this patch.
Fred Drake [Tue, 28 Jan 2003 22:09:16 +0000 (22:09 +0000)]
More markup changes for consistency.
Fred Drake [Tue, 28 Jan 2003 22:02:35 +0000 (22:02 +0000)]
Various minor markup adjustments.
Guido van Rossum [Tue, 28 Jan 2003 22:02:31 +0000 (22:02 +0000)]
Add a test for a list subclass with a __dict__ as well as slots.
Guido van Rossum [Tue, 28 Jan 2003 22:01:16 +0000 (22:01 +0000)]
Instead of bad hacks trying to worm around the inherited
object.__reduce__, do a getattr() on the class so we can explicitly
test for it. The reduce()-calling code becomes a bit more regular as
a result.
Also add support slots: if an object has slots, the default state is
(dict, slots) where dict is the __dict__ or None, and slots is a dict
mapping slot names to slot values. We do a best-effort approach to
find slot names, assuming the __slots__ fields of classes aren't
modified after class definition time to misrepresent the actual list
of slots defined by a class.
Fred Drake [Tue, 28 Jan 2003 21:53:05 +0000 (21:53 +0000)]
Added missing dependency.
Jack Jansen [Tue, 28 Jan 2003 21:45:44 +0000 (21:45 +0000)]
Install "python$(VERSION)" into /usr/local as the symlink to the framework,
and also create a symlink "python" pointing to "python$(VERSION)".
Fixes #675745.
Jack Jansen [Tue, 28 Jan 2003 21:40:36 +0000 (21:40 +0000)]
Don't import Nav. It isn't needed, and importing it doesn't work in a
non-windowing Python.
Jack Jansen [Tue, 28 Jan 2003 21:39:28 +0000 (21:39 +0000)]
Finally created the first two tests for MacPython modules: macfs and
macostools.
Guido van Rossum [Tue, 28 Jan 2003 20:39:49 +0000 (20:39 +0000)]
Comment out a test that was anticipating SF patch 661536 -- but that
isn't checked in yet. :-(
Tim Peters [Tue, 28 Jan 2003 20:37:45 +0000 (20:37 +0000)]
Added new private API function _PyLong_NumBits. This will be used at the
start for the C implemention of new pickle LONG1 and LONG4 opcodes (the
linear-time way to pickle a long is to call _PyLong_AsByteArray, but
the caller has no idea how big an array to allocate, and correct
calculation is a bit subtle).
Guido van Rossum [Tue, 28 Jan 2003 19:48:18 +0000 (19:48 +0000)]
The default __reduce__ on the base object type obscured any
possibility of calling save_reduce(). Add a special hack for this.
The tests for this are much simpler now (no __getstate__ or
__getnewargs__ needed).
Neal Norwitz [Tue, 28 Jan 2003 19:21:24 +0000 (19:21 +0000)]
Fix SF bug# 676155, RuntimeWarning with tp_compare
Check return value of PyLong_AsDouble(), it can return an error.
Guido van Rossum [Tue, 28 Jan 2003 18:22:35 +0000 (18:22 +0000)]
Move the NEWOBJ-generating code to a separate function, and invoke it
after checking for __reduce__.
Guido van Rossum [Tue, 28 Jan 2003 17:55:05 +0000 (17:55 +0000)]
Some experimental support for generating NEWOBJ with proto=2, and
fixed a bug in load_newobj().
Guido van Rossum [Tue, 28 Jan 2003 17:48:21 +0000 (17:48 +0000)]
Verify treatment of unary minus on negative numbers SF bug #660455.
Barry Warsaw [Tue, 28 Jan 2003 17:30:46 +0000 (17:30 +0000)]
Bump the version number
Barry Warsaw [Tue, 28 Jan 2003 17:20:44 +0000 (17:20 +0000)]
Everything worked in both the distutils distro and in Python 2.3cvs,
so merge from the bsddb-bsddb3-schizo-branch back to the trunk.
Tim Peters [Tue, 28 Jan 2003 16:58:41 +0000 (16:58 +0000)]
save_empty_tuple(): Comment on why we can't get rid of this.
Tim Peters [Tue, 28 Jan 2003 16:47:59 +0000 (16:47 +0000)]
save_dict(): Added a comment about the control flow NealN missed.
Tim Peters [Tue, 28 Jan 2003 16:42:22 +0000 (16:42 +0000)]
_is_string_secure(): This method is no longer used; removed it. (It
was used before string-escape codecs were added to the core.)
Guido van Rossum [Tue, 28 Jan 2003 16:34:19 +0000 (16:34 +0000)]
Made save() fit on a page, while adding comments. (I moved some type
checks to save_reduce(), which can also be called from a subclass.)
Also tweaked some more comments.
Tim Peters [Tue, 28 Jan 2003 16:23:33 +0000 (16:23 +0000)]
Got rid of the _quotes global. Used only once, and is trivial.
Tim Peters [Tue, 28 Jan 2003 16:01:25 +0000 (16:01 +0000)]
Use raw-mode docstring whenever there's an escape code in an example --
they're easier to read this way.
Guido van Rossum [Tue, 28 Jan 2003 15:37:13 +0000 (15:37 +0000)]
_dis_test should be a raw string now that it contains \x escapes.
Tim Peters [Tue, 28 Jan 2003 15:27:57 +0000 (15:27 +0000)]
dis(): Not all opcodes are printable anymore, so print the repr
of the opcode character instead (but stripping the quotes).
Added a proto 2 test section for the canonical recursive-tuple case.
Note that since pickle's save_tuple() takes different paths depending on
tuple length now, beefier tests are really needed (but not in pickletools);
the "short tuple" case tried here was actually broken yesterday, and it's
subtle stuff so needs to be tested.
Guido van Rossum [Tue, 28 Jan 2003 15:19:53 +0000 (15:19 +0000)]
Add a few comments. Change the way the protocol is checked (it must
be one of 0, 1 or 2).
I should note that the previous checkin also added NEWOBJ support to
the unpickler -- but there's nothing yet that generates this.
Guido van Rossum [Tue, 28 Jan 2003 15:10:22 +0000 (15:10 +0000)]
Rename all variables 'object' to 'obj' to avoid conflicts with the
type 'object'. Also minor docstring tweakage, and rearranged a few
lines in save().
Guido van Rossum [Tue, 28 Jan 2003 15:09:10 +0000 (15:09 +0000)]
Fix one disassembly output now that empty tuples are no longer
memoized in text mode. Fixed some variable names in the disassembler
doctest.
Guido van Rossum [Tue, 28 Jan 2003 14:40:16 +0000 (14:40 +0000)]
Don't memoize the empty tuple in protocol 0.
Fred Drake [Tue, 28 Jan 2003 06:42:40 +0000 (06:42 +0000)]
Update to the final version released as Expat 1.95.6 (maintaining
Martin's integration changes).
Tim Peters [Tue, 28 Jan 2003 05:48:29 +0000 (05:48 +0000)]
save_tuple(): So long as the charter is rewriting for clarity, the snaky
control flow had to be simplified.
Tim Peters [Tue, 28 Jan 2003 05:34:53 +0000 (05:34 +0000)]
save_tuple(): I believe the new code for TUPLE{1,2,3} in proto 2 was
incorrect for recursive tuples. Tried to repair; seems to work OK, but
there are no checked-in tests for this yet.
Tim Peters [Tue, 28 Jan 2003 05:12:08 +0000 (05:12 +0000)]
Comments.
Tim Peters [Tue, 28 Jan 2003 04:56:33 +0000 (04:56 +0000)]
Now that proto2 is defined, replaced XXX blocks with text about it.
Also moved the proto2 opcode descriptors into the sections they fit (like
TUPLE{1,2,3} in the group of tuple-building opcodes; etc).
Guido van Rossum [Tue, 28 Jan 2003 04:25:27 +0000 (04:25 +0000)]
OK, this is really the last one tonight!
NEWFALSE and NEWTRUE.
Guido van Rossum [Tue, 28 Jan 2003 04:20:02 +0000 (04:20 +0000)]
Shouldn't test short tuples with all items equal -- one potential bug
would be that the tuple is reversed on unpickling, and we should catch
that. :-)
Goodnight -- that's it for toniht!
Guido van Rossum [Tue, 28 Jan 2003 04:14:51 +0000 (04:14 +0000)]
More protocol 2: TUPLE1, TUPLE2, TUPLE3.
Also moved the special case for empty tuples from save() to save_tuple().
Guido van Rossum [Tue, 28 Jan 2003 03:51:53 +0000 (03:51 +0000)]
Rename 'bin' arg to 'proto'. Keep the default at 0 lest the tests
change in meaning.
Tim Peters [Tue, 28 Jan 2003 03:51:36 +0000 (03:51 +0000)]
save_inst(): Rewrote to have only one branch on self.bin. Also got rid
of my recent XXX comment, taking a (what appears to be vanishingly small)
chance and calling self.memoize() instead.
Guido van Rossum [Tue, 28 Jan 2003 03:49:52 +0000 (03:49 +0000)]
First baby steps towards implementing protocol 2: PROTO, LONG1 and LONG4.
Tim Peters [Tue, 28 Jan 2003 03:41:54 +0000 (03:41 +0000)]
Fixed odd whitespace after "if", which I believe I introduced long ago.
Tim Peters [Tue, 28 Jan 2003 03:40:52 +0000 (03:40 +0000)]
save_int(): Fixed two new off-by-1 glitches.
Guido van Rossum [Tue, 28 Jan 2003 03:17:21 +0000 (03:17 +0000)]
Add a comment explaining that struct.pack() beats marshal.dumps(), but
marshal.loads() beats struct.unpack()! Possibly because the latter
creates a one-tuple. :-(
Guido van Rossum [Tue, 28 Jan 2003 03:03:08 +0000 (03:03 +0000)]
Got rid of mdumps; I timed it, and struct.pack("<i", x) is more than
40% faster than marshal.dumps(x)[1:]! (That's not counting the
module attribute lookups, which can be avoided in either case.)
Tim Peters [Tue, 28 Jan 2003 02:09:55 +0000 (02:09 +0000)]
save_tuple(): Minor rewriting, and added a comment about the subtlety
created by recursive tuples.
Tim Peters [Tue, 28 Jan 2003 01:44:45 +0000 (01:44 +0000)]
load_appends(): replaced .append() loop with an .extend().
Tim Peters [Tue, 28 Jan 2003 01:41:51 +0000 (01:41 +0000)]
Comments.
Tim Peters [Tue, 28 Jan 2003 01:34:43 +0000 (01:34 +0000)]
save_dict(): Untangled most of the bin-vs-not-bin logic. Also used
iteritems() instead of materializing a (possibly giant) list of the
items.
Tim Peters [Tue, 28 Jan 2003 01:15:46 +0000 (01:15 +0000)]
save_list(): Rewrote, to untangle the proto 0 from the proto 1 cases.
The code is much easier to follow now, and I bet it's faster too.
Tim Peters [Tue, 28 Jan 2003 01:07:48 +0000 (01:07 +0000)]
save_list(): removed unused local "d".
Tim Peters [Tue, 28 Jan 2003 01:07:10 +0000 (01:07 +0000)]
save_list(): removed unused local "memo".
Tim Peters [Tue, 28 Jan 2003 01:03:10 +0000 (01:03 +0000)]
save_pers(): Switched the order of cases, to get rid of a "not", and to
make the bin-vs-not-bin order consistent with what other routines try to
do (they almost all handle the bin case first).
Tim Peters [Tue, 28 Jan 2003 01:00:38 +0000 (01:00 +0000)]
Several routines appeared to inline the guts of memoize(), possibly for
some notion of low-level efficiency. Undid that, but left one routine
alone: save_inst() claims it has a reason for not using memoize().
I don't understand that comment, so added an XXX comment there.
Tim Peters [Tue, 28 Jan 2003 00:48:09 +0000 (00:48 +0000)]
save(): Fiddled the control flow to put the normal case where it
belongs. This is a much smaller change than it may appear: the bulk
of the function merely got unindented by one level.
Tim Peters [Tue, 28 Jan 2003 00:43:26 +0000 (00:43 +0000)]
Added XXX about save()'s special-casing of tuples -- I don't get it.
Tim Peters [Tue, 28 Jan 2003 00:26:14 +0000 (00:26 +0000)]
save_bool(): simplified.
Tim Peters [Tue, 28 Jan 2003 00:24:43 +0000 (00:24 +0000)]
Repaired grammar in new comment.
Tim Peters [Tue, 28 Jan 2003 00:23:36 +0000 (00:23 +0000)]
clear_memo(): Repaired grammar in docstring.
Tim Peters [Tue, 28 Jan 2003 00:22:12 +0000 (00:22 +0000)]
Added one-line comments to the proto 2 opcodes.
Neal Norwitz [Tue, 28 Jan 2003 00:20:41 +0000 (00:20 +0000)]
Use proper function name in exception messages
Tim Peters [Tue, 28 Jan 2003 00:13:19 +0000 (00:13 +0000)]
Removed the new LONG2 opcode: it's extravagant. If LONG1 isn't enough,
then the embedded argument consumes at least 256 bytes. The difference
between a 3-byte prefix (LONG2 + 2 bytes) and a 5-byte prefix (LONG4 +
4 bytes) is at worst less than 1%. Note that binary strings and binary
Unicode strings also have only "size is 1 byte, or size is 4 bytes?"
flavors, and I expect for the same reason. The only place a 2-byte
thingie was used was in BININT2, where the 2 bytes make up the *entire*
embedded argument (and now EXT2 also does this); that's a large savings
over 4 bytes, because the total opcode+argument size is so small in
the BININT2/EXT2 case.
Removed the TAKEN_FROM_ARGUMENT "number of bytes" code, and bifurcated it
into TAKEN_FROM_ARGUMENT1 and TAKEN_FROM_ARGUMENT4. Now there's enough
info in ArgumentDescriptor objects to deduce the # of bytes consumed by
each opcode.
Rearranged the order in which proto2 opcodes are listed in pickle.py.
Tim Peters [Mon, 27 Jan 2003 23:54:04 +0000 (23:54 +0000)]
Documented the 2's-comp business for the new long opcodes.
Tim Peters [Mon, 27 Jan 2003 23:51:36 +0000 (23:51 +0000)]
Whitespace normalization.
Tim Peters [Mon, 27 Jan 2003 23:51:11 +0000 (23:51 +0000)]
decode_long(): Simplified the "is it negative?" test.
Guido van Rossum [Mon, 27 Jan 2003 22:47:53 +0000 (22:47 +0000)]
Begin the change from 'binary vs. text mode' to 'protocol 0, 1, 2'.
The protocol now defaults to 1. Protocol 2 is still unimplemented.
Guido van Rossum [Mon, 27 Jan 2003 22:22:50 +0000 (22:22 +0000)]
Support socket timeout in SSL, by Geoff Talvola.
(SF patch #675750, to fix SF bug #675552.)
Guido van Rossum [Mon, 27 Jan 2003 21:44:25 +0000 (21:44 +0000)]
Begin documenting protocol 2.
Tim Peters [Mon, 27 Jan 2003 21:25:41 +0000 (21:25 +0000)]
Added some comments.
Tim Peters [Mon, 27 Jan 2003 21:22:10 +0000 (21:22 +0000)]
memoize(): Reworded the docs to try to disentangle the Pickler's memo
dict from the Unpickler's memo (which is a different beast!).
Tim Peters [Mon, 27 Jan 2003 21:15:36 +0000 (21:15 +0000)]
Using marshal functions to pack & unpack 1-byte ints is an obscure &
expensive way to spell chr() and ord().
Tim Peters [Mon, 27 Jan 2003 20:16:36 +0000 (20:16 +0000)]
Added a brief comment to each pickle opcode declaration.
Guido van Rossum [Mon, 27 Jan 2003 19:40:47 +0000 (19:40 +0000)]
Remove a stray quote.
Tim Peters [Mon, 27 Jan 2003 19:38:34 +0000 (19:38 +0000)]
Repaired comment.
Tim Peters [Mon, 27 Jan 2003 19:01:47 +0000 (19:01 +0000)]
stringnl_noescape_pair(): changed the reader to separate the two
component strings by a blank instead of a period. Guido pointed
out that the component strings (at least the first one) can be
dotted already. find_class() is overridable too, so only God knows
all the possibilities that make sense to someone.
Tim Peters [Mon, 27 Jan 2003 18:51:48 +0000 (18:51 +0000)]
Moving pickletools.py from the sandbox into the std library. I started
this over the weekend, and it made faster & better progress than I
expected -- it's already useful <wink>.
Tim Peters [Mon, 27 Jan 2003 16:45:03 +0000 (16:45 +0000)]
Repaired spelling of "test_iconv_codecs" in various expected-skip lists.
Andrew M. Kuchling [Mon, 27 Jan 2003 16:36:34 +0000 (16:36 +0000)]
Update register example
Fred Drake [Mon, 27 Jan 2003 16:32:04 +0000 (16:32 +0000)]
Adjust some of Skip's latest changes slightly; these really are things
that should stand out.
Fred Drake [Mon, 27 Jan 2003 16:31:16 +0000 (16:31 +0000)]
Make the "notice" environments somewhat similar, with less difference
between the "note" and "warning" flavors.
Andrew M. Kuchling [Mon, 27 Jan 2003 16:30:36 +0000 (16:30 +0000)]
Remove the recently-added get_distutil_options(), and just
have two tuples listing the legal keywords for setup() and Extension()
Walter Dörwald [Mon, 27 Jan 2003 15:57:14 +0000 (15:57 +0000)]
Fix comment typos
Jack Jansen [Mon, 27 Jan 2003 15:21:39 +0000 (15:21 +0000)]
Attempting to keep the Mac section of the NEWS file up-to-date, in stead
of the usual frantic editing at the last moment:-)
Skip Montanaro [Mon, 27 Jan 2003 15:00:38 +0000 (15:00 +0000)]
* add \versionadded{} strings as appropriate
* remove doc for defunct IllegalKeywordArgument exception
* add note that HTTP class is for backward compatibility and refer reader to
online docstrings for help
Martin v. Löwis [Mon, 27 Jan 2003 11:39:04 +0000 (11:39 +0000)]
Fix reference counting of iconvcodec_Type. Fixes #670715.
Remove GC code; the base type does not need GC.
Martin v. Löwis [Mon, 27 Jan 2003 11:28:52 +0000 (11:28 +0000)]
Patch #670715: Universal Unicode Codec for POSIX iconv.
Kurt B. Kaiser [Mon, 27 Jan 2003 02:40:20 +0000 (02:40 +0000)]
Update for release.
Modified Files:
INSTALL.txt NEWS.txt idlever.py
Kurt B. Kaiser [Mon, 27 Jan 2003 02:36:18 +0000 (02:36 +0000)]
Whitespace normalization.
Modified Files:
Bindings.py configHandler.py configHelpSourceEdit.py
Jack Jansen [Sun, 26 Jan 2003 22:15:48 +0000 (22:15 +0000)]
Use new file dialogs.
Jack Jansen [Sun, 26 Jan 2003 22:15:10 +0000 (22:15 +0000)]
Fix an omission in the previous checkin.