Martin v. Löwis
ac93bc2501
When decoding UTF-16, don't assume that the buffer is in native endianness
...
when checking surrogates.
2001-06-26 22:43:40 +00:00
Tim Peters
208efe5640
Windows build broke from recent Unicode changes -- need to #define
...
SIZEOF_SHORT by hand here.
Also added dynamic check that SIZEOF_SHORT is correct for the platform (in
_testcapimodule).
2001-06-26 22:40:47 +00:00
Tim Peters
e77f2e2798
gen_getattr: make the gi_running and gi_frame members discoverable (but
...
not writable -- too dangerous!) from Python code.
2001-06-26 22:24:51 +00:00
Martin v. Löwis
0ba70cc3c8
Support using UCS-4 as the Py_UNICODE type:
...
Add configure option --enable-unicode.
Add config.h macros Py_USING_UNICODE, PY_UNICODE_TYPE, Py_UNICODE_SIZE,
SIZEOF_WCHAR_T.
Define Py_UCS2.
Encode and decode large UTF-8 characters into single Py_UNICODE values
for wide Unicode types; likewise for UTF-16.
Remove test whether sizeof Py_UNICODE is two.
2001-06-26 22:22:37 +00:00
Jack Jansen
ff1cc902fe
Added a Parser_OSX class that can parse new-style (C-only) headers,
...
such as the Core Foundation ones.
2001-06-26 21:53:25 +00:00
Jack Jansen
f4b9fb719a
Added CF module build and project generation (carbon only).
2001-06-26 21:52:08 +00:00
Jack Jansen
686f9c344c
First small step towards bgen-generated CoreFoundation. there is hardly any real functionality yet, but method chains seem to work, and so do Retain/Release semantics.
2001-06-26 21:51:18 +00:00
Tim Peters
d8e1c9e177
Add "gi_" (generator-iterator) prefix to names of genobject members.
...
Makes it much easier to find references via dumb editor search (former
"frame" in particular was near-hopeless).
2001-06-26 20:58:58 +00:00
Fredrik Lundh
ee13dba1aa
more unicode tweaks: fix unicodectype for sizeof(Py_UNICODE) >
...
sizeof(int)
2001-06-26 20:36:12 +00:00
Barry Warsaw
e9218a1a8e
Remove the restriction on a mapping's .update() method.
2001-06-26 20:32:59 +00:00
Barry Warsaw
51acc8d363
Add an item about the extension to {}.update() to allow generic
...
mapping objects as an argument.
2001-06-26 20:12:50 +00:00
Barry Warsaw
41775385df
Add a bunch of tests for extended dict.update() where the argument is
...
a non-dictionary mapping object. Include tests for several expected
failure modes.
2001-06-26 20:09:28 +00:00
Barry Warsaw
66a0d1d9b9
dict_update(): Generalize this method so {}.update() accepts any
...
"mapping" object, specifically one that supports PyMapping_Keys() and
PyObject_GetItem(). This allows you to say e.g. {}.update(UserDict())
We keep the special case for concrete dict objects, although that
seems moderately questionable. OTOH, the code exists and works, so
why change that?
.update()'s docstring already claims that D.update(E) implies calling
E.keys() so it's appropriate not to transform AttributeErrors in
PyMapping_Keys() to TypeErrors.
Patch eyeballed by Tim.
2001-06-26 20:08:32 +00:00
Fredrik Lundh
0dcf67e56d
more unicode tweaks: make unichr(0xdddddddd) behave like u"\Udddddddd"
...
wrt surrogates. (this extends the valid range from 65535 to 1114111)
2001-06-26 20:01:56 +00:00
Fredrik Lundh
5b97935604
experimental UCS-4 support: don't assume that MS_WIN32 implies
...
HAVE_USABLE_WCHAR_T
2001-06-26 17:46:10 +00:00
Fredrik Lundh
1294ad0c59
experimental UCS-4 support: added USE_UCS4_STORAGE define to
...
unicodeobject.h, which forces sizeof(Py_UNICODE) == sizeof(Py_UCS4).
(this may be good enough for platforms that doesn't have a 16-bit
type. the UTF-16 codecs don't work, though)
2001-06-26 17:17:07 +00:00
Fredrik Lundh
45714e9ecb
experimental UCS-4 support: made compare a bit more robust, in case
...
sizeof(Py_UNICODE) >= sizeof(long). also changed surrogate expansion
to work if sizeof(Py_UNICODE) > 2.
2001-06-26 16:39:36 +00:00
Fredrik Lundh
3083163dc1
experimental UCS-4 support: don't assume that MS_WIN32 implies
...
HAVE_USABLE_WCHAR_T
2001-06-26 15:11:00 +00:00
Jack Jansen
ba18673045
Added a note about recompiling OSAm before distributing.
2001-06-26 08:06:59 +00:00
Just van Rossum
639a740e50
Fixed typo in doc string.
2001-06-26 06:57:12 +00:00
Just van Rossum
0297dca941
Fixed bug that prevented shared libs that are submodules of a
...
package to be loaded from a PYD resource.
2001-06-26 06:54:33 +00:00
Tim Peters
b6c3ceae79
SF bug #436207 : "if 0: yield x" is ignored.
...
Not anymore <wink>. Pure hack. Doesn't fix any other "if 0:" glitches.
2001-06-26 03:36:28 +00:00
Tim Peters
3e7b1a04a0
Teach the types module about generators. Thanks to James Althoff on the
...
Iterators list for bringing it up!
2001-06-25 19:46:25 +00:00
Just van Rossum
ae1f65ff82
Return self.trace_dispatch from dispatch_return() to enable stepping through generators. (An alternative would be to create a new "yield" debugger event, but that involves many more changes, and might break Bdb subclasses.)
2001-06-25 18:01:24 +00:00
Fred Drake
b037d33245
Updated link to zlib's home page.
2001-06-25 15:30:13 +00:00
Jack Jansen
19f273c7b6
WaitNextEvent short vs. unsigned short fix.
2001-06-25 08:48:05 +00:00
Steven M. Gava
d7b6ed268e
Initial revision
2001-06-25 07:23:57 +00:00
Martin v. Löwis
51777ce758
Remove const-ness in inet_pton declaration.
2001-06-25 06:38:03 +00:00
Martin v. Löwis
2b110f9713
Replace snprintf with sprintf.
2001-06-25 06:37:02 +00:00
Tim Peters
2106ef0222
Repair indentation in comment.
...
Add a temporary driver to help track down remaining leak(s).
2001-06-25 01:30:12 +00:00
Martin v. Löwis
a2ca1ae3ca
Fix typos in inet_pton/inet_ntop.
2001-06-24 21:35:43 +00:00
Martin v. Löwis
a45ecae474
Provide a definition for offsetof.
2001-06-24 21:28:42 +00:00
Martin v. Löwis
b9ab159052
Emulate inet_{pton,ntop} on systems that don't provide it.
2001-06-24 21:18:26 +00:00
Martin v. Löwis
530f99017e
Move USE_TOOLBOX_OBJECT_GLUE into acconfig.h.
2001-06-24 20:59:45 +00:00
Tim Peters
fee69d0313
Changed some comments. Removed the caution about clearing globs, since
...
clearing a shallow copy _run_examples() makes itself can't hurt anything.
2001-06-24 20:24:16 +00:00
Tim Peters
d4ad59e1eb
Clear the copy of the globs dict after running examples. This helps to
...
break cycles, which are a special problem when running generator tests
that provoke exceptions by invoking the .next() method of a named
generator-iterator: then the iterator is named in globs, and the
iterator's frame gets a tracekback object pointing back to globs, and
gc doesn't chase these types so the cycle leaks.
Also changed _run_examples() to make a copy of globs itself, so its
callers (direct and indirect) don't have to (and changed the callers
to stop making their own copies); *that* much is a change I've been
meaning to make for a long time (it's more robust the new way).
Here's a way to provoke the symptom without doctest; it leaks at a
prodigious rate; if the last two "source" lines are replaced with
g().next()
the iterator isn't named and then there's no leak:
source = """\
def g():
yield 1/0
k = g()
k.next()
"""
code = compile(source, "<source>", "exec")
def f(globs):
try:
exec code in globs
except ZeroDivisionError:
pass
while 1:
f(globals().copy())
After this change, running test_generators in an infinite loop still leaks,
but reduced from a flood to a trickle.
2001-06-24 20:02:47 +00:00
Tim Peters
77f2d504c3
doctest systematically leaked memory when handling an exception in an
...
example (an obvious trackback cycle). Repaired.
Bugfix candidate.
2001-06-24 18:59:01 +00:00
Tim Peters
b2bc6a93df
Added a "generate k-combinations of a list" example posted to c.l.py.
2001-06-24 10:14:27 +00:00
Tim Peters
ea2e97a08a
New tests to provoke SyntaxErrors unique to generators. Minor fiddling
...
of other tests.
2001-06-24 07:10:02 +00:00
Tim Peters
08bba953ea
doctest doesn't handle intentional SyntaxError exceptions gracefully,
...
because it picks up the first line of traceback.format_exception_only()
instead of the last line. Pick up the last line instead!
2001-06-24 06:46:58 +00:00
Tim Peters
ee30927b45
Another variant of the 2-3-5 test, mixing generators with a LazyList class.
...
Good news: Some of this stuff is pretty sophisticated (read nuts), and
I haven't bumped into a bug yet.
Bad news: If I run the doctest in an infinite loop, memory is clearly
leaking.
2001-06-24 05:47:06 +00:00
Tim Peters
7e82b9cc6b
Pure brute-force hackery to allow Python to build on Windows again,
...
because I need to make progress and don't have time now to think about
whatever it is the new code is trying to accomplish.
2001-06-24 05:08:52 +00:00
Tim Peters
b9e9ff1288
More tests.
2001-06-24 03:44:52 +00:00
Tim Peters
0f9da0acde
Add a recursive Sieve of Eratosthenes prime generator. Not practical,
...
but it's a heck of a good generator exerciser (think about it <wink>).
2001-06-23 21:01:47 +00:00
Tim Peters
6ba5f79674
Add all the examples from PEP 255, and a few email examples.
2001-06-23 20:45:43 +00:00
Tim Peters
1def351b45
New std test for generators, initially populated with doctests NeilS put
...
together.
2001-06-23 20:27:04 +00:00
Martin v. Löwis
bfdf4ecad0
Properly use &&. Closes bug #434988 .
2001-06-23 19:58:46 +00:00
Martin v. Löwis
b28f6e7c7b
Properly use &&. Closes bug #434989 .
2001-06-23 19:55:38 +00:00
Martin v. Löwis
01dfdb3d35
Patch #401196 : Configuration machinery for IPv6.
...
Contributed by Jun-ichiro "itojun" Hagino. get{addr,name}info emulation
code taken from WIDE.
2001-06-23 16:30:13 +00:00
Andrew M. Kuchling
e7e03cd0cf
Fix typo
2001-06-23 16:26:44 +00:00