[sane-devel] Sane Release 1.1.0 ?

m. allan noah kitno455 at gmail.com
Tue Nov 4 21:32:21 UTC 2008


On Tue, Nov 4, 2008 at 4:04 PM, Julien BLACHE <jb at jblache.org> wrote:
> 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.
>

damnit julien- it is called sane_status!, you dont get to declare that
'its not really a status, so lets not put statuses in it' it is just
like SANE_STATUS_BUSY, where a backend might very well choose to retry
after a few seconds.

allan


-- 
"The truth is an offense, but not a sin"



More information about the sane-devel mailing list