← Back to team overview

gtg-contributors team mailing list archive

Liblarch_rebased reverted

 

Hello JML and Luca,

Following your advices, I reverted liblarch_reverted to the best state so
far.

Only one test is failing so far (it's a new "torture" test). 

The current state is that filteredtree.py is in fact a double-linked tree
reprensented in self.cache_nodes. For each node, we keep the 'parents', the
'children', and the 'paths'.

When a path is changed, the node is not modified : it is removed from the
old path the added to the new path. I think that's why we had so many
crashes before with GTK.Treeview. Gtk.Treeview doesn't support modifying
the path of a node : it should be deleted then re-added. (if this is proven
true, it would mean that gtk.Treeview is even worst than what I thought, to
the point of being useless)

The good :
+ For small datasets, it should works fine.
+ There's no crashes in GTK.treeview. All crashes are confined into
liblarch/filteredtree.py (because it does a lot of sanity check)

The bad:
- still too many crashes for large dataset
- performances are bad but I guess that we don't mind at this stage