:date: 2018-09-26 ============================= Wednesday, September 26, 2018 ============================= I got feedback for the 4 tickets of last Friday. I first had a look into :ticket:`2549` which looked most dangerous. Actually it was harmless: just a permission problem. Social workers werde not able to see ISIP contracts. This unwanted change was probably caused by a redesign in the the welfare user roles hierarchy which was still obsolete: it had too many levels. Welfare started in the beginning of Lino where the permission system was still quite young. Meanwhile I learned that user roles should be atomic, and their grouping should be done in the user_types module. I had started to convert to the flat hierarchy when chatelet asked things but I didn't do a full review because it is so complex and so "dangerous": end-users tend to get angry when you remove permissions that had been granted earlier. Now I did a full review and removed all intermediate user roles from Lino Welfare. I restructured the docs (:ref:`welfare.usertypes`) before asking the users to test again. At some point I had a TypeError :message:`Cannot create a consistent method resolution order (MRO)` and was stuck. I had to write a new utility function `lino.core.proles.checkmro` to find the duplicate parent. The test suite is still failing with at least one case where I don't yet understand why it now fails. Nevertheless I will push my changes because we want to test using eidreader from behind a proxy. There are chances that this restructuration introduced new regressions of type "I had this permission before" or the opposite "I can see this now though I shouldn't have permission". Using eidreader from behind a proxy =================================== I changed the configuration for :mod:`lino_xl.lib.beid`: instead of setting :Attr:`lino.core.site.Site.beid_protocol` to ``'beid'`` you now set :attr:`lino_xl.lib.beid.Plugin.urlhandler_prefix` http://docs.python-requests.org/en/master/user/advanced/#proxies