Antoine Pitrou
f8387af262
Issue #4688 : Add a heuristic so that tuples and dicts containing only
...
untrackable objects are not tracked by the garbage collector. This can
reduce the size of collections and therefore the garbage collection overhead
on long-running programs, depending on their particular use of datatypes.
(trivia: this makes the "binary_trees" benchmark from the Computer Language
Shootout 40% faster)
2009-03-23 18:41:45 +00:00
Raymond Hettinger
e5b78563b6
Make imported name private and wrap long-line.
2009-03-23 18:26:59 +00:00
Mark Dickinson
0b666bfdf9
Issue #5512 : speed up the long division algorithm for Python longs.
...
The basic algorithm remains the same; the most significant speedups
come from the following three changes:
(1) normalize by shifting instead of multiplying and dividing
(2) the old algorithm usually did an unnecessary extra iteration of
the outer loop; remove this. As a special case, this means that
long divisions with a single-digit result run twice as fast as
before.
(3) make inner loop much tighter.
Various benchmarks show speedups of between 50% and 150% for long
integer divisions and modulo operations.
2009-03-23 18:25:13 +00:00
Raymond Hettinger
906f95e80b
Move initialization of root link to __init__.
2009-03-23 04:42:18 +00:00
Raymond Hettinger
f1e2df9780
Add more comments. Improve variable names.
...
Make links clearer by using a Link object
instead of a list. Use proxy links to avoid
circular references.
2009-03-23 00:08:09 +00:00
Benjamin Peterson
704dc269e3
AttributeError can be thrown during recursion errors
2009-03-22 22:24:58 +00:00
Lars Gustäbel
2020a59563
Issue #5068 : Fixed the tarfile._BZ2Proxy.read() method that would loop
...
forever on incomplete input. That caused tarfile.open() to hang when used
with mode 'r' or 'r:bz2' and a fileobj argument that contained no data or
partial bzip2 compressed data.
2009-03-22 20:09:33 +00:00
Benjamin Peterson
b364bfe2f4
close the file even if an exception occurs #5536
2009-03-22 17:45:11 +00:00
Matthias Klose
8ed2520536
- Fix comment macro in python.man
2009-03-22 13:08:22 +00:00
Hirokazu Yamamoto
52a3492efb
There is no macro named SIZEOF_SSIZE_T. Should use SIZEOF_SIZE_T instead.
2009-03-21 10:32:52 +00:00
Mark Dickinson
f35f8044e4
Rewrite Py_ARITHMETIC_RIGHT_SHIFT so that it's valid for all signed
...
integer types T, not just those for which "unsigned T" is legal.
2009-03-20 23:16:14 +00:00
Raymond Hettinger
2cef1a5409
Add MutableSet example.
2009-03-20 18:25:49 +00:00
Mark Dickinson
efc82f7e8e
Issue #4258 : Use 30-bit digits for Python longs, on 64-bit platforms.
...
Backport of r70459.
2009-03-20 15:51:55 +00:00
Raymond Hettinger
c8e81ef508
Fix typo
2009-03-19 23:22:25 +00:00
Raymond Hettinger
e980d2d44b
* Add implementation notes.
...
* Re-order methods so that those touching the underlying data
structure come first and the derived methods come last.
2009-03-19 23:12:41 +00:00
Raymond Hettinger
2412299be9
* Add clearer comment to initialization code.
...
* Add optional argument to popitem() -- modeled
after Anthon van der Neut's C version.
* Fix method markup in docs.
2009-03-19 19:59:58 +00:00
Raymond Hettinger
a0b8d9ad2d
Silence a compiler warning.
2009-03-19 19:24:43 +00:00
Raymond Hettinger
91852ca673
Issue 5381: Add object_pairs_hook to the json module.
2009-03-19 19:19:03 +00:00
Raymond Hettinger
2124599eaa
Improve implementation with better underlying data structure
...
for O(1) deletions. Big-Oh performance now the same as regular
dictionaries. Uses a doubly-linked list instead of a list/seq
to track insertion order.
2009-03-19 15:21:10 +00:00
Benjamin Peterson
fcfa7ead4f
close files after comparing them
2009-03-19 03:04:31 +00:00
Raymond Hettinger
a61ae6922f
Use mixin methods where possible. (2.7 only -- these don't all exist in 3.0)
2009-03-18 22:13:20 +00:00
Benjamin Peterson
06919a177d
a much better example
2009-03-18 20:58:09 +00:00
Benjamin Peterson
6ffe852f90
fix strange errors when setting attributes on tracebacks #4034
2009-03-18 20:52:15 +00:00
Antoine Pitrou
7c33bd5ecb
Attempt to fix Solaris buildbot failure on test_locale
2009-03-18 17:10:04 +00:00
Mark Dickinson
6b265f1bf8
Issue 4474: On platforms with sizeof(wchar_t) == 4 and
...
sizeof(Py_UNICODE) == 2, PyUnicode_FromWideChar now converts
each character outside the BMP to the appropriate surrogate pair.
Thanks Victor Stinner for the patch.
(backport of r70452 from py3k to trunk)
2009-03-18 16:07:26 +00:00
Hirokazu Yamamoto
eb15863a97
Updated openssl support on VC6. (openssl-0.9.6g is old, cannot compile with _ssl.c)
...
If you use http://svn.python.org/projects/external/openssl-0.9.8g , Perl is not needed.
This scheme was ported from PCBuild.
2009-03-18 10:17:26 +00:00
Mark Dickinson
b14514a153
Fix bug in _insert_thousands_sep: too much zero padding could be
...
added for 'n' formats with non-repeating thousands-separator.
2009-03-18 08:22:51 +00:00
Bob Ippolito
d914e3f861
merge json library with simplejson 2.0.9 (issue 4136)
2009-03-17 23:19:00 +00:00
Mark Dickinson
277859d591
Issue #2110 : Add support for thousands separator and 'n' format specifier
...
to Decimal __format__ method.
2009-03-17 23:03:46 +00:00
Benjamin Peterson
ed3558b334
I thought this was begging for an example
2009-03-17 20:29:51 +00:00
Mark Dickinson
b065e52bc2
Fix bug in Decimal __format__ method that swapped left and right
...
alignment.
2009-03-17 18:01:03 +00:00
Georg Brandl
8cbe9556cf
Add token markup.
2009-03-16 19:42:03 +00:00
Hirokazu Yamamoto
bb7467f6e3
Added skip for old MSVC.
2009-03-15 22:43:14 +00:00
Georg Brandl
fc9ea97a18
Move the previously local import of threading to module level.
...
This is cleaner and avoids lockups in obscure cases where a Queue
is instantiated while the import lock is already held by another thread.
OKed by Tim Peters.
2009-03-15 22:11:07 +00:00
Georg Brandl
545a134916
Fix markup in re docs and give a mail address in regex howto, so that
...
the recommendation to send suggestions to the author can be followed.
2009-03-15 21:59:37 +00:00
Georg Brandl
173c1f1a01
#5469 : add with statement to list of name-binding constructs.
2009-03-15 21:53:56 +00:00
Georg Brandl
09827eb55e
#5276 : document IDLESTARTUP and .Idle.py.
2009-03-15 21:51:48 +00:00
Georg Brandl
8db96b5969
#5478 : fix copy-paste oversight in function signature.
2009-03-15 21:47:42 +00:00
Georg Brandl
44e5cd3e51
#5488 : add missing struct member.
2009-03-15 21:46:00 +00:00
Georg Brandl
5a95b21fee
#5491 : clarify nested() semantics.
2009-03-15 21:44:43 +00:00
Georg Brandl
ed4cefbedd
Fix a small nit in the error message if bool() falls back on __len__ and it returns the wrong type: it would tell the user that __nonzero__ should return bool or int.
2009-03-15 21:43:38 +00:00
Georg Brandl
3259ef3dff
#5493 : clarify __nonzero__ docs.
2009-03-15 21:37:16 +00:00
Georg Brandl
4c95e091d6
#5496 : fix docstring of lookup().
2009-03-15 21:32:06 +00:00
Benjamin Peterson
1706c644ae
fix tuple.index() error message #5495
2009-03-15 14:38:55 +00:00
Nick Coghlan
8eba5ed0d9
Make marshalling errors a little more informative as to what went wrong
2009-03-15 03:24:46 +00:00
Eric Smith
2ace4cf813
Unicode format tests weren't actually testing unicode. This was probably due to the original backport from py3k.
2009-03-14 14:37:38 +00:00
Eric Smith
6f42edb682
Issue 5237, Allow auto-numbered replacement fields in str.format() strings.
...
For simple uses for str.format(), this makes the typing easier. Hopfully this
will help in the adoption of str.format().
For example:
'The {} is {}'.format('sky', 'blue')
You can mix and matcth auto-numbering and named replacement fields:
'The {} is {color}'.format('sky', color='blue')
But you can't mix and match auto-numbering and specified numbering:
'The {0} is {}'.format('sky', 'blue')
ValueError: cannot switch from manual field specification to automatic field numbering
Will port to 3.1.
2009-03-14 11:57:26 +00:00
Antoine Pitrou
feeafff052
Issue #1222 : locale.format() bug when the thousands separator is a space character.
2009-03-14 00:07:21 +00:00
Georg Brandl
e83a4adba7
#5486 : typos.
2009-03-13 19:03:58 +00:00
Raymond Hettinger
efa7c138b6
Issue 5477: Fix buglet in the itertools documentation.
2009-03-12 00:31:58 +00:00