# HG changeset patch # User cmlenz # Date 1212659393 0 # Node ID 7e428b22dbaae902955467fd82f0ee47597edcda # Parent ea2566b2f226fdf0c0844a0bc28fa283c2e42582 Tweak to [854] to not change the ordering of attributes compared to how they were previously ordered, to avoid breaking any tests that rely on the order. See #216. diff --git a/genshi/builder.py b/genshi/builder.py --- a/genshi/builder.py +++ b/genshi/builder.py @@ -152,12 +152,14 @@ def _kwargs_to_attrs(kwargs): - retval = {} + attrs = [] + names = set() for name, value in kwargs.items(): name = name.rstrip('_').replace('_', '-') - if value is not None and name not in retval: - retval[QName(name)] = unicode(value) - return Attrs(retval.items()) + if value is not None and name not in names: + attrs.append((QName(name), unicode(value))) + names.add(name) + return Attrs(attrs) class Element(Fragment):