Raymond Hettinger
a1ca94a102
Issue 2246: itertools grouper object did not participate in GC (should be backported).
2008-03-06 22:51:36 +00:00
Raymond Hettinger
6e3e415886
Small code cleanup.
2008-03-05 21:04:32 +00:00
Raymond Hettinger
66f91ea966
C implementation of itertools.permutations().
2008-03-05 20:59:58 +00:00
Thomas Heller
f3c0559b5e
Issue 1872: Changed the struct module typecode from 't' to '?', for
...
compatibility with PEP3118.
2008-03-05 15:34:29 +00:00
Raymond Hettinger
f1cca2b593
Fix refleak in chain().
2008-03-04 22:29:44 +00:00
Thomas Heller
a23aede562
Try to fix the build for PY_LINUX.
2008-03-04 20:21:42 +00:00
Thomas Heller
8bdf81d2df
Merged changes from libffi3-branch.
...
The bundled libffi copy is now in sync with the recently released
libffi3.0.4 version, apart from some small changes to
Modules/_ctypes/libffi/configure.ac.
I gave up on using libffi3 files on os x.
Instead, static configuration with files from pyobjc is used.
2008-03-04 20:09:11 +00:00
Raymond Hettinger
d553d856e7
Beef-up docs and tests for itertools. Fix-up end-case for product().
2008-03-04 04:17:08 +00:00
Neal Norwitz
ca752f3b1a
Only DECREF if ret != NULL
2008-03-03 04:37:45 +00:00
Raymond Hettinger
e3fabd10cb
Handle 0-tuples which can be singletons.
2008-03-02 12:02:19 +00:00
Raymond Hettinger
61024b9181
Simplify code for itertools.product().
2008-03-02 11:57:16 +00:00
Gerhard Häring
1cc60ed214
Updated to pysqlite 2.4.1. Documentation additions will come later.
2008-02-29 22:08:41 +00:00
Raymond Hettinger
08ff6822cc
Handle the repeat keyword argument for itertools.product().
2008-02-29 02:21:48 +00:00
Raymond Hettinger
b4cbc98c39
Add alternate constructor for itertools.chain().
2008-02-28 22:46:41 +00:00
Raymond Hettinger
05bf6338b8
Have itertools.chain() consume its inputs lazily instead of building a tuple of iterators at the outset.
2008-02-28 22:30:42 +00:00
Christian Heimes
cdddf18768
The empty tuple is usually a singleton with a much higher refcnt than 1
2008-02-28 11:18:49 +00:00
Raymond Hettinger
3bd771263d
One too many decrefs.
2008-02-27 01:08:04 +00:00
Raymond Hettinger
93e804da9c
Add itertools.combinations().
2008-02-26 23:40:50 +00:00
Christian Heimes
ea837931cf
Patch #1691070 from Roger Upole: Speed up PyArg_ParseTupleAndKeywords() and improve error msg
...
My tests don't show the promised speed up of 10%. The code is as fast as the old code for simple cases and slightly faster for complex cases with several of args and kwargs. But the patch simplifies the code, too.
2008-02-26 17:23:51 +00:00
Christian Heimes
aa0ef52ea1
The contains function raised a gcc warning. The new code is copied straight from py3k.
2008-02-26 08:18:11 +00:00
Neal Norwitz
b628913b08
Whitespace normalization
2008-02-26 05:12:50 +00:00
Facundo Batista
b1d70e2252
Coerced PyBool_Type to be able to compare it.
2008-02-25 23:46:02 +00:00
Raymond Hettinger
9d63837e9b
Make sure the itertools filter functions give the same performance for func=bool as func=None.
2008-02-25 22:42:32 +00:00
Facundo Batista
df4198915a
Issue 2168. gdbm and dbm needs to be iterable; this fixes a
...
failure in the shelve module. Thanks Thomas Herve.
2008-02-25 22:33:55 +00:00
Neal Norwitz
114dd944de
Fix typo of hexidecimal
2008-02-24 08:27:49 +00:00
Neal Norwitz
ed0a593a10
Get ctypes working on the Alpha (Tru64). The problem was that there
...
were two module_methods and the one used depended on the order the
modules were loaded. By making the test module_methods static,
it is not exported and the correct version is picked up.
2008-02-24 07:21:56 +00:00
Georg Brandl
ebcfd11c16
#1506171 : added operator.methodcaller().
2008-02-23 23:04:35 +00:00
Georg Brandl
e2065c65d3
#1826 : allow dotted attribute paths in operator.attrgetter.
2008-02-23 23:02:23 +00:00
Christian Heimes
f0476e8169
Patch #1957 : syslogmodule: Release GIL when calling syslog(3)
2008-02-23 17:42:31 +00:00
Facundo Batista
7e251e83d5
Issue 1089358. Adds the siginterrupt() function, that is just a
...
wrapper around the system call with the same name. Also added
test cases, doc changes and NEWS entry. Thanks Jason and Ralf
Schmitt.
2008-02-23 15:07:35 +00:00
Christian Heimes
5224d28d38
Patch #1759 : Backport of PEP 3129 class decorators
...
with some help from Georg
2008-02-23 15:01:05 +00:00
Raymond Hettinger
532316dfa6
Add more comments
2008-02-23 04:03:50 +00:00
Eric Smith
a73fbe791d
Added future_builtins, which contains PEP 3127 compatible versions of hex() and oct().
2008-02-23 03:09:44 +00:00
Raymond Hettinger
73d7963242
Improve the implementation of itertools.product()
...
* Fix-up issues pointed-out by Neal Norwitz.
* Add extensive comments.
* The lz->result variable is now a tuple instead of a list.
* Use fast macro getitem/setitem calls so most code is in-line.
* Re-use the result tuple if available (modify in-place instead of copy).
2008-02-23 02:20:41 +00:00
Raymond Hettinger
50986cc45b
First draft for itertools.product(). Docs and other updates forthcoming.
2008-02-22 03:16:42 +00:00
Thomas Heller
981f31860b
configure.ac: Remove the configure check for _Bool, it is already done in the
...
top-level Python configure script.
configure, fficonfig.h.in: regenerated.
2008-02-21 18:28:48 +00:00
Eric Smith
a9f7d62480
Backport of PEP 3101, Advanced String Formatting, from py3k.
...
Highlights:
- Adding PyObject_Format.
- Adding string.Format class.
- Adding __format__ for str, unicode, int, long, float, datetime.
- Adding builtin format.
- Adding ''.format and u''.format.
- str/unicode fixups for formatters.
The files in Objects/stringlib that implement PEP 3101 (stringdefs.h,
unicodedefs.h, formatter.h, string_format.h) are identical in trunk
and py3k. Any changes from here on should be made to trunk, and
changes will propogate to py3k).
2008-02-17 19:46:49 +00:00
Facundo Batista
e139688d34
Issue 2112. mmap does not raises EnvironmentError no more, but
...
a subclass of it. Thanks John Lenton.
2008-02-17 18:59:29 +00:00
Amaury Forgeot d'Arc
588ff93f13
Crashers of the day: Py_CLEAR must be used when there is a chance that the
...
function can be called recursively.
This was discussed in issue1020188.
In python codebase, all occurrences of Py_[X]DECREF(xxx->yyy) are suspect,
except when they appear in tp_new or tp_dealloc functions, or when
the member cannot be of a user-defined class.
Note that tp_init is not safe.
I do have a (crashing) example for every changed line.
Is it worth adding them to the test suite?
Example:
class SpecialStr(str):
def __del__(self):
s.close()
import cStringIO
s = cStringIO.StringIO(SpecialStr("text"))
s.close() # Segfault
2008-02-16 14:34:57 +00:00
Christian Heimes
7adfad850a
Bug #2111 : mmap segfaults when trying to write a block opened with PROT_READ
...
Thanks to Thomas Herve for the fix.
2008-02-15 08:20:11 +00:00
Christian Heimes
3b718a79af
Implemented Martin's suggestion to clear the free lists during the garbage collection of the highest generation.
2008-02-14 12:47:33 +00:00
Thomas Heller
a06a1a88ee
Add pickle support to ctypes types.
2008-02-13 20:21:53 +00:00
Georg Brandl
0a40ffb1b3
#2063 : correct order of utime and stime in os.times()
...
result on Windows.
2008-02-13 07:20:22 +00:00
Raymond Hettinger
a37430a0ce
dict.copy() rises from the ashes. Revert r60687.
2008-02-12 19:05:36 +00:00
Raymond Hettinger
17a74c395e
Add -3 warnings that set.copy(), dict.copy(), and defaultdict.copy() will go away in Py3.x
2008-02-09 04:37:49 +00:00
Hye-Shik Chang
01612e7dec
Update big5hkscs codec to conform to the HKSCS:2004 revision.
2008-02-08 17:10:20 +00:00
Amaury Forgeot d'Arc
b01aa430d5
issue 2045: Infinite recursion when printing a subclass of defaultdict,
...
if default_factory is set to a bound method.
Will backport.
2008-02-08 00:56:02 +00:00
Brett Cannon
8352585909
Make sure a switch statement does not have repetitive case statements.
...
Error found through LLVM post-2.1 svn.
2008-02-07 22:27:10 +00:00
Thomas Heller
55b8c3e26f
Fixed refcounts and error handling.
...
Should not be merged to py3k branch.
2008-02-06 20:29:17 +00:00
Christian Heimes
e6a8074892
Another int -> pid_t case
2008-02-03 19:51:13 +00:00