Skip to content

dirdiff.fast_insert - make append faster avoiding use of set_value

Hugo Sena Ribeiro requested to merge hugosenari/meld:dirdiff.fast_insert into master

As I said before, one of most effective ways to improve dirdiff speed is avoid casting of PyObject into GObjects.

Without casting, _update_item_state that was taking 88s to show 52k files, now takes only 23s.

But this comes with a drawback, casting works like speed bump, this is the reason I named the new function unsafe_set_value to warn that wrong value may warn user or in worst case crash app.

master cProfile

Master

this branch cProfile

Master

UPDATE: as suggested by @kaiw now using set (11sec/52k files) instead of set_value (22sec/52k files)

Edited by Hugo Sena Ribeiro

Merge request reports