What is the current state of LIOS?

Linux for blind general discussion blinux-list at redhat.com
Thu Jul 28 19:53:50 UTC 2022


Hello list,

today, I finally decided to get my scanner working, and thus, try out
LIOS as well.


Unfortunately, this turned out to be a little more troublesome one would
expect.


First of all, LIOS was unable to parse the information of my network
scanner, there already seems to be an issue about this on the project's
GitHub, if the causes are identical.


This didn't really surprise me, there are many scanners and I'm not sure
how precisely are they following the standards, so okay, I dived into
the code and fixed dthe parsing on the place where it broke.


But the other issues I found were far more stunning.


First of all, the update scanners list function doesn't have scoped
try/except blocks, but rather one big, that basically covers all the
function's code.


What this means in practice is, that if LIOS fails to open a scanner
(like it did with mine), instead of proceeding to others, the function
simply aborts and that's that.


My scanner is represented by approx. 3 or 4 devices, I get one in the
list, since the opening of the second-one crashes and the others are
thus not loaded.


I'm not sure whether there is any difference between them in this
particular scenario, but if their order was either different or I had
multiple connected scanners, the devices evaluated after the
problematic-one would be simply unreachable.


And there is another issue, that's totally cryptic to me.


When I choose to scan an image with the scanners already loaded, instead
of simply using the selected-one, LIOS updates the list first (what
takes quite a some time), and just afterwards makes the scan.


That's just obviously wrong, so I checked the code again, and this is
what I found in the scan methods:


         if(not self.is_updating_scanner_list or
len(self.scanner_objects) == 0):
             self.update_scanner_list();

Translated to english, this says: if the scanner list is not being
updated or there are no scanners, update the list.


This kind of shocked me. You don't even need to be a programmer to know
it's wrong, the correct formulation would be: if the list of scanners is
not being updated and there are no scanners, update the list.


i.e. you need to change one word. A trivial, elementar mistake.

I'm not sure who did it, I kind of can't believe someone who coded a
program of this complexity would, perhaps it came with a PR.


What bothers me more is why didn't it get fixed, it's not something
you're going to overlook as scanning is the main function of the
program, and dsince it's so easy to fix, I would expect it to be already
repaired.


So, the question is, does anyone have any information on what's the
current status of the development?


Is it still active, are PRs accepted or, didd anyone create a fork if not?


Thanks!


Best regards


Rastislav





More information about the Blinux-list mailing list