bf8c195 | Neal Norwitz | 15 August 2006, 04:14:57 UTC | Georg fixed one of my bugs, so I'll repay him with 2 NEWS entries. Now we're even. :-) | 15 August 2006, 04:14:57 UTC |
c02c1c8 | Tim Peters | 15 August 2006, 00:25:04 UTC | Whitespace normalization. | 15 August 2006, 00:25:04 UTC |
9dc7b7c | Georg Brandl | 14 August 2006, 22:10:24 UTC | Patch #1511317: don't crash on invalid hostname info | 14 August 2006, 22:10:24 UTC |
d76bd69 | Georg Brandl | 14 August 2006, 22:01:24 UTC | Cookie.py shouldn't "bogusly" use string._idmap. | 14 August 2006, 22:01:24 UTC |
7a1af77 | Georg Brandl | 14 August 2006, 21:55:28 UTC | Patch #1536071: trace.py should now find the full module name of a file correctly even on Windows. | 14 August 2006, 21:55:28 UTC |
85fec59 | Georg Brandl | 14 August 2006, 21:45:32 UTC | Add an additional test: BZ2File write methods should raise IOError when file is read-only. | 14 August 2006, 21:45:32 UTC |
3335a7a | Georg Brandl | 14 August 2006, 21:42:55 UTC | Patch #1535500: fix segfault in BZ2File.writelines and make sure it raises the correct exceptions. | 14 August 2006, 21:42:55 UTC |
2463f8f | Georg Brandl | 14 August 2006, 21:34:08 UTC | Make tabnanny recognize IndentationErrors raised by tokenize. Add a test to test_inspect to make sure indented source is recognized correctly. (fixes #1224621) | 14 August 2006, 21:34:08 UTC |
26a07b5 | Georg Brandl | 14 August 2006, 20:25:39 UTC | Fix refleak introduced in rev. 51248. | 14 August 2006, 20:25:39 UTC |
1ce433e | Thomas Heller | 14 August 2006, 16:20:04 UTC | News item for rev 51281. | 14 August 2006, 16:20:04 UTC |
ef8d513 | Thomas Heller | 14 August 2006, 16:17:41 UTC | Patch #1536908: Add support for AMD64 / OpenBSD. Remove the -no-stack-protector compiler flag for OpenBSD as it has been reported to be unneeded. | 14 August 2006, 16:17:41 UTC |
3a45779 | Marc-André Lemburg | 14 August 2006, 12:57:27 UTC | Correct an accidentally removed previous patch. | 14 August 2006, 12:57:27 UTC |
4873fb2 | Georg Brandl | 14 August 2006, 12:36:06 UTC | Improve markup in PyUnicode_RichCompare. | 14 August 2006, 12:36:06 UTC |
757ea27 | Marc-André Lemburg | 14 August 2006, 11:44:34 UTC | Readd NEWS items that were accidentally removed by r51276. | 14 August 2006, 11:44:34 UTC |
8672004 | Thomas Heller | 14 August 2006, 11:17:48 UTC | Apply the patch #1532975 plus ideas from the patch #1533481. ctypes instances no longer have the internal and undocumented '_as_parameter_' attribute which was used to adapt them to foreign function calls; this mechanism is replaced by a function pointer in the type's stgdict. In the 'from_param' class methods, try the _as_parameter_ attribute if other conversions are not possible. This makes the documented _as_parameter_ mechanism work as intended. Change the ctypes version number to 1.0.1. | 14 August 2006, 11:17:48 UTC |
040f76b | Marc-André Lemburg | 14 August 2006, 10:55:19 UTC | Slightly revised version of patch #1538956: Replace UnicodeDecodeErrors raised during == and != compares of Unicode and other objects with a new UnicodeWarning. All other comparisons continue to raise exceptions. Exceptions other than UnicodeDecodeErrors are also left untouched. | 14 August 2006, 10:55:19 UTC |
e6dd31c | Thomas Heller | 14 August 2006, 10:02:24 UTC | Revert the change that tries to zero out a closure's result storage area because the size if unknown in source/callproc.c. | 14 August 2006, 10:02:24 UTC |
dca703f | Thomas Heller | 14 August 2006, 07:50:14 UTC | Check for NULL return value of GenericCData_new(). Fixes klockwork issues #188, #189. | 14 August 2006, 07:50:14 UTC |
efa2727 | Thomas Heller | 14 August 2006, 07:14:09 UTC | Check for NULL return value from new_CArgObject(). Fixes klockwork issues #183, #184, #185. | 14 August 2006, 07:14:09 UTC |
acdedfb | Thomas Heller | 14 August 2006, 07:13:05 UTC | Remove unused, buggy test function. Fixes klockwork issue #207. | 14 August 2006, 07:13:05 UTC |
4c73177 | Neal Norwitz | 14 August 2006, 01:49:54 UTC | Update purify doc some. | 14 August 2006, 01:49:54 UTC |
af33f2d | Neal Norwitz | 14 August 2006, 00:59:03 UTC | Can't return NULL from a void function. If there is a memory error, about the best we can do is call PyErr_WriteUnraisable and go on. We won't be able to do the call below either, so verify delstr is valid. | 14 August 2006, 00:59:03 UTC |
714a59d | Neal Norwitz | 14 August 2006, 00:51:15 UTC | Ignore pgen.exe and kill_python.exe for cygwin | 14 August 2006, 00:51:15 UTC |
5ed4997 | Neal Norwitz | 13 August 2006, 18:41:15 UTC | Get rid of compiler warning | 13 August 2006, 18:41:15 UTC |
93bf902 | Neal Norwitz | 13 August 2006, 18:40:39 UTC | Handle alloca failures. Klocwork 225-228 | 13 August 2006, 18:40:39 UTC |
9ac8953 | Neal Norwitz | 13 August 2006, 18:13:36 UTC | Handle malloc failure. Klocwork 281 | 13 August 2006, 18:13:36 UTC |
ccc56c7 | Neal Norwitz | 13 August 2006, 18:13:02 UTC | Really address the issue of where to place the assert for leftblock. (Followup of Klocwork 274) | 13 August 2006, 18:13:02 UTC |
20745b1 | Neal Norwitz | 13 August 2006, 18:12:45 UTC | Handle failure from PyModule_GetDict() (Klocwork 208). Fix a bunch of refleaks in the init of the module. This would only be found when running python -v. | 13 August 2006, 18:12:45 UTC |
26a8abf | Neal Norwitz | 13 August 2006, 18:12:26 UTC | Handle failures from lookup. Klocwork 341-342 | 13 August 2006, 18:12:26 UTC |
ee7c8f9 | Neal Norwitz | 13 August 2006, 18:12:03 UTC | It's very unlikely, though possible that source is not a string. Verify that PyString_AsString() returns a valid pointer. (The problem can arise when zlib.decompress doesn't return a string.) Klocwork 346 | 13 August 2006, 18:12:03 UTC |
5aa9689 | Neal Norwitz | 13 August 2006, 18:11:43 UTC | Handle malloc and fopen failures more gracefully. Klocwork 180-181 | 13 August 2006, 18:11:43 UTC |
e9ac0bb | Neal Norwitz | 13 August 2006, 18:11:27 UTC | Check return result of PyModule_GetDict(). Fix a bunch of refleaks in the init of the module. This would only be found when running python -v. | 13 August 2006, 18:11:27 UTC |
56423e5 | Neal Norwitz | 13 August 2006, 18:11:08 UTC | Fix segfault when doing string formatting on subclasses of long if __oct__, __hex__ don't return a string. Klocwork 308 | 13 August 2006, 18:11:08 UTC |
3cb31ac | Neal Norwitz | 13 August 2006, 18:10:47 UTC | cpathname could be NULL if it was longer than MAXPATHLEN. Don't try to write the .pyc to NULL. Check results of PyList_GetItem() and PyModule_GetDict() are not NULL. Klocwork 282, 283, 285 | 13 August 2006, 18:10:47 UTC |
b09f4f5 | Neal Norwitz | 13 August 2006, 18:10:28 UTC | Handle a whole lot of failures from PyString_FromInternedString(). Should fix most of Klocwork 234-272. | 13 August 2006, 18:10:28 UTC |
df6a649 | Neal Norwitz | 13 August 2006, 18:10:10 UTC | Move/copy assert for tstate != NULL before first use. Verify that PyEval_Get{Globals,Locals} returned valid pointers. Klocwork 231-232 | 13 August 2006, 18:10:10 UTC |
bfa5f0b | Neal Norwitz | 13 August 2006, 00:20:49 UTC | SF bug #1539336, distutils example code missing | 13 August 2006, 00:20:49 UTC |
1872b1c | Neal Norwitz | 12 August 2006, 18:44:06 UTC | Fix a couple of bugs exposed by the new __index__ code. The 64-bit buildbots were failing due to inappropriate clipping of numbers larger than 2**31 with new-style classes. (typeobject.c) In reviewing the code for classic classes, there were 2 problems. Any negative value return could be returned. Always return -1 if there was an error. Also make the checks similar with the new-style classes. I believe this is correct for 32 and 64 bit boxes, including Windows64. Add a test of classic classes too. | 12 August 2006, 18:44:06 UTC |
8a87f5d | Neal Norwitz | 12 August 2006, 17:03:09 UTC | Patch #1538606, Patch to fix __index__() clipping. I modified this patch some by fixing style, some error checking, and adding XXX comments. This patch requires review and some changes are to be expected. I'm checking in now to get the greatest possible review and establish a baseline for moving forward. I don't want this to hold up release if possible. | 12 August 2006, 17:03:09 UTC |
f3e3042 | Georg Brandl | 12 August 2006, 08:32:02 UTC | Repair logging test spew caused by rev. 51206. | 12 August 2006, 08:32:02 UTC |
953c189 | Tim Peters | 12 August 2006, 05:17:41 UTC | Ah, fudge. One of the prints here actually "shouldn't be" protected by "if verbose:", which caused the test to fail on all non-Windows boxes. Note that I deliberately didn't convert this to unittest yet, because I expect it would be even harder to debug this on Tru64 after conversion. | 12 August 2006, 05:17:41 UTC |
1742f33 | Tim Peters | 12 August 2006, 04:42:47 UTC | test_signal: Signal handling on the Tru64 buildbot appears to be utterly insane. Plug some theoretical insecurities in the test script: - Verify that the SIGALRM handler was actually installed. - Don't call alarm() before the handler is installed. - Move everything that can fail inside the try/finally, so the test cleans up after itself more often. - Try sending all the expected signals in force_test_exit(), not just SIGALRM. Since that was fixed to actually send SIGALRM (instead of invisibly dying with an AttributeError), we've seen that sending SIGALRM alone does not stop this from hanging. - Move the "kill the child" business into the finally clause, so the child doesn't survive test failure to send SIGALRM to other tests later (there are also baffling SIGALRM-related failures in test_socket). - Cancel the alarm in the finally clause -- if the test dies early, we again don't want SIGALRM showing up to confuse a later test. Alas, this still relies on timing luck wrt the spawned script that sends the test signals, but it's hard to see how waiting for seconds can so often be so unlucky. test_threadedsignals: curiously, this test never fails on Tru64, but doesn't normally signal SIGALRM. Anyway, fixed an obvious (but probably inconsequential) logic error. | 12 August 2006, 04:42:47 UTC |
ebcf875 | Neal Norwitz | 12 August 2006, 03:18:50 UTC | Verify verdat which is returned from malloc is not NULL. Ensure we don't pass NULL to free. Klocwork #306 (at least the first part, checking malloc) | 12 August 2006, 03:18:50 UTC |
0f7dbf7 | Neal Norwitz | 12 August 2006, 03:17:41 UTC | PyModule_GetDict() can fail, produce fatal errors if this happens on startup. Klocwork #298-299. | 12 August 2006, 03:17:41 UTC |
b88cfad | Neal Norwitz | 12 August 2006, 03:16:54 UTC | Check return of PyMem_MALLOC (garbage) is non-NULL. Check seq in both portions of if/else. Klocwork #289-290. | 12 August 2006, 03:16:54 UTC |
5f17d9a | Neal Norwitz | 12 August 2006, 02:33:36 UTC | Don't deref v if it's NULL. Klocwork #214 | 12 August 2006, 02:33:36 UTC |
421c131 | Neal Norwitz | 12 August 2006, 02:12:30 UTC | Whoops, how did that get in there. :-) Revert all the parts of 51227 that were not supposed to go it. Only Modules/_ctypes/cfields.c was supposed to be changed | 12 August 2006, 02:12:30 UTC |
6b4953f | Neal Norwitz | 12 August 2006, 02:06:34 UTC | Check returned pointer is valid. Klocwork #233 | 12 August 2006, 02:06:34 UTC |
b45f351 | Neal Norwitz | 12 August 2006, 01:57:47 UTC | I'm not sure why this code allocates this string for the error message. I think it would be better to always use snprintf and have the format limit the size of the name appropriately (like %.200s). Klocwork #340 | 12 August 2006, 01:57:47 UTC |
ef0de02 | Neal Norwitz | 12 August 2006, 01:53:28 UTC | Try to handle a malloc failure. I'm not entirely sure this is correct. There might be something else we need to do to handle the exception. Klocwork # 212-213 | 12 August 2006, 01:53:28 UTC |
9cd3c34 | Neal Norwitz | 12 August 2006, 01:51:12 UTC | Move the assert which checks for a NULL pointer first. Klocwork #274. | 12 August 2006, 01:51:12 UTC |
e0a81af | Neal Norwitz | 12 August 2006, 01:50:38 UTC | If _stat_float_times is false, we will try to INCREF ival which could be NULL. Return early in that case. The caller checks for PyErr_Occurred so this should be ok. Klocwork #297 | 12 August 2006, 01:50:38 UTC |
6bf1a8f | Neal Norwitz | 12 August 2006, 01:49:12 UTC | Handle NULL nodes while parsing. I'm not entirely sure this is correct. There might be something else that needs to be done to setup the error. Klocwork #295. | 12 August 2006, 01:49:12 UTC |
edb2168 | Neal Norwitz | 12 August 2006, 01:47:59 UTC | This code is actually not used unless WITHOUT_COMPLEX is defined. However, there was no error checking that PyFloat_FromDouble returned a valid pointer. I believe this change is correct as it seemed to follow other code in the area. Klocwork # 292. | 12 August 2006, 01:47:59 UTC |
43bd4db | Neal Norwitz | 12 August 2006, 01:46:42 UTC | It's highly unlikely, though possible for PyEval_Get*() to return NULLs. So be safe and do an XINCREF. Klocwork # 221-222. | 12 August 2006, 01:46:42 UTC |
84167d0 | Neal Norwitz | 12 August 2006, 01:45:47 UTC | Even though _Py_Mangle() isn't truly public anyone can call it and there was no verification that privateobj was a PyString. If it wasn't a string, this could have allowed a NULL pointer to creep in below and crash. I wonder if this should be PyString_CheckExact? Must identifiers be strings or can they be subclasses? Klocwork #275 | 12 August 2006, 01:45:47 UTC |
6f5ff3f | Neal Norwitz | 12 August 2006, 01:43:40 UTC | Klocwork made another run and found a bunch more problems. This is the first batch of fixes that should be easy to verify based on context. This fixes problem numbers: 220 (ast), 323-324 (symtable), 321-322 (structseq), 215 (array), 210 (hotshot), 182 (codecs), 209 (etree). | 12 August 2006, 01:43:40 UTC |
2a899c8 | Thomas Heller | 11 August 2006, 19:55:35 UTC | When a ctypes C callback function is called, zero out the result storage before converting the result to C data. See the comment in the code for details. Provide a better context for errors when the conversion of a callback function's result cannot be converted. | 11 August 2006, 19:55:35 UTC |
975c8bb | Thomas Wouters | 11 August 2006, 15:02:39 UTC | Add ignore of *.pyc and *.pyo to Lib/xml/etree/. | 11 August 2006, 15:02:39 UTC |
0a7d1bb | Georg Brandl | 11 August 2006, 07:26:10 UTC | logging's atexit hook now runs even if the rest of the module has already been cleaned up. | 11 August 2006, 07:26:10 UTC |
368c155 | Georg Brandl | 11 August 2006, 07:15:38 UTC | Add Chris McDonough (latest cgi.py patch) | 11 August 2006, 07:15:38 UTC |
003c9e2 | Neal Norwitz | 11 August 2006, 06:09:41 UTC | Fix the failures on cygwin (2006-08-10 fixed the actual locking issue). The first hunk changes the colon to an ! like other Windows variants. We need to always wait on the child so the lock gets released and no other tests fail. This is the try/finally in the second hunk. | 11 August 2006, 06:09:41 UTC |
8b8c59c | Tim Peters | 11 August 2006, 03:49:10 UTC | force_test_exit(): This has been completely ineffective at stopping test_signal from hanging forever on the Tru64 buildbot. That could be because there's no such thing as signal.SIGALARM. Changed to the idiotic (but standard) signal.SIGALRM instead, and added some more debug output. | 11 August 2006, 03:49:10 UTC |
0857477 | Tim Peters | 11 August 2006, 00:49:01 UTC | test_PyThreadState_SetAsyncExc(): This is failing on some 64-bit boxes. I have no idea what the ctypes docs mean by "integers", and blind-guessing here that it intended to mean the signed C "int" type, in which case perhaps I can repair this by feeding the thread id argument to type ctypes.c_long(). Also made the worker thread daemonic, so it doesn't hang Python shutdown if the test continues to fail. | 11 August 2006, 00:49:01 UTC |
b7ad1eb | Tim Peters | 10 August 2006, 23:22:13 UTC | Whitespace normalization broke test_cgi, because a line of quoted test data relied on preserving a single trailing blank. Changed the string from raw to regular, and forced in the trailing blank via an explicit \x20 escape. | 10 August 2006, 23:22:13 UTC |
0d9ca9f | Tim Peters | 10 August 2006, 22:48:45 UTC | Whitespace normalization. | 10 August 2006, 22:48:45 UTC |
4643c2f | Tim Peters | 10 August 2006, 22:45:34 UTC | Followup to bug #1069160. PyThreadState_SetAsyncExc(): internal correctness changes wrt refcount safety and deadlock avoidance. Also added a basic test case (relying on ctypes) and repaired the docs. | 10 August 2006, 22:45:34 UTC |
789c09d | Martin v. Löwis | 10 August 2006, 19:04:00 UTC | Update dangling references to the 3.2 database to mention that this is UCD 4.1 now. | 10 August 2006, 19:04:00 UTC |
c69ac25 | Guido van Rossum | 10 August 2006, 18:09:25 UTC | Fix title -- it's rc1, not beta3. | 10 August 2006, 18:09:25 UTC |
133f4e4 | Guido van Rossum | 10 August 2006, 17:42:50 UTC | News item for SF bug 1112549. | 10 August 2006, 17:42:50 UTC |
9568b73 | Guido van Rossum | 10 August 2006, 17:41:07 UTC | Chris McDonough's patch to defend against certain DoS attacks on FieldStorage. SF bug #1112549. | 10 August 2006, 17:41:07 UTC |
cd3d8be | Kurt B. Kaiser | 10 August 2006, 17:11:09 UTC | Retrieval of previous shell command was not always preserving indentation since 1.2a1) Patch 1528468 Tal Einat. | 10 August 2006, 17:11:09 UTC |
b2dd1a3 | Tim Peters | 10 August 2006, 03:01:26 UTC | test_copytree_simple(): This was leaving behind two new temp directories each time it ran, at least on Windows. Several changes: explicitly closed all files; wrapped long lines; stopped suppressing errors when removing a file or directory fails (removing /shouldn't/ fail!); and changed what appeared to be incorrect usage of os.removedirs() (that doesn't remove empty directories at and /under/ the given path, instead it must be given an empty leaf directory and then deletes empty directories moving /up/ the path -- could be that the conceptually simpler shutil.rmtree() was really actually intended here). | 10 August 2006, 03:01:26 UTC |
1fe9ca0 | Kurt B. Kaiser | 10 August 2006, 01:41:17 UTC | Changing tokenize (39046) to detect dedent broke tabnanny check (since 1.2a1) | 10 August 2006, 01:41:17 UTC |
388b3a6 | Tim Peters | 10 August 2006, 00:58:49 UTC | Add missing svn:eol-style property to text files. | 10 August 2006, 00:58:49 UTC |
73f12a3 | Martin v. Löwis | 09 August 2006, 23:42:18 UTC | Add some commentary on -mimpure-text. | 09 August 2006, 23:42:18 UTC |
53f2b5f | Kurt B. Kaiser | 09 August 2006, 20:34:46 UTC | ToggleTab dialog was setting indent to 8 even if cancelled (since 1.2a1). | 09 August 2006, 20:34:46 UTC |
faeeab7 | Andrew M. Kuchling | 09 August 2006, 18:23:14 UTC | Typo fix | 09 August 2006, 18:23:14 UTC |
be332e4 | Kurt B. Kaiser | 09 August 2006, 17:47:15 UTC | As a slight enhancement to the previous checkin, improve the internal error reporting by moving message to IDLE console. | 09 August 2006, 17:47:15 UTC |
312e5af | Kurt B. Kaiser | 09 August 2006, 16:46:15 UTC | 1. When used w/o subprocess, all exceptions were preceeded by an error message claiming they were IDLE internal errors (since 1.2a1). 2. Add Ronald Oussoren to CREDITS M NEWS.txt M PyShell.py M CREDITS.txt | 09 August 2006, 16:46:15 UTC |
97ff047 | Armin Rigo | 09 August 2006, 15:37:26 UTC | Concatenation on a long string breaks (SF #1526585). | 09 August 2006, 15:37:26 UTC |
c95f756 | Ronald Oussoren | 09 August 2006, 14:56:33 UTC | It's unlikely that future versions will require _POSIX_C_SOURCE | 09 August 2006, 14:56:33 UTC |
51fc8c4 | Armin Rigo | 09 August 2006, 14:55:26 UTC | Fix and test for an infinite C recursion. | 09 August 2006, 14:55:26 UTC |
98c0480 | Andrew M. Kuchling | 09 August 2006, 14:06:19 UTC | Reindent code | 09 August 2006, 14:06:19 UTC |
58aa6f7 | Andrew M. Kuchling | 09 August 2006, 14:05:35 UTC | Add missing 'self' parameters | 09 August 2006, 14:05:35 UTC |
13300f2 | Andrew M. Kuchling | 09 August 2006, 13:57:05 UTC | [Patch #1534027] Add notes on locale module changes | 09 August 2006, 13:57:05 UTC |
b713660 | Andrew M. Kuchling | 09 August 2006, 13:03:41 UTC | [Bug #1536021] Mention __hash__ change | 09 August 2006, 13:03:41 UTC |
ab2f8f7 | Martin v. Löwis | 09 August 2006, 07:57:39 UTC | __hash__ may now return long int; the final hash value is obtained by invoking hash on the long int. Fixes #1536021. | 09 August 2006, 07:57:39 UTC |
209307e | Georg Brandl | 09 August 2006, 07:03:22 UTC | Introduce an upper bound on tuple nesting depth in C argument format strings; fixes rest of #1523610. | 09 August 2006, 07:03:22 UTC |
8e24a96 | Tim Peters | 09 August 2006, 00:52:26 UTC | Whitespace normalization. | 09 August 2006, 00:52:26 UTC |
7572f03 | Georg Brandl | 08 August 2006, 20:48:10 UTC | ``str`` is now the same object as ``types.StringType``. | 08 August 2006, 20:48:10 UTC |
7f719c5 | Georg Brandl | 08 August 2006, 20:13:13 UTC | Bug #1536660: separate two words. | 08 August 2006, 20:13:13 UTC |
6c223fe | Georg Brandl | 08 August 2006, 20:11:22 UTC | Bug #1536828: typo: TypeType should have been StringType. | 08 August 2006, 20:11:22 UTC |
4f71b55 | Andrew M. Kuchling | 08 August 2006, 19:00:34 UTC | Bump version number | 08 August 2006, 19:00:34 UTC |
a977130 | Andrew M. Kuchling | 08 August 2006, 19:00:14 UTC | 'Other changes' section now has only one item; move the item elsewhere and remove the section | 08 August 2006, 19:00:14 UTC |
88eb45f | Andrew M. Kuchling | 08 August 2006, 18:56:08 UTC | Move obmalloc item into C API section | 08 August 2006, 18:56:08 UTC |
30c0d1d | Andrew M. Kuchling | 08 August 2006, 18:50:14 UTC | Reword paragraph to clarify | 08 August 2006, 18:50:14 UTC |
dc68ffd | Thomas Heller | 08 August 2006, 17:39:20 UTC | Remove accidently committed, duplicated test. | 08 August 2006, 17:39:20 UTC |
ab1049c | Thomas Heller | 08 August 2006, 17:37:00 UTC | memcmp() can return values other than -1, 0, and +1 but tp_compare must not. | 08 August 2006, 17:37:00 UTC |
b0061c8 | Georg Brandl | 08 August 2006, 11:56:21 UTC | Remove "non-mapping" and "non-sequence" from TypeErrors raised by PyMapping_Size and PySequence_Size. Because len() tries first sequence, then mapping size, it will always raise a "non-mapping object has no len" error which is confusing. | 08 August 2006, 11:56:21 UTC |