Monday, May 8, 2017¶
I had an interesting article in my inbox and though that I would quickly note this in my internal blog in Lino Amici. Basically it worked, but it caused a little chain reaction.
I opened #1819 (Handling blog entries copied from Internet) and worked on it. Blog entries are now bleached. And then how to display them in the dashboard.
I boldy changed the behaviour of
lino.utils.soup.truncate_comment(): truncate_comment now never returns more than one paragraph. I am not sure whether this is what we really want, but let’s observe it.
I checked in my work though some tests are still failing.
#1825 was a subtle one. In order to understand it, I had to
/usr/lib/python2.7/StringIO.py. I replaced:
if self.buflist: self.buf += ''.join(self.buflist)
if self.buflist: try: self.buf += ''.join(self.buflist) except UnicodeError: raise Exception("LS 20170508 Failed to join %r" % self.buflist)
It was happening in Lino Care, a network of people who care. There was this code:
>>> def show_votes(pk): ... obj = tickets.Ticket.objects.get(pk=pk) ... print(obj)
The problem disappeared when I raplaced the third line by:
But why? No good explanation so far. I guess that it has to do with the python_2_unicode_compatible hack.
NB while exploring this, I replaced several instances of “from builtins import str” to “import six ; str = six.text_type”. I believe that this is better because certain third-party libraries don’t know about the newstr class (#1751).
Optimizations in Amici¶
memo commands “household” and “company”.