[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

AltStyle によって変換されたページ (->オリジナル) /