﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
4546	utils.datastructures.SortDict don't work after pop or popitem method called	glin@…	nobody	"utils.datastructures.!SortDict don't work after pop or popitem method called, here is example:
{{{
In [1]: from django.utils.datastructures import SortedDict

In [2]: s=SortedDict({1:2,3:4,2:3})

In [3]: s.popitem()
Out[3]: (1, 2)

In [4]: s.items()
---------------------------------------------------------------------------
exceptions.KeyError                                  Traceback (most recent call last)

/home/glin/programming/workspace/nicms/<ipython console>

/usr/lib/python2.4/site-packages/django/utils/datastructures.py in items(self)
     72
     73     def items(self):
---> 74         return zip(self.keyOrder, self.values())
     75
     76     def keys(self):

/usr/lib/python2.4/site-packages/django/utils/datastructures.py in values(self)
     78
     79     def values(self):
---> 80         return [dict.__getitem__(self, k) for k in self.keyOrder]
     81
     82     def update(self, dict):

KeyError: 1
}}}

It is because pop and popitem methods are not overriden, so items in keyOrder attribute are not deleted.
"		closed	Core (Other)			fixed			Accepted	1	0	0	0	0	0
