[dev] Current TODO list

From: Henning Meier-Geinitz (henning@meier-geinitz.de)
Date: Sat May 26 2001 - 06:34:29 PDT

  • Next message: EdHamrick@aol.com: "Re: Problem with Microtek 35t slide/negative scanner"

    Hi,

    This is the TODO list from CVS. I consider at least the
    config_line[len -1] and the exported symbol issues as
    release-critical, that means, they must be fixed before release.

    If the maintainers won't fix the config_line thing, I will do it
    sometime during the next week.

    Bye,
      Henning
      
    TODO (2001-05-26)

    ******** todo ********

    backends
    --------
      * Configuration problems:
        - add options "--exec-prefix=...." and "--prefix=..." compareable
          to gtk-config

        - add warning when prefix dir is not listed in /etc/ld.so.conf on
          linux systems may be there is a general way to test this if the
          destination library directory is in the search path of the
          linker. [The correct fix is to use -R (on Solaris) and -rpath
          (on the rest?) to include the dynamic link path in the binaries
          / libraries. pere 2001-02-09]

      * Add new backends (?)
        - primax http://primax.sourceforge.net/
        - hp4200 http://hp4200-backend.sourceforge.net/
        - v4l2 http://video.inodes.org/sane-v4l2/
        - Relisys Scorpio Super 3 SCSI II
          Mark Plowman <mplowman@wxs.nl>
        - Linux Handscanner Ioctl Interface scanner by Harald
          Bauer <bauer-h@web.de>
        - viceo (Visioneer OneTouch 8600)
          http://www.abaforum.es/martim/bird/otlinux.htm
        - Mustek 1200 UB backend
          ftp://ftp.mustek.com.tw/pub/driver/1200UB/Linux/
        - bearpaw (Mustek BearPaw 1200 + maybe 2400)
          Henning Meier-Geinitz <hmg@gmx.de>
        - Genius Vivid Pro USB, Colorado USB 19200, Visioneer OneTouch 7600
          IBM IdeaScan 2000 USB
          http://homepages.paradise.net.nz/stevenel/scanner/
        - Fujitsu M3091DCd support
          Frederik Ramm <frederik@remote.org>
          http://www.remote.org/frederik/projects/software/sane/
        - Canon FB620S flatbed scanner and FS2710 film scanner
          ftp://stthd0.pc.uni-koeln.de/pub/canon-1.08.tar.gz
          Ulrich Deiters <ukd@xenon.pc.Uni-Koeln.DE>

      * Update backends
        - Combine all the Fujitsu backends into one single backend

      * Use DBG(...) instead of fprintf(stderr, ...) or printf
         - microtek

      * Check net/saned
         - sometimes saned+net freezes right after a scan
         - don't just ignore the byte-order for the image data (needed to
           support depths > 8 bits/channel)
         - Add keep-alive mechanism to avoid timeouts

      * qcam:
         - implement auto mode for brightness and black-level (don't
           just advertise it!) Actually, implement an auto "backend" instead
           that can be plugged in front of any backend with brightness/contrast
           etc controls
         - figure out how/if to support bulb mode
         - convert to use sanei_pio functions instead of direct port
           access.
         - Check file handling in /tmp.

      * dc210 and jpeg stuff: move sanei_* functions to sanei/ (if they are
        necessary).

      * nec:
         - Remove references to sharp backend (grep for "JX").
         - Check for HAVE_SYS_SHM_H before including sys/shm.h and
           disable shared memory support if necessary.

      * v4l: Problems (crash) with more than one video card. It looks like
        the two different cards are identified as the same card.

      * Fix backends where sane_exit() do not release memory allocated by
        sane_get_devices().
          - abaton
          - agfafocus
          - apple
          - artec
          - as6e
          - avision
          - bh
          - canon
          - coolscan
          - dmc
          - m3096
          - microtek
          - microtek2 ?
          - nec
          - qcam
          - ricoh
          - s9036
          - sharp
          - sp15c
          - tamarack
          
          - etc?

      * as6e: attach: memory (dev + dev-sane.name) isn't freed if diver isn't
        found.

      * avision: line 1393: word isn't freed sometimes (maybe if cp == line?)

      * add a contact address for each backend (in backend.desc).

      * lines like "if (config_line[len - 1] == '\n')" can cause segfaults and
        should be removed (removing "\n" is already done in sanei_config_read).
        This ist just a fast grep. Check all backends!
        - artec
        - bh
        - m3096g
        - sp15c

      * Don't export any other symbols than sane_* and sanei_*
        - artec
        - coolscan
        - mustek_pp

    doc

    ---
      * Add sane-usb manpage
    

    * Documentation for sanei API - any ideas for this?

    * sane.tex: Define the return values for sane_init?

    * Add links to sane(7) in all maual pages frontends --------- * dll: Rewrite to use libtool ltdl library

    * Add a check in the frontends if the backend delivers more data than it announced by sane_get_parameters to avoid segfaults with bad backends?

    [the remaining entries have been moved to the sane-frontends package]

    sanei -----

    misc ---- * Remove compiler warnings (>300 warnings even in disable-warnings mode, >700 with --enable-warnings))

    * Test SANE on different os/platforms, fix possible compilation problems Test methods: scanimage -d pnm:0 --filename=file.pnm -T scanimage -d net:localhost:pnm:0 --filename=file.pnm -T (start saned by inetd or saned -d before testing) xscanimage / gimp with xscanimage plugin (where available) All the above with shared and static libraries.

    * move .desc files for backends that are not included in SANE to different directory (e.g. backends and external-backends)?

    * Use #include "../include/sane/..." instead of #include <sane...>

    * Use #include "../include/lalloca.h" instead of #include <lalloca.h>

    * Check include/sane/config.h.in for unnecessary macros.

    * Add configure option to enable only the net backend for users without local scanners. Install only sane-dll/sane-net (or even only sane-net). Maybe something like --network-client-only or --disable-local-devices.

    * Add USB support for sane-find-scanner.

    * check memory leaks (checked with purify and mtrace (from glibc)): - sanei_scsi.c: line 1262 - most backends: sanei_get_devices?

    * Check AIX/gcc shared lib loading problem: When starting scanimage, only dll is loaded. Backend libraries can't be loaded: [dll] load: dlopen() failed (Symbol resolution failed for /tmp/sane-bin/lib/sane/libsane-umax.so.1 because: Symbol __eprintf (number 55) is not exported from dependent module scanimage. This happens in all libraries.

    * Add installation procedure for translations of SANE backend's options.

    -- Source code, list archive, and docs: http://www.mostang.com/sane/ To unsubscribe: echo unsubscribe sane-devel | mail majordomo@mostang.com



    This archive was generated by hypermail 2b29 : Sat May 26 2001 - 06:31:28 PDT