[sane-devel] permission request

Johannes Meixner jsmeix at suse.de
Wed Jan 9 09:03:06 UTC 2008


Hello,

On Dec 19 11:52 m. allan noah wrote (shortened):
> On Dec 19, 2007 9:41 AM, Colin Hogben <sane at pythontech.co.uk> wrote:
> ...
> > Another important point to allow smooth migration: we must not change
> > existing interfaces (i.e. ABI) but we may augment them.  E.g. do not
> > change the definition of SANE_Device (and therefore sane_get_devices()).
> > instead, define SANE_Device2 structure with the new fields, and a new
> > method sane_get_devices2() which returns them.
> 
> i think the idea is nice in principal, though the specifics of using
> the obfuscated version number are not that pleasant.

Only for your information:

A successful example where they did it this way is CUPS,
see their API documentation e.g. at
http://www.cups.org/documentation.php/api-cups.html

When possible only the newest function (e.g. cupsGetPPD2)
is really implemented and the old one (e.g. cupsGetPPD)
has become only a wrapper for the new one.

Personally I like function names with version numbers.
I don't think they are "obfuscated".
In contrast I think they make the issue clear.


Note that the LSB people think about to establish SANE1
as LSB conformant scanner interface (e.g. for LSB 3.2)
so that any new API/ABI which is not backward compatible
will not be LSB conformant.
Remember the mail thread with subject
"LSB DDK: Support for scanner drivers/SANE into LSB 3.2?"
http://lists.alioth.debian.org/pipermail/sane-devel/2007-June/019448.html

If SANE1 became a LSB standard and if there was an incompatible
new API/ABI, at least we (i.e. Novell/Suse) would have the problem
that on the one hand our distribution must be LSB conformant
(which means we must provide SANE1 for a longer time)
but on the other hand we like to provide up-to-date packages.
Of course we could simply provide two packages "sane-backends"
and "sane2-backends" but then there might be confusion when
some users run a LSB conformant system while others run an
up-to-date system.


By the way:
Physicists still inversigate what the "big bang" really was
so that it is questionable how to do another "big bang" ;-)


Kind Regards
Johannes Meixner
-- 
SUSE LINUX Products GmbH, Maxfeldstrasse 5, 90409 Nuernberg, Germany
AG Nuernberg, HRB 16746, GF: Markus Rex



More information about the sane-devel mailing list