[Python-checkins] python/dist/src/Misc NEWS,1.337.2.4.2.84,1.337.2.4.2.85

tim_one@users.sourceforge.net tim_one@users.sourceforge.net
Thu, 29 May 2003 12:26:09 -0700


Update of /cvsroot/python/python/dist/src/Misc
In directory sc8-pr-cvs1:/tmp/cvs-serv14517/Misc

Modified Files:
      Tag: release22-maint
	NEWS 
Log Message:
Fleshed out the WeakKeyDictionary.__delitem__ news, since this can change
visible behavior.


Index: NEWS
===================================================================
RCS file: /cvsroot/python/python/dist/src/Misc/NEWS,v
retrieving revision 1.337.2.4.2.84
retrieving revision 1.337.2.4.2.85
diff -C2 -d -r1.337.2.4.2.84 -r1.337.2.4.2.85
*** NEWS	29 May 2003 19:21:38 -0000	1.337.2.4.2.84
--- NEWS	29 May 2003 19:26:06 -0000	1.337.2.4.2.85
***************
*** 15,18 ****
--- 15,30 ----
  
  - Backport SF 742860: new, improved __delitem__ for WeakKeyDictionary.
+   This old __delitem__ wasn't threadsafe, was very inefficient (expected
+   time O(len(dict)) instead of O(1)), and could raise a spurious
+   RuntimeError if another thread mutated the dict during __delitem__, or if
+   a comparison function mutated it.  It also neglected to raise KeyError
+   when the key wasn't present; didn't raise TypeError when the key wasn't
+   of a weakly referencable type; and broke various more-or-less obscure
+   dict invariants by using a sequence of equality comparisons over the
+   whole set of dict keys instead of computing the key's hash code to
+   narrow the search to those keys with the same hash code.  All of these
+   are considered to be bugs.  A new implementation of __delitem__ repairs
+   all  that, but note that fixing these bugs may change visible behavior
+   in code relying (whether intentionally or accidentally) on old behavior.
  
  - RPM spec file update from Sean Reifschneider.
***************
*** 201,207 ****
  - Distutils: Translate spaces in the machine name to underscores
    (Power Macintosh -> Power_Macintosh)
!   
  - Distutils: on Mac OS X don't use -R for runtime_library_dirs, use
!   -L in stead (#723495). 
  
  - Backported SF #658233, continuation lines in .mo file metadata
--- 213,219 ----
  - Distutils: Translate spaces in the machine name to underscores
    (Power Macintosh -> Power_Macintosh)
! 
  - Distutils: on Mac OS X don't use -R for runtime_library_dirs, use
!   -L in stead (#723495).
  
  - Backported SF #658233, continuation lines in .mo file metadata