GdkMagick Things To Do List
===========================

ALPHA TEST RELEASES:

 1. Test all API functions.

 2. Check for all errors, especially in memory and structure allocation.

 3. Manage all error cases gracefully, and report errors informatively
    to the user. All errors shall be echoed to stdout.

 4. Finish the test program. Ideally, it will cover all aspects of the
    GdkMagick library. There is an important test case to add: the
    ability to render an image into a drawable with a size different
    from the image.

 5. Fix support for ImageMagick 5.0, which is still under development
    at the time of this writing.

 6. Add documentation for gdkmagick-config and gdkmagick.m4.
    In addition, add documentation on properly initializing the toolkits
    and developing a GdkMagick application.

 7. Make the useful GdkMagick macros public and document them.

 8. Freeze the API *BEFORE* moving GdkMagick to BETA.

BETA TEST RELEASES:

 1. Start the BETA releases with version 0.9.

 2. Improve the current documentation and add more examples. All
    documentation shall be completed before the first public release.

 3. Internationalize all strings and provide a message catalog for
    U.S. English.

 4. Possibly change the copyright to a less restrictive license than the
    LGPL. We may want to give developers the option of using GdkMagick
    under the LGPL copyright (in the spirit of GTK+) or a copyright
    similar to that of ImageMagick.

 5. Add support for transparent images. Improve the rendering functions
    to handle transparencies and matte channels.

 6. Allow for conversion to a GdkImage of arbitrary visual type, not just
    the type used by the system.

 7. Provide example function calls to the function API documentation.

PUBLIC RELEASES:

 1. Start with GdkMagick 1.0.0, and increment the last digit (1.0.1, 1.0.2,
    etc.) as problems are found and fixed.

 2. Increment the last digit as new native-language translations are
    submitted.

FUTURE RELEASES:

 1. New features and APIs will be added to the next cycle of development
    releases. Start the development cycle with 1.1.0. At this point, the
    API may be unfrozen so that the function call interface and data
    structures can be improved.

 2. Start the BETA development cycle with version 1.9.0.

 3. Add support for cross-compiling.

 4. Add support for image transparency and alpha channels.

 5. Release the next public version as 2.0.0. At this point, only bugfixes
    and native-language translations are accepted.
