APACHE PORTABLE RUNTIME ICONV (APR-iconv) LIBRARY STATUS:	-*-text-*-
Last modified at [$Date$]

Releases:
    1.2.0   : in development
    1.1.1   : released November 23, 2005
    1.1.0   : not released
    1.0.1   : released November 19, 2004
    1.0.0   : released September 1, 2004
    0.9.7   : released October 11, 2005
    0.9.6   : not released
    0.9.5   : released November 16, 2004
    0.9.4   : released September 26, 2003
    0.9.3   : tagged March 30, 2002
    0.9.2   : released March 22, 2002   (alpha)

RELEASE SHOWSTOPPERS:

    * Determine the package's relationship to apr/i18n/unix
      and integrate into the apr build.

    * The resulting .so must be libapriconv-1.so corresponding to
      all other apr 1.x loadable modules, on unix.

    * build\modules.mk.win includes /YX"iconv.h", which must be
      split up to have one module precompile the header, the rest
      to consume the precompiled header (/Yc"iconv, /Yu"iconv")

RELEASE NON-SHOWSTOPPERS BUT WOULD BE REAL NICE TO WRAP THESE UP:

    * Drop modules.c code and replace much functionality with the
      apr dso methods, etc.

Other bugs that need fixing:


Other features that need writing:


Documentation that needs writing:

    * API documentation
        Status:


Available Patches:


Open Issues:
