[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