[sane-devel] Sane Release 1.1.0 ?

Julien BLACHE jb at jblache.org
Tue Nov 4 21:04:33 UTC 2008


stef <stef.dev at free.fr> wrote:

Hi,

> 	I agree with the design you are explaining. But the trouble with such 
> approach is that adding new function to the API  had been rejected so that 
> many unmaintained (or untestable due to lack of hardware) backends can be 

That's actually not an issue. We can add a stub in those backends, and
we can put logic in the dll backend to use a stub if the backend being
loaded doesn't have sane_status() (think binary-only backends).

That stub would just tell "not supported" and we're done with it.

As I said, if we make sane_status() optional and retain the current
behaviour for sane_start() for all backends (aka just sit there until
the scanner is done warming up), we're in the clear.

> left untouched. Also there haven't been a new SANE standards for years (SANE 
> 2 last draft will be 6 years old in December) , and presumably, there will be 

Yes. We have a problem here, as in we haven't found a way to go
forward yet with evolutions to the standard. It's a big problem.

> never. Adding one more status is then the only way to provide user a feeback 
> when the scanner is doing nothing (from user's point of view) during 30s. 

The problem is that SANE_Status is not a *status*, it's actually an
*error code* and you're abusing it with the "warming up" thing. From
there on, everything breaks.

It is not the proper interface.

> 	For me this 'warming thing' isn't a pet feature, it is a clear sign of the 
> importance we give to the people using our backends. 

I never said it is a pet feature. As the owner and user of a pair of
Epson scanners that can sit there for 30+ seconds during warm up, I'd
very much like to see this implemented, but PLEASE let's do it
properly.

Breaking interfaces and bending the standard to make things fit is not
going to help going forward.

JB.

-- 
Julien BLACHE                                   <http://www.jblache.org> 
<jb at jblache.org>                                  GPG KeyID 0xF5D65169



More information about the sane-devel mailing list