summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* More protocol 2: TUPLE1, TUPLE2, TUPLE3.Guido van Rossum2003-01-282-11/+47
| | | | Also moved the special case for empty tuples from save() to save_tuple().
* Rename 'bin' arg to 'proto'. Keep the default at 0 lest the testsGuido van Rossum2003-01-281-4/+4
| | | | change in meaning.
* save_inst(): Rewrote to have only one branch on self.bin. Also got ridTim Peters2003-01-281-16/+9
| | | | | of my recent XXX comment, taking a (what appears to be vanishingly small) chance and calling self.memoize() instead.
* First baby steps towards implementing protocol 2: PROTO, LONG1 and LONG4.Guido van Rossum2003-01-282-1/+102
|
* Fixed odd whitespace after "if", which I believe I introduced long ago.Tim Peters2003-01-281-1/+1
|
* save_int(): Fixed two new off-by-1 glitches.Tim Peters2003-01-281-2/+2
|
* Add a comment explaining that struct.pack() beats marshal.dumps(), butGuido van Rossum2003-01-281-0/+3
| | | | | marshal.loads() beats struct.unpack()! Possibly because the latter creates a one-tuple. :-(
* Got rid of mdumps; I timed it, and struct.pack("<i", x) is more thanGuido van Rossum2003-01-281-30/+26
| | | | | 40% faster than marshal.dumps(x)[1:]! (That's not counting the module attribute lookups, which can be avoided in either case.)
* save_tuple(): Minor rewriting, and added a comment about the subtletyTim Peters2003-01-281-8/+13
| | | | created by recursive tuples.
* load_appends(): replaced .append() loop with an .extend().Tim Peters2003-01-281-3/+1
|
* Comments.Tim Peters2003-01-281-1/+9
|
* save_dict(): Untangled most of the bin-vs-not-bin logic. Also usedTim Peters2003-01-281-15/+14
| | | | | iteritems() instead of materializing a (possibly giant) list of the items.
* save_list(): Rewrote, to untangle the proto 0 from the proto 1 cases.Tim Peters2003-01-281-15/+17
| | | | The code is much easier to follow now, and I bet it's faster too.
* save_list(): removed unused local "d".Tim Peters2003-01-281-2/+0
|
* save_list(): removed unused local "memo".Tim Peters2003-01-281-1/+0
|
* save_pers(): Switched the order of cases, to get rid of a "not", and toTim Peters2003-01-281-3/+3
| | | | | make the bin-vs-not-bin order consistent with what other routines try to do (they almost all handle the bin case first).
* Several routines appeared to inline the guts of memoize(), possibly forTim Peters2003-01-281-12/+9
| | | | | | 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.
* save(): Fiddled the control flow to put the normal case where itTim Peters2003-01-281-44/+47
| | | | | belongs. This is a much smaller change than it may appear: the bulk of the function merely got unindented by one level.
* Added XXX about save()'s special-casing of tuples -- I don't get it.Tim Peters2003-01-281-0/+1
|
* save_bool(): simplified.Tim Peters2003-01-281-4/+1
|
* Repaired grammar in new comment.Tim Peters2003-01-281-1/+1
|
* clear_memo(): Repaired grammar in docstring.Tim Peters2003-01-281-3/+3
|
* Added one-line comments to the proto 2 opcodes.Tim Peters2003-01-281-14/+14
|
* Use proper function name in exception messagesNeal Norwitz2003-01-281-2/+2
|
* Removed the new LONG2 opcode: it's extravagant. If LONG1 isn't enough,Tim Peters2003-01-282-58/+19
| | | | | | | | | | | | | | | | | | | 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.
* Documented the 2's-comp business for the new long opcodes.Tim Peters2003-01-271-3/+3
|
* Whitespace normalization.Tim Peters2003-01-271-3/+3
|
* decode_long(): Simplified the "is it negative?" test.Tim Peters2003-01-271-2/+5
|
* Begin the change from 'binary vs. text mode' to 'protocol 0, 1, 2'.Guido van Rossum2003-01-272-16/+29
| | | | The protocol now defaults to 1. Protocol 2 is still unimplemented.
* Support socket timeout in SSL, by Geoff Talvola.Guido van Rossum2003-01-273-0/+55
| | | | (SF patch #675750, to fix SF bug #675552.)
* Begin documenting protocol 2.Guido van Rossum2003-01-272-0/+304
|
* Added some comments.Tim Peters2003-01-271-0/+2
|
* memoize(): Reworded the docs to try to disentangle the Pickler's memoTim Peters2003-01-271-7/+11
| | | | dict from the Unpickler's memo (which is a different beast!).
* Using marshal functions to pack & unpack 1-byte ints is an obscure &Tim Peters2003-01-271-11/+10
| | | | expensive way to spell chr() and ord().
* Added a brief comment to each pickle opcode declaration.Tim Peters2003-01-271-45/+50
|
* Remove a stray quote.Guido van Rossum2003-01-271-1/+1
|
* Repaired comment.Tim Peters2003-01-271-2/+2
|
* stringnl_noescape_pair(): changed the reader to separate the twoTim Peters2003-01-271-6/+6
| | | | | | | 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.
* Moving pickletools.py from the sandbox into the std library. I startedTim Peters2003-01-273-2/+1803
| | | | | this over the weekend, and it made faster & better progress than I expected -- it's already useful <wink>.
* Repaired spelling of "test_iconv_codecs" in various expected-skip lists.Tim Peters2003-01-271-3/+3
|
* Update register exampleAndrew M. Kuchling2003-01-271-10/+16
|
* Adjust some of Skip's latest changes slightly; these really are thingsFred Drake2003-01-271-5/+13
| | | | that should stand out.
* Make the "notice" environments somewhat similar, with less differenceFred Drake2003-01-271-1/+11
| | | | between the "note" and "warning" flavors.
* Remove the recently-added get_distutil_options(), and justAndrew M. Kuchling2003-01-272-8/+15
| | | | have two tuples listing the legal keywords for setup() and Extension()
* Fix comment typosWalter Dörwald2003-01-271-3/+4
|
* Attempting to keep the Mac section of the NEWS file up-to-date, in steadJack Jansen2003-01-271-1/+5
| | | | of the usual frantic editing at the last moment:-)
* * add \versionadded{} strings as appropriateSkip Montanaro2003-01-271-5/+23
| | | | | | * remove doc for defunct IllegalKeywordArgument exception * add note that HTTP class is for backward compatibility and refer reader to online docstrings for help
* Fix reference counting of iconvcodec_Type. Fixes #670715.Martin v. Löwis2003-01-271-6/+4
| | | | Remove GC code; the base type does not need GC.
* Patch #670715: Universal Unicode Codec for POSIX iconv.Martin v. Löwis2003-01-271-0/+95
|
* Update for release.Kurt B. Kaiser2003-01-273-13/+39
| | | | | Modified Files: INSTALL.txt NEWS.txt idlever.py