Some unicode fixes for util.html:  `Markup.escape`:: make the unicode conversion done by Markup on its content more robust (i.e. use `to_unicode`).     This will in particular help for old plugins that wrap UTF-8 strings in Element or Markup objects (or simply `escape` them). Fixes #3543.  `Fragment.__str__`:: the conversion to a string of a Fragment `f` now returns either a plain `unicode` object (for `unicode(f)`) or a `str` object (for `str(f)`), instead of a Markup object in both cases. This avoids problem of double protection against HTML escaping, as seen in #2580.     That is, when doing `req.hdf[data] = unicode(x)`, we should always be able to assume that this hdf 'data' will be properly HTML escaped.    In addition, this is consistent with what's done in [markup:source:/trunk/markup/builder.py@181#L40 Markup].
Some unicode fixes for util.html:
 `Markup.escape`:: make the unicode conversion done by Markup on its content more robust (i.e. use `to_unicode`). 
   This will in particular help for old plugins that wrap UTF-8 strings in Element or Markup objects (or simply `escape` them). Fixes #3543.
 `Fragment.__str__`:: the conversion to a string of a Fragment `f` now returns either a plain `unicode` object (for `unicode(f)`) or a `str` object (for `str(f)`), instead of a Markup object in both cases. This avoids problem of double protection against HTML escaping, as seen in #2580. 
   That is, when doing `req.hdf[data] = unicode(x)`, we should always be able to assume that this hdf 'data' will be properly HTML escaped.
   In addition, this is consistent with what's done in [markup:source:/trunk/markup/builder.py@181#L40 Markup].

pkdevbox/trac,pkdevbox/trac,pkdevbox/trac,pkdevbox/trac