The gramplet I’m currently working on goes through a lot of people, some multiple times. So to improve performance, I’m thinking of adding a cache for the people processed by the gramplet. Just wondering if get_person_from_handle() already caches results.
You would need to use the cache proxy module gen/proxy/cache.py to get a cache of your data. As with all caches it works great if access are closely spaced in time/number of accesses; but if you process all people serially, then process them again, it probably won’t help. at least for large dbs. See plugins/textreport/indivcomplete.py line 137 for an example of usage.