Martin v. Löwis [Sat, 15 Apr 2006 12:47:23 +0000 (12:47 +0000)]
Clear dummy and emptyfrozenset, so that we don't have
dangling references in case of a Py_Initialize/Py_Finalize
cycle.
Martin v. Löwis [Sat, 15 Apr 2006 12:46:09 +0000 (12:46 +0000)]
Fix sys.getobjects(0): we get a reference to the
arena's "private" list of objects, so there might
be two references to that list.
Martin v. Löwis [Sat, 15 Apr 2006 12:45:05 +0000 (12:45 +0000)]
Unlink the structseq type from the global list of
objects before initializing it. It might be linked
already if there was a Py_Initialize/Py_Finalize
cycle earlier; not unlinking it would break the global
list.
Martin v. Löwis [Sat, 15 Apr 2006 08:41:11 +0000 (08:41 +0000)]
Patch #
1191700: Adjust column alignment in bdb breakpoint lists.
Backported to 2.4.
Martin v. Löwis [Sat, 15 Apr 2006 08:35:59 +0000 (08:35 +0000)]
Patch #
1191065: Fix preprocessor problems on systems where recvfrom
is a macro.
Martin v. Löwis [Sat, 15 Apr 2006 08:13:05 +0000 (08:13 +0000)]
Patch #
1161914: Add python-config.
Tim Peters [Sat, 15 Apr 2006 03:30:08 +0000 (03:30 +0000)]
frame_clear(): Explain why it's important to make the frame
look dead right at the start. Use Py_CLEAR for four more
frame members.
Tim Peters [Sat, 15 Apr 2006 03:22:46 +0000 (03:22 +0000)]
frame_traverse(): Use the standard Py_VISIT macro.
Py_VISIT: cast the `op` argument to PyObject* when calling
`visit()`. Else the caller has to pay too much attention to
this silly detail (e.g., frame_traverse needs to traverse
`struct _frame *` and `PyCodeObject *` pointers too).
Tim Peters [Sat, 15 Apr 2006 03:15:24 +0000 (03:15 +0000)]
Trimmed trailing whitespace.
Tim Peters [Sat, 15 Apr 2006 02:14:03 +0000 (02:14 +0000)]
There were no comments explaining what Py_CLEAR() did or
why it's important. Now there are ;-)
If someone else hasn't already, I'll add a Py_CLEAR cleanup
task to the TODO Wiki next.
Tim Peters [Sat, 15 Apr 2006 01:48:57 +0000 (01:48 +0000)]
Changed comments to make sense now that the LazyList-based
examples no longer require any explicit closing to avoid
leaking.
That the tee-based examples still do is (I think) still a
mystery. Part of the mystery is that gc.garbage remains
empty: if it were the case that some generator in a trash
cycle said it needed finalization, suppressing collection
of that cycle, that generator _would_ show up in gc.garbage.
So this is acting more like, e.g., some tp_traverse slot
isn't visiting all the pointers it should (in which case
the skipped pointer(s) would act like an external root,
silently suppressing collection of everything reachable
from it(them)).
Phillip J. Eby [Sat, 15 Apr 2006 01:02:17 +0000 (01:02 +0000)]
Fix SF#
1470508: crash in generator cycle finalization. There were two
problems: first, PyGen_NeedsFinalizing() had an off-by-one bug that
prevented it from ever saying a generator didn't need finalizing, and
second, frame objects cleared themselves in a way that caused their
owning generator to think they were still executable, causing a double
deallocation of objects on the value stack if there was still a loop
on the block stack. This revision also removes some unnecessary
close() operations from test_generators that are now appropriately
handled by the cycle collector.
Thomas Wouters [Fri, 14 Apr 2006 21:23:42 +0000 (21:23 +0000)]
Coverity-found bug: datetime_strptime() failed to check for NULL return from
PySequence_GetItem of the time.strptime() result. Not a high probability
bug, but not inconceivable either, considering people can provide their own
'time' module.
Andrew M. Kuchling [Fri, 14 Apr 2006 20:35:17 +0000 (20:35 +0000)]
Add an item; better crediting; fix error in SQL example; minor edits
Andrew M. Kuchling [Fri, 14 Apr 2006 20:32:36 +0000 (20:32 +0000)]
Typo fix
Tim Peters [Fri, 14 Apr 2006 18:34:14 +0000 (18:34 +0000)]
Whitespace normalization.
Walter Dörwald [Fri, 14 Apr 2006 18:25:39 +0000 (18:25 +0000)]
Add a BufferedIncrementalEncoder class that can be used for implementing
an incremental encoder that must retain part of the data between calls
to the encode() method.
Fix the incremental encoder and decoder for the IDNA encoding.
This closes SF patch #
1453235.
Walter Dörwald [Fri, 14 Apr 2006 17:00:36 +0000 (17:00 +0000)]
Make error message less misleading for u"a..b".encode("idna").
Martin v. Löwis [Fri, 14 Apr 2006 15:58:03 +0000 (15:58 +0000)]
Patch #702933: Undocument PyObject_NEW, PyObject_NEW_VAR,
and PyObject_DEL.
Walter Dörwald [Fri, 14 Apr 2006 15:40:54 +0000 (15:40 +0000)]
Fix wrong attribute name.
Walter Dörwald [Fri, 14 Apr 2006 15:22:27 +0000 (15:22 +0000)]
Make raise statements PEP 8 compatible.
Martin v. Löwis [Fri, 14 Apr 2006 15:16:15 +0000 (15:16 +0000)]
Patch #
1045620: Prepend Modules/ before Setup in stdout.
Martin v. Löwis [Fri, 14 Apr 2006 15:07:46 +0000 (15:07 +0000)]
Patch #
1470300: Port _hotshot to QNX4.25 port.
Martin v. Löwis [Fri, 14 Apr 2006 15:02:32 +0000 (15:02 +0000)]
Patch #
1355883: Build Python-ast.c and Python-ast.h
independently. Fixes #
1355883.
Armin Rigo [Fri, 14 Apr 2006 14:58:30 +0000 (14:58 +0000)]
Show case: reference cycles involving only the ob_type field are rather
uncommon but possible. Inspired by SF bug
1469629.
Andrew M. Kuchling [Fri, 14 Apr 2006 14:54:18 +0000 (14:54 +0000)]
Typo fix
Martin v. Löwis [Fri, 14 Apr 2006 14:34:26 +0000 (14:34 +0000)]
Patch #
1324762: Change --with-cxx to --with-cxx-main.
Walter Dörwald [Fri, 14 Apr 2006 14:03:55 +0000 (14:03 +0000)]
Call encode()/decode() with final==True as the last call in the
incremental codec tests.
Andrew M. Kuchling [Fri, 14 Apr 2006 12:42:09 +0000 (12:42 +0000)]
Typo fixes
Andrew M. Kuchling [Fri, 14 Apr 2006 12:41:19 +0000 (12:41 +0000)]
Add more items
Andrew M. Kuchling [Fri, 14 Apr 2006 12:07:41 +0000 (12:07 +0000)]
Typo fix
Andrew M. Kuchling [Fri, 14 Apr 2006 10:29:55 +0000 (10:29 +0000)]
Add an item and a reminder
Martin v. Löwis [Fri, 14 Apr 2006 09:08:42 +0000 (09:08 +0000)]
Make Py_BuildValue, PyObject_CallFunction and
PyObject_CallMethod aware of PY_SSIZE_T_CLEAN.
Neal Norwitz [Fri, 14 Apr 2006 06:35:46 +0000 (06:35 +0000)]
Copy note from leakers README here too. We want to keep all test cases.
Neal Norwitz [Fri, 14 Apr 2006 06:33:24 +0000 (06:33 +0000)]
Restore test tee with some modifications.
The test case came from test_generators, not test_itertools.
Ensure there's no cyclic garbage we are counting.
This is weird because it leaks, then reaches a limit:
python.exe -i test_tee.py
>>> leak()
0
[26633 refs]
>>> leak()
0
[26658 refs]
>>> leak()
0
[26683 refs]
>>> leak()
0
[26708 refs]
>>> leak()
0
[26708 refs]
>>> leak()
0
[26708 refs]
>>> leak()
0
Neal Norwitz [Fri, 14 Apr 2006 06:11:08 +0000 (06:11 +0000)]
Move the old test_generator_cycle.py which leaked but was removed into the test
Neal Norwitz [Fri, 14 Apr 2006 05:35:39 +0000 (05:35 +0000)]
Update notes to address cyclic garbage and what should happen when a test is fixed.
Neal Norwitz [Fri, 14 Apr 2006 05:20:28 +0000 (05:20 +0000)]
SF Bug #
1454485, array.array('u') could crash the interpreter when
passing a string. Martin already fixed the actual crash by ensuring
Py_UNICODE is unsigned. As discussed on python-dev, this fix
removes the possibility of creating a unicode string from a raw buffer.
There is an outstanding question of how to fix the crash in 2.4.
Tim Peters [Fri, 14 Apr 2006 04:54:58 +0000 (04:54 +0000)]
Added George Yoshida.
Neal Norwitz [Fri, 14 Apr 2006 03:53:34 +0000 (03:53 +0000)]
ALIGNMENT_SHIFT is not used
Tim Peters [Thu, 13 Apr 2006 23:12:24 +0000 (23:12 +0000)]
When using -R, lots of "*** DocTestRunner.merge:" nuisance messages
appear. Get rid of them by nuking doctest's default DocTestRunner
instance as part of cleanup(). Also cleanup() before running the
first test repetition (the test was run once before we get into
the -R branch).
Tim Peters [Thu, 13 Apr 2006 22:58:42 +0000 (22:58 +0000)]
Whitespace normalization.
Gregory P. Smith [Thu, 13 Apr 2006 19:19:01 +0000 (19:19 +0000)]
raise the minimum supported BerkeleyDB version to 3.3 and add notes to
news about this and a couple other recent fixes.
Martin v. Löwis [Thu, 13 Apr 2006 19:16:13 +0000 (19:16 +0000)]
Force 8-alignment of memory blocks, as needed on
64-bit machines that require pointers to be aligned (e.g. IA64)
Martin v. Löwis [Thu, 13 Apr 2006 13:08:58 +0000 (13:08 +0000)]
Fix type errors.
Andrew M. Kuchling [Thu, 13 Apr 2006 13:02:42 +0000 (13:02 +0000)]
Typo fix
Andrew M. Kuchling [Thu, 13 Apr 2006 12:49:39 +0000 (12:49 +0000)]
[Bug #
1464571] Mention that generator's .gi_frame can now be None
Andrew M. Kuchling [Thu, 13 Apr 2006 12:37:21 +0000 (12:37 +0000)]
Add some items
Martin v. Löwis [Thu, 13 Apr 2006 12:29:43 +0000 (12:29 +0000)]
Introduce asdl_int_seq, to hold cmpop_ty.
Andrew M. Kuchling [Thu, 13 Apr 2006 12:09:08 +0000 (12:09 +0000)]
Include more detail on Coverity results and add a link; minor edits
Andrew M. Kuchling [Thu, 13 Apr 2006 11:51:07 +0000 (11:51 +0000)]
Describe sys.subversion, Py_GetBuildInfo()
Add metadata example
Andrew M. Kuchling [Thu, 13 Apr 2006 11:40:29 +0000 (11:40 +0000)]
Add missing word
Skip Montanaro [Thu, 13 Apr 2006 09:48:28 +0000 (09:48 +0000)]
revert - breaks build of Python/ast.c w/ gcc
Skip Montanaro [Thu, 13 Apr 2006 09:37:01 +0000 (09:37 +0000)]
Use union to discriminate pointer types from enum/int types.
Martin v. Löwis [Thu, 13 Apr 2006 08:52:56 +0000 (08:52 +0000)]
Change more occurrences of maxsplit to Py_ssize_t.
Martin v. Löwis [Thu, 13 Apr 2006 08:37:17 +0000 (08:37 +0000)]
Change maxsplit types to Py_ssize_t.
Thomas Heller [Thu, 13 Apr 2006 08:33:58 +0000 (08:33 +0000)]
Allocate the 0x1D1A0000 base adress for the _ctypes extension module.
Export the COM entry point functions.
Note that there are several conflicting base addresses defined for
other extensions, also not all are listed in dllbase_nt.txt.
Georg Brandl [Thu, 13 Apr 2006 08:04:56 +0000 (08:04 +0000)]
Add two entries about how to actually clear a list.
Georg Brandl [Thu, 13 Apr 2006 07:59:30 +0000 (07:59 +0000)]
Add a test for Py_ssize_t. Correct typo in getargs.c.
Martin v. Löwis [Thu, 13 Apr 2006 07:52:27 +0000 (07:52 +0000)]
Replace INT_MAX with PY_SSIZE_T_MAX.
Martin v. Löwis [Thu, 13 Apr 2006 07:37:25 +0000 (07:37 +0000)]
Replace INT_MAX with PY_SSIZE_T_MAX where string length
are concerned.
Martin v. Löwis [Thu, 13 Apr 2006 07:34:09 +0000 (07:34 +0000)]
Replace INT_MAX with PY_SSIZE_T_MAX.
Georg Brandl [Thu, 13 Apr 2006 07:29:18 +0000 (07:29 +0000)]
Add PY_SSIZE_T_MIN/MAX to _testcapi.
Martin v. Löwis [Thu, 13 Apr 2006 07:28:29 +0000 (07:28 +0000)]
Stop claiming that Py_Finalize releases all memory.
Fixes part of #
1445210.
Martin v. Löwis [Thu, 13 Apr 2006 07:24:50 +0000 (07:24 +0000)]
Remove another INT_MAX limitation
Martin v. Löwis [Thu, 13 Apr 2006 07:22:51 +0000 (07:22 +0000)]
Replace most INT_MAX with PY_SSIZE_T_MAX.
Anthony Baxter [Thu, 13 Apr 2006 07:19:01 +0000 (07:19 +0000)]
C++ compiler changes. casts, rename variables with reserved names.
Martin v. Löwis [Thu, 13 Apr 2006 06:36:31 +0000 (06:36 +0000)]
Support NFD of very long strings.
Neal Norwitz [Thu, 13 Apr 2006 06:34:59 +0000 (06:34 +0000)]
test_compile can be really long if we are using -u compiler.
This may be causing the debian sparc buildbot to fail.
Print a little message to let the user ^w buildbot know it's still thinking.
We may want to adjust the time period which is currently 5 minutes.
Will backport.
Martin v. Löwis [Thu, 13 Apr 2006 06:34:32 +0000 (06:34 +0000)]
Change more ints to Py_ssize_t.
Martin v. Löwis [Thu, 13 Apr 2006 06:06:08 +0000 (06:06 +0000)]
Revert 34153: Py_UNICODE should not be signed.
Anthony Baxter [Thu, 13 Apr 2006 04:49:25 +0000 (04:49 +0000)]
whoops. missed one in an auto-generated file. another extern "C" {} for C++ compiler compatibility
Neal Norwitz [Thu, 13 Apr 2006 04:35:36 +0000 (04:35 +0000)]
Remove tests that no longer leak. There is still one leaking generator test
Neal Norwitz [Thu, 13 Apr 2006 03:41:04 +0000 (03:41 +0000)]
Fix {} mismatch spotted by George Yoshida.
Tim Peters [Thu, 13 Apr 2006 03:09:40 +0000 (03:09 +0000)]
tty isn't supported on all boxes.
Andrew M. Kuchling [Thu, 13 Apr 2006 02:10:16 +0000 (02:10 +0000)]
Fix typography of Martin's name
Anthony Baxter [Thu, 13 Apr 2006 02:06:09 +0000 (02:06 +0000)]
spread the extern "C" { } magic pixie dust around. Python itself builds now
using a C++ compiler. Still lots and lots of errors in the modules built by
setup.py, and a bunch of warnings from g++ in the core.
Andrew M. Kuchling [Thu, 13 Apr 2006 02:04:42 +0000 (02:04 +0000)]
Write some ctypes examples
Skip Montanaro [Thu, 13 Apr 2006 02:00:56 +0000 (02:00 +0000)]
If compiling with g++ don't use -Wstrict-prototpes.
Anthony Baxter [Thu, 13 Apr 2006 01:34:33 +0000 (01:34 +0000)]
reverting r45321: Patch #860326: traceback.format_exception_only() now
prepends the exception's module name to non-builtin exceptions, like
the interpreter itself does.
broke a number of doctests. should be discussed before checking in (see
discussion on python-dev).
Anthony Baxter [Thu, 13 Apr 2006 01:23:28 +0000 (01:23 +0000)]
casting nastiness to make C++ compiler happy
Anthony Baxter [Thu, 13 Apr 2006 01:07:27 +0000 (01:07 +0000)]
Add a cast to make code compile with a C++ compiler.
Georg Brandl [Wed, 12 Apr 2006 21:14:09 +0000 (21:14 +0000)]
Patch #860326: traceback.format_exception_only() now prepends the
exception's module name to non-builtin exceptions, like the interpreter
itself does.
Gregory P. Smith [Wed, 12 Apr 2006 20:35:02 +0000 (20:35 +0000)]
Fixes bug #
1117761
bsddb.*open() methods cachesize parameter wouldn't work (raised an
internal bsddb.db exception when it was given). The set_cachesize
call needed to be moved from the DB object to the DBEnv since the env
was introduced to allow for threading.
(will backport to 2.4)
Gregory P. Smith [Wed, 12 Apr 2006 20:16:56 +0000 (20:16 +0000)]
Closes bug #
1149413
Using None for a filename with the 'n' flag when calling bsddb.btopen
would cause an error while checking if the file None existed. error
not likely to be seen as anyone using None for a filename would likely
use the 'c' flag in the first place.
Thomas Heller [Wed, 12 Apr 2006 19:07:36 +0000 (19:07 +0000)]
Fix for a bug found by Armin Rigo, plus test.
https://sourceforge.net/tracker/?func=detail&atid=532154&aid=
1467852&group_id=71702
Phillip J. Eby [Wed, 12 Apr 2006 19:07:15 +0000 (19:07 +0000)]
Don't set gi_frame to Py_None, use NULL instead, eliminating some insane
pointer dereferences.
Andrew M. Kuchling [Wed, 12 Apr 2006 18:54:00 +0000 (18:54 +0000)]
Mention ASCII as default encoding; update TODO list; use PyCF_ONLY_AST by MvL's suggestion; typographical tidying of MvL's name
Andrew M. Kuchling [Wed, 12 Apr 2006 18:52:09 +0000 (18:52 +0000)]
Bump version number; rearrange introduction a bit
Armin Rigo [Wed, 12 Apr 2006 17:06:05 +0000 (17:06 +0000)]
Ignore the references to the dummy objects used as deleted keys
in dicts and sets when computing the total number of references.
Georg Brandl [Wed, 12 Apr 2006 15:28:49 +0000 (15:28 +0000)]
Patch #
1468808: don't complain if Tkinter is already deleted at the time Font.__del__ is run.
Andrew M. Kuchling [Wed, 12 Apr 2006 13:03:35 +0000 (13:03 +0000)]
Add PEP 243 section
Georg Brandl [Wed, 12 Apr 2006 12:44:36 +0000 (12:44 +0000)]
Update test_sundry. Many modules have now tests, but
e.g. SimpleXMLRPCServer wasn't in here yet.
Andrew M. Kuchling [Wed, 12 Apr 2006 12:27:50 +0000 (12:27 +0000)]
Note C API incompatibilities
Andrew M. Kuchling [Wed, 12 Apr 2006 12:16:31 +0000 (12:16 +0000)]
Mention access to ASTs
Anthony Baxter [Wed, 12 Apr 2006 12:07:31 +0000 (12:07 +0000)]
Bug #
1469163: SimpleXMLRPCServer unconditionally attempted to import fcntl.
Wrapped in a try/except.
Armin Rigo [Wed, 12 Apr 2006 11:59:26 +0000 (11:59 +0000)]
Off-by-one buffer overflow error.
Walter Dörwald [Wed, 12 Apr 2006 10:09:16 +0000 (10:09 +0000)]
Patch #
1463288: use a context manager to temporarily switch locales.
Add tests for the output of the TextCalendar and HTMLCalendar classes.
Neal Norwitz [Wed, 12 Apr 2006 06:56:56 +0000 (06:56 +0000)]
wrap docstrings so they are less than 80 columns. add spaces after commas.
Tim Peters [Wed, 12 Apr 2006 06:44:36 +0000 (06:44 +0000)]
gen_throw(): The caller doesn't own PyArg_ParseTuple()
"O" arguments, so must not decref them. This accounts
for why running test_contextlib.test_main() in a loop
eventually tried to deallocate Py_None.