[sane-devel] SANE2 standard revisited

Matto Marjanovic maddog@mir.com
Mon, 9 Dec 2002 12:21:56 -0500


 >From: Henning Meier-Geinitz <henning@meier-geinitz.de>
 >Date: Thu, 5 Dec 2002 22:34:09 +0100
 ...
 >On Thu, Dec 05, 2002 at 06:09:57PM +0100, Henning Meier-Geinitz wrote:
 >> http://www.meier-geinitz.de/sane/sane2/
 >
 >Now versioning and naming. Not all of this is strictly SANE standard
 >stuff, but let's start with it:
 >
 >| Chapter 4: The SANE Application Programmer Interface (API)
 >http://www.meier-geinitz.de/sane/sane2/0.07/doc009.html#s4
 >
 ...
 >Ok speaking of libraries: The names will be libsane2.so,
 >libsane2-dll.so, libsane2-mustek.so and so on, I guess? We should keep
 >in mind that we don't misuse libool's version info again.
 >
 >The libraries go to .../lib/sane/ again (as with sane/sane2.h)?
 >
 >What about the config files: /etc/sane2.d/dll.conf or,
 >/etc/sane.d/dll2.conf?

There is already a "microtek2.conf", because there are microtek and microtek2
 backends.

Could there be conflicts between old/new files in .../include/sane, too ?

If the directories were renamed to "sane2" for SANEv2, then one could have
 coexisting SANEv1 and SANEv2 installations, which might be a good thing.
 Or not.  (If so, frontends/metabackends/etc could look in the SANEv1
 directory for old backends...)

 >Now versions:
 >| 4.1 Version Control
 >http://www.meier-geinitz.de/sane/sane2/0.07/doc010.html
 >
 >| SANE version control also includes a minor version number and a build
 >| revision. While control of these numbers remains with the implementor
 >| of a backend, the recommended use is as follows. The minor version is
 >| incremented with each official release of a backend. The build
 >| revision is increased with each build of a backend. 
 >
 >Currently we have lot's of different version numbers. SANE standard,
 >sane-distribution, and backends. I hope we can merge the last two.
 >
 >So why don't we use only two numbers for SANE releases like 2.0, 2.1,
 >2.23? We haven't needed the second number until now and I see no
 >reason for it. So the distribution would use e.g. 2.4 and a backend
 >that is included would use 2.4.something with something is the backend
 >build or version number. So you immediately know which SANE version
 >was used.

Fine with me:  (STANDARDS-VERSION).(RELEASE-NUMBER)
If the standard itself had a minor number (used for incremental, backwards-
 -compatible changes/improvements/clarifications), then I would say that
 should end up in there.  But it doesn't.  (Right?)

(I never quite understood the version number thing --- microtek.c always
 just tracked the SANE release (using V_MAJOR/V_MINOR), and had its own
 internal version code for debugging purposes.)

-matt m.