[Python-checkins] python/dist/src/Misc NEWS,1.895,1.896
tim_one at users.sourceforge.net
tim_one at users.sourceforge.net
Thu Nov 20 16:21:48 EST 2003
Update of /cvsroot/python/python/dist/src/Misc
In directory sc8-pr-cvs1:/tmp/cvs-serv30573/Misc
Modified Files:
NEWS
Log Message:
SF bug 839548: Bug in type's GC handling causes segfaults.
Also SF patch 843455.
This is a critical bugfix.
I'll backport to 2.3 maint, but not beyond that. The bugs this fixes
have been there since weakrefs were introduced.
Index: NEWS
===================================================================
RCS file: /cvsroot/python/python/dist/src/Misc/NEWS,v
retrieving revision 1.895
retrieving revision 1.896
diff -C2 -d -r1.895 -r1.896
*** NEWS 19 Nov 2003 19:51:55 -0000 1.895
--- NEWS 20 Nov 2003 21:21:46 -0000 1.896
***************
*** 13,19 ****
-----------------
! - Compiler flags set in PYTHONSTARTUP are now active in __main__.
!
! - Added two builtin types, set() and frozenset().
- Critical bugfix, for SF bug 840829: if cyclic garbage collection
--- 13,30 ----
-----------------
! - Critical bugfix, for SF bug 839548: if a weakref with a callback,
! its callback, and its weakly referenced object, all became part of
! cyclic garbage during a single run of garbage collection, the order
! in which they were torn down was unpredictable. It was possible for
! the callback to see partially-torn-down objects, leading to immediate
! segfaults, or, if the callback resurrected garbage objects, to
! resurrect insane objects that caused segfaults (or other surprises)
! later. In one sense this wasn't surprising, because Python's cyclic gc
! had no knowledge of Python's weakref objects. It does now. When
! weakrefs with callbacks become part of cyclic garbage now, those
! weakrefs are cleared first. The callbacks don't trigger then,
! preventing the problems. If you need callbacks to trigger, then just
! as when cyclic gc is not involved, you need to write your code so
! that weakref objects outlive the objects they weakly reference.
- Critical bugfix, for SF bug 840829: if cyclic garbage collection
***************
*** 22,25 ****
--- 33,40 ----
in a debug build, a segfault occurred reliably very soon after).
This has been repaired.
+
+ - Compiler flags set in PYTHONSTARTUP are now active in __main__.
+
+ - Added two builtin types, set() and frozenset().
- Added a reversed() builtin function that returns a reverse iterator
More information about the Python-checkins
mailing list