On 28-04-2020 16:52, mark wrote:

On Tue, 28 Apr 2020 14:02:30 GMT, Russel Winder wrote:

I suspect something weird, I have had the application running for many minutes and still no change, it still seems to be "Reading package files…".

On my Ubuntu 18.04 LTS 64-bit it takes 1.5sec to read the Packages files and a further 4.1sec to index them (and create a ~20MB cache in /tmp).

The packages are read from /var/lib/apt/lists/Packages (the dir and glob are in model.d). That dir has ~300MB of Packages files on my machine. Maybe you have a lot more?

If you try deleting /tmp/debfind-2020-04-28.cache and then run 'dub test' you should just see the cache being recreated and the CLI tests running. Then if that works and you try running 'dub' it should run the DebFind GUI which should detect the cache and be ready straight away.

I can't help thinking that I'd have been better off writing this in wxPython...
I really like D, but don't like Gtk at all.

I can reproduce the error, for me it finds ~60k packages and on first
try it will show ~35k of packages in the listview. If i then search for
something and than clear the search i get the error when it's rebuilding
the list of ~35k packages.

I am not sure whats causing the error, a google search would suggest
some issues with available graphics memory. The error message may be
correct and you are really running out of resources, AFAIK every
GtkWidget has an X11 window associated with it, with to columns every
row has 2 label widgets and the list of ~35k rows holds handles on ~70k
X11 windows and maybe more depending on how the rows are implemented in gtk.

Altough gtk doesn't document what the limit is for a liststore, you may
need to implement a custom tree/list model to display your data.