]> git.imager.perl.org - imager.git/blobdiff - TODO
note GIF changes
[imager.git] / TODO
diff --git a/TODO b/TODO
index 6391affb481b3f71c57f85cb3994151e36b4b817..61fb9634f2ec22eab8ddaa93618293ad998ac13d 100644 (file)
--- a/TODO
+++ b/TODO
@@ -6,6 +6,219 @@ Release Plans (subject to change)
 brown-bag bugs may add intermediate releases.  The dates are goals,
 not commitments.
 
+For 0.65:
+
+PNG re-work (#29268)
+
+For 0.64: (speculative)
+
+thick lines (#28854)
+
+have alpha channel work treated as coverage for primitives (more
+general combine parameter)
+
+add some extra combine modes (hard/soft light, screen)
+
+For 0.63:
+
+general alpha channel fixes (#29879, etc) (done)
+
+give 4/2 channel images a background color when saving to pnm (#30074)
+(done)
+
+give 4/2 channel images a background color when saving to BMP (#30075)
+(done)
+
+give 4/2 channel images a background color when saving to JPEG
+(#29876)
+
+
+For 0.62:
+
+TIFF improvements (to be detailed) (#20329) (done)
+ - read/write 16-bit RGB w/ and w/o alpha
+ - read 16-bit CMYK w/ and w/o alpha
+ - read/write 32-bit RGB w/ and w/o alpha
+ - read 32-bit CMYK w/ and w/o alpha
+ - write mono images as bi-level
+ - read bi-level image as mono/paletted
+ - read/write 16/32 grayscale w/ and w/o alpha
+both contig and non-contiguous
+ - possible extra code for handling 8-bit CMYK (#29353)
+
+Makefile.PL --incpath and --libpath should expand ~/ paths (#29484)
+
+scaling alpha channel image issues (done)
+
+PBM images inverted (#30859) (might be fixed in TIFF branch) (was,
+added test, done)
+
+don't load B at compile-time in t82inline.t (#30508) (done)
+
+the hardinvert filter inverts the alpha channels, this probably isn't
+desirable (#30002) (done)
+
+"dh-make-perl --build --cpan Imager" fails on require Makefile.PL
+(#30520) (fixed)
+
+Wrong link in Imager Pod (#30889) (done)
+
+more diagnostics in 5/t57infix.t (fixed the problem)
+
+extract out the scale() scale factor calculations (done)
+
+For 0.61:
+
+regmach.c fixes/tests (#29296) (done)
+
+sample: scaling an animated gif (#27591) (done)
+
+transform2() docs (#29267) (done)
+
+i_gsamp() chan_count validation (#28985) (done)
+
+Imager::Font::Wrap doesn't correctly set savepos (#29771) (done)
+
+testdrive warnings (#29610) (done)
+
+Imager::Files still refers to rgb file type (#29354) (done)
+
+t/t01introvert test failure line 495 (#29413) (done)
+
+Imager::Expr::Infix problem (#29562) (done)
+
+CMYK alpha TIFF problems with old libtiff (#29353) (done)
+
+matrix_transform() should use fabs() instead of abs() range checking
+sz (#29936) (done)
+
+warning compiling datatypes.c on x64 (#30204) (done)
+
+dynfilt/t/t60dyntest.t relies on a file that may not exist (#30203)
+(done)
+
+Imager::Font::Wrap doesn't correctly set savepos (#29771) (done)
+
+For 0.60 (hopefully):
+
+RGB file support (#8666) (done)
+
+convert() doesn't preserve sample size (#28492) (done)
+
+be explicit that scale*() doesn't modify the source (#28570) (done)
+
+repeated text in Imager::Files (#27589) (done)
+
+error message when loading an unsupported font format is confusing (#27571) (done)
+
+enable transparency by default for gif (#27615) (done)
+
+Imager doesn't load on Windows 98 (#27653) (done)
+
+new color counting code (#28142) (done)
+
+sample: scaling an animated gif (#27591)
+
+test getcolorcount() (done)
+
+do a compiler warning clean up run (done)
+
+change the ico/cur reader to apply the mask as an alpha channel by
+default (#29001) (done)
+
+For 0.58:
+
+rgb.txt search (and testing) (#26064) (done)
+
+guassian blur radius (#25645) (done)
+
+text rendering FT1 (#11972) (done)
+
+text rendering T1 (#11972) (done)
+
+For 0.57
+
+BMP security fix only
+
+For 0.56:
+
+checking testing of new ft2 rendering (done)
+
+possibly: use renderer on other fonts
+
+check testing of new ppm input (done)
+
+check testing of new ppm output (done)
+
+check lbr's font output issue (done)
+
+tests for monochrome makemap (done)
+
+correct handling of old Data::Dumper (#24391) (done)
+
+fix unsharpmask documentation (#25531) (done)
+
+work around compiler bug on OS X (#25561) (done)
+
+BEFORE 0.54
+
+OO interface for i_plin/i_glin (done)
+
+remove gif query from makefile.pl (done)
+
+fallback for read/write_multi to read/write
+
+pnmscale based alternative scale method (done)
+
+rubthrough 4 on 4 (done)
+
+replace dummy test script in dynfilt with a real one (done)
+
+BEFORE 0.50:
+
+skip t82inline.t tests if directory has spaces in name
+
+integrate pod coverage tests
+
+rework iolayers
+
+add .ico support
+
+note lack of IRC support
+
+document parseiptc()
+
+BEFORE 0.48:
+
+scale() fixes/docs, Imager::Transformations going over. (done)
+
+do some more malloc checks (done)
+
+scan $Config{libspath} for directories if we can. (done)
+
+0.47:
+
+- more documentation (and corresponding code cleanup)
+
+- external C API access
+
+- hooks for file reading/writing
+
+- hooks for font types
+
+- hooks for filters
+
+- hooks for fills
+
+- filter pre-processor for handling both image access methods
+
+- move existing loadable filters into separate sub-directories
+
+- write Imager::SDL
+
+- maybe Imager::Tk::Photo
+
+
 0.46: (September 2005)
 
 - check remaining memory allocation calls for integer overflows
@@ -25,16 +238,18 @@ not commitments.
   memory causing a denial of service attack. (done)
 
 - implement gsamp()/gsampf()/plin() etc methods for those low level image
-  interfaces which don't yet have methods.
-   - code
-   - test
-   - document
+  interfaces which don't yet have methods. (done)
+   - code (done)
+   - test (done)
+   - document (done)
 
-- add Imager::Tutorial (see Tk::UserGuide for a structure)
+- add Imager::Tutorial (see Tk::UserGuide for a structure) (done)
   don't cover installation - belongs in README or INSTALL
   it doesn't need to cover everything - read/write/create/simple drawing
   and simple text - other stuff belongs in the cookbook or in sample code
 
+- rename lib/Imager/Cookbook.pm to lib/Imager/Cookbook.pod (done)
+
 - add 5 more recipes to Imager::Cookbook
 
 - implement i_incomplete for png and gif files.
@@ -48,13 +263,13 @@ not commitments.
   - multiple examples for writing GIF images.
   - name arguments and use those names in the documentation
     http://nntp.perl.org/group/perl.perl5.porters/102434
-  (#1521, #5608, #8231, #11429, #13058)
+  (#1521, #5608, #8231, #11429, #13058(done))
 
-- have $img->read() act like ($img) = Imager->read_multi() on GIFs
+- have $img->read() act like ($img) = Imager->read_multi() on GIFs (done)
 
 - figure out what the nearest_color filter does, and document it
 
-- remove image.h dependency on t1lib.h
+- remove image.h dependency on t1lib.h (done)
 
 - make sure dynfilt/Makefile.PL gets the same includes that
   Makefile.PL does.
@@ -71,7 +286,23 @@ not commitments.
    - image scaling? and matrix_transform()'s interpolation
   http://rt.cpan.org/NoAuth/Bug.html?id=11972
 
+0.48:
 
+- fill out handling of large sample (16/double per sample) images
+  - filters
+  - rendering:
+    - lines
+    - text
+    - boxes
+    - polygons
+  - engines
+    - matrix transform
+    - transform()
+    - transform2()
+  - files:
+    - png
+    - tiff
+    - pnm
 
 Speculation
 -----------
@@ -110,7 +341,7 @@ MultiImage & metadata support:
 
 New Features:
 - Add mng support, pcx and aalib support.
-  - Windows icon files (.ico)
+  - Windows icon files (.ico) (done)
   - ILBM (Amiga) images
   - photoshop files (I think I've seen docs)
   - XBM
@@ -132,7 +363,7 @@ New Features:
   (or even from an existing bold or slanted font)
 
 - utf8 support for text output
-  (available for FT1, freetype2, should be easy for Win32)
+  (available for FT1, freetype2, T1, Win32)
 
 - easy interfaces for text output:
   - align text around point, including:
@@ -175,6 +406,19 @@ New Features:
 
 - arc outlines
 
+- filled/outlined ellipses and elliptical arcs
+
+  Complexities include:
+
+  a) when drawing a pie segment, are the angles specified the real
+  angles (since the scaling changes the angles if you just use sin() and
+  cos() directly) or the angle before scaling?  I can see cases where
+  both are useful.
+
+  b) can you control the angles of the axes of symmetry? (the axes would
+  remain at right angles to each other) Does this change the effect of
+  the d1 and d2 parameters?
+
 - complex lines/curves:
   - thick lines:
     - dotted/dashed lines
@@ -227,7 +471,7 @@ Format specific issues:
 - provide patches for libgif and libungif that fix their bugs
   and give a useful extension interface.  Probe for the 
   installation of the patches in Makefile.PL to let gif.c
-  know what features it can use.
+  know what features it can use. (no need anymore)
 
 - Add options for pnm writer to save in any of the p1..P6
   formats.  Even if the input has 1 channel, write 3 and such
@@ -245,7 +489,7 @@ Format specific issues:
 - read more metadata from images, esp tiff tags, EXIF format information 
   from TIFF and JPEG.
 
-- handle 16-bit/sample pgm/ppm files
+- handle 16-bit/sample pgm/ppm files (done)
 
 - "jpeg lossless rotation" - directly manipulates the JPEG
   representation to rotate, scale or in some limited cases, crop an