Guy Schalnat | 0d58058 | 1995-07-20 02:43:20 -0500 | [diff] [blame] | 1 | pngchange.txt - changes for libpng |
| 2 | |
| 3 | version 0.2 |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 4 | added reader into png.h |
| 5 | fixed small problems in stub file |
Guy Schalnat | 0d58058 | 1995-07-20 02:43:20 -0500 | [diff] [blame] | 6 | version 0.3 |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 7 | added pull reader |
| 8 | split up pngwrite.c to several files |
| 9 | added pnglib.txt |
| 10 | added example.c |
| 11 | cleaned up writer, adding a few new tranformations |
| 12 | fixed some bugs in writer |
| 13 | interfaced with zlib 0.5 |
| 14 | added K&R support |
| 15 | added check for 64 KB blocks for 16 bit machines |
Guy Schalnat | 0d58058 | 1995-07-20 02:43:20 -0500 | [diff] [blame] | 16 | version 0.4 |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 17 | cleaned up code and commented code |
| 18 | simplified time handling into png_time |
| 19 | created png_color_16 and png_color_8 to handle color needs |
| 20 | cleaned up color type defines |
| 21 | fixed various bugs |
| 22 | made various names more consistant |
| 23 | interfaced with zlib 0.71 |
| 24 | cleaned up zTXt reader and writer (using zlib's Reset functions) |
| 25 | split transformations into pngrtran.c and pngwtran.c |
Guy Schalnat | 0d58058 | 1995-07-20 02:43:20 -0500 | [diff] [blame] | 26 | version 0.5 |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 27 | interfaced with zlib 0.8 |
| 28 | fixed many reading and writing bugs |
Guy Schalnat | 0d58058 | 1995-07-20 02:43:20 -0500 | [diff] [blame] | 29 | saved using 3 spaces instead of tabs |
| 30 | version 0.6 |
| 31 | added png_large_malloc() and png_large_free() |
| 32 | added png_size_t |
| 33 | cleaned up some compiler warnings |
| 34 | added png_start_read_image() |
| 35 | version 0.7 |
| 36 | cleaned up lots of bugs |
| 37 | finished dithering and other stuff |
| 38 | added test program |
| 39 | changed name from pnglib to libpng |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 40 | version 0.71 [June, 1995] |
Guy Schalnat | 0d58058 | 1995-07-20 02:43:20 -0500 | [diff] [blame] | 41 | changed pngtest.png for zlib 0.93 |
| 42 | fixed error in libpng.txt and example.c |
Guy Schalnat | 51f0eb4 | 1995-09-26 05:22:39 -0500 | [diff] [blame] | 43 | version 0.8 |
| 44 | cleaned up some bugs |
| 45 | added png_set_filler() |
| 46 | split up pngstub.c into pngmem.c, pngio.c, and pngerror.c |
| 47 | added #define's to remove unwanted code |
| 48 | moved png_info_init() to png.c |
| 49 | added old_size into png_realloc() |
| 50 | added functions to manually set filtering and compression info |
| 51 | changed compression parameters based on image type |
| 52 | optimized filter selection code |
| 53 | added version info |
| 54 | changed external functions passing floats to doubles (k&r problems?) |
| 55 | put all the configurable stuff in pngconf.h |
| 56 | enabled png_set_shift to work with paletted images on read |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 57 | added png_read_update_info() - updates info structure with |
| 58 | transformations |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 59 | version 0.81 [August, 1995] |
Guy Schalnat | 6d76471 | 1995-12-19 03:22:19 -0600 | [diff] [blame] | 60 | incorporated Tim Wegner's medium model code (thanks, Tim) |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 61 | version 0.82 [September, 1995] |
| 62 | [unspecified changes] |
| 63 | version 0.85 [December, 1995] |
| 64 | added more medium model code (almost everything's a far) |
Guy Schalnat | 6d76471 | 1995-12-19 03:22:19 -0600 | [diff] [blame] | 65 | added i/o, error, and memory callback functions |
| 66 | fixed some bugs (16 bit, 4 bit interlaced, etc.) |
| 67 | added first run progressive reader (barely tested) |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 68 | version 0.86 [January, 1996] |
Guy Schalnat | 69b1448 | 1996-01-10 02:56:49 -0600 | [diff] [blame] | 69 | fixed bugs |
| 70 | improved documentation |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 71 | version 0.87 [January, 1996] |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 72 | fixed medium model bugs |
| 73 | fixed other bugs introduced in 0.85 and 0.86 |
Guy Schalnat | 4ee97b0 | 1996-01-16 01:51:56 -0600 | [diff] [blame] | 74 | added some minor documentation |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 75 | version 0.88 [January, 1996] |
Guy Schalnat | b2e01bd | 1996-01-26 01:38:47 -0600 | [diff] [blame] | 76 | fixed progressive bugs |
| 77 | replaced tabs with spaces |
| 78 | cleaned up documentation |
Guy Schalnat | e5a3779 | 1996-06-05 15:50:50 -0500 | [diff] [blame] | 79 | added callbacks for read/write and warning/error functions |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 80 | version 0.89 [July, 1996] |
Guy Schalnat | e5a3779 | 1996-06-05 15:50:50 -0500 | [diff] [blame] | 81 | added new initialization API to make libpng work better with shared libs |
| 82 | we now have png_create_read_struct(), png_create_write_struct(), |
| 83 | png_create_info_struct(), png_destroy_read_struct(), and |
| 84 | png_destroy_write_struct() instead of the separate calls to |
| 85 | malloc and png_read_init(), png_info_init(), and png_write_init() |
| 86 | changed warning/error callback functions to fix bug - this means you |
| 87 | should use the new initialization API if you were using the old |
| 88 | png_set_message_fn() calls, and that the old API no longer exists |
| 89 | so that people are aware that they need to change their code |
| 90 | changed filter selection API to allow selection of multiple filters |
| 91 | since it didn't work in previous versions of libpng anyways |
| 92 | optimized filter selection code |
| 93 | fixed png_set_background() to allow using an arbitrary RGB color for |
| 94 | paletted images |
| 95 | fixed gamma and background correction for paletted images, so |
| 96 | png_correct_palette is not needed unless you are correcting an |
| 97 | external palette (you will need to #define PNG_CORRECT_PALETTE_SUPPORTED |
Andreas Dilger | 02ad0ef | 1997-01-17 01:34:35 -0600 | [diff] [blame] | 98 | in pngconf.h) - if nobody uses this, it may disappear in the future. |
Guy Schalnat | e5a3779 | 1996-06-05 15:50:50 -0500 | [diff] [blame] | 99 | fixed bug with Borland 64K memory allocation (Alexander Lehmann) |
Andreas Dilger | 02ad0ef | 1997-01-17 01:34:35 -0600 | [diff] [blame] | 100 | fixed bug in interlace handling (Smarasderagd, I think) |
Guy Schalnat | e5a3779 | 1996-06-05 15:50:50 -0500 | [diff] [blame] | 101 | added more error checking for writing and image to reduce invalid files |
| 102 | separated read and write functions so that they won't both be linked |
| 103 | into a binary when only reading or writing functionality is used |
| 104 | new pngtest image also has interlacing and zTXt |
Andreas Dilger | 02ad0ef | 1997-01-17 01:34:35 -0600 | [diff] [blame] | 105 | updated documentation to reflect new API |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 106 | version 0.90 [January, 1997] |
Andreas Dilger | 02ad0ef | 1997-01-17 01:34:35 -0600 | [diff] [blame] | 107 | made CRC errors/warnings on critical and ancillary chunks configurable |
| 108 | libpng will use the zlib CRC routines by (compile-time) default |
| 109 | changed DOS small/medium model memory support - needs zlib 1.04 (Tim Wegner) |
| 110 | added external C++ wrapper statements to png.h (Gilles Dauphin) |
| 111 | allow PNG file to be read when some or all of file signature has already |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 112 | been read from the beginning of the stream. ****This affects the size |
| 113 | of info_struct and invalidates all programs that use a shared libpng**** |
Andreas Dilger | 02ad0ef | 1997-01-17 01:34:35 -0600 | [diff] [blame] | 114 | fixed png_filler() declarations |
| 115 | fixed? background color conversions |
| 116 | fixed order of error function pointers to match documentation |
| 117 | current chunk name is now available in png_struct to reduce the number |
| 118 | of nearly identical error messages (will simplify multi-lingual |
| 119 | support when available) |
| 120 | try to get ready for unknown-chunk callback functions: |
| 121 | - previously read critical chunks are flagged, so the chunk handling |
| 122 | routines can determine if the chunk is in the right place |
| 123 | - all chunk handling routines have the same prototypes, so we will |
| 124 | be able to handle all chunks via a callback mechanism |
Andreas Dilger | 47a0c42 | 1997-05-16 02:46:07 -0500 | [diff] [blame^] | 125 | try to fix Linux "setjmp" buffer size problems |
| 126 | version 0.95 [March, 1997] |
| 127 | fixed bug in pngwutil.c allocating "up_row" twice and "avg_row" never |
| 128 | fixed bug in PNG file signature compares when start != 0 |
| 129 | changed parameter type of png_set_filler(...filler...) from png_byte |
| 130 | to png_uint_32 |
| 131 | added test for MACOS to ensure that both math.h and fp.h are not #included |
| 132 | added macros for libpng to be compiled as a Windows DLL (Andreas Kupries) |
| 133 | added "packswap" transformation, which changes the endianness of |
| 134 | packed-pixel bytes (Kevin Bracey) |
| 135 | added "strip_alpha" transformation, which removes the alpha channel of |
| 136 | input images without using it (not neccesarily a good idea) |
| 137 | added "swap_alpha" transformation, which puts the alpha channel in front |
| 138 | of the color bytes instead of after |
| 139 | removed all implicit variable tests which assume NULL == 0 (I think) |
| 140 | changed several variables to "png_size_t" to show 16/32-bit limitations |
| 141 | added new pCAL chunk read/write support |
| 142 | added experimental filter selection weighting (Greg Roelofs) |
| 143 | removed old png_set_rgbx() and png_set_xrgb() functions that have been |
| 144 | obsolete for about 2 years now (use png_set_filler() instead) |
| 145 | added macros to read 16- and 32-bit ints directly from buffer, to be |
| 146 | used only on those systems that support it (namely PowerPC and 680x0) |
| 147 | With some testing, this may become the default for MACOS/PPC systems. |
| 148 | only calculate CRC on data if we are going to use it |
| 149 | added macros for zTXt compression type PNG_zTXt_COMPRESSION_??? |
| 150 | added macros for simple libpng debugging output selectable at compile time |
| 151 | removed PNG_READ_END_MODE in progressive reader (Smarasderagd) |
| 152 | more description of info_struct in libpng.txt and png.h |
| 153 | more instructions in example.c |
| 154 | more chunk types tested in pngtest.c |
| 155 | renamed pngrcb.c to pngset.c, and all png_read_<chunk> functions to be |
| 156 | png_set_<chunk>. We now have corresponding png_get_<chunk> |
| 157 | functions in pngget.c to get infomation in info_ptr. This isolates |
| 158 | the application from the internal organization of png_info_struct |
| 159 | (good for shared library implementations). |
| 160 | version 0.96 [May, 1997] |
| 161 | fixed serious bug with < 8bpp images introduced in 0.95 |
| 162 | fixed 256-color transparency bug (Greg Roelofs) |
| 163 | fixed up documentation (Greg Roelofs, Laszlo Nyul) |
| 164 | fixed "error" in pngconf.h for Linux setjmp() behaviour |
| 165 | fixed DOS medium model support (Tim Wegner) |
| 166 | fixed png_check_keyword() for case with error in static string text |
| 167 | added read of CRC after IEND chunk for embedded PNGs (Laszlo Nyul) |
| 168 | added typecasts to quiet compiler errors |
| 169 | added more debugging info |