about summary refs log tree commit diff
path: root/doc/HISTORY
diff options
context:
space:
mode:
Diffstat (limited to 'doc/HISTORY')
-rw-r--r--doc/HISTORY522
1 files changed, 514 insertions, 8 deletions
diff --git a/doc/HISTORY b/doc/HISTORY
index 86fa0ae1..259e9dbd 100644
--- a/doc/HISTORY
+++ b/doc/HISTORY
@@ -4,6 +4,509 @@ Netpbm.
 CHANGE HISTORY 
 --------------
 
+not yet  BJH  Release 11.07.00
+
+              libnetpbm: Fix double free crash when memory allocation via
+              REALLOCARRAY fails.  Introduced in Netpbm 10.40 (September
+              2007).
+
+              libnetpbm: Allow color dictionary with more than 1000 entries.
+
+              ppmhist, ppmtoxpm: Work with color dictionary with more than
+              1000 color entries.
+
+              rgb.txt: Add Resene paint colors, 2010.
+
+24.03.30 BJH  Release 11.06.00
+
+              pamcut: add -reportonly.
+
+              infotopam: Add input validation.
+
+              infotopam: Remove input file name from messages.  Add -verbose
+              and issue informational message only if it is specified.
+
+              libnetpbm: Don't ignore garbage at the end of a color specifier
+              (e.g. rgbi:0/.5/1xyz).
+
+              color database: change names of "Spring Green", "Lamp Black",
+              and "light grey" to "SpringGreen", "LampBlack", and "LightGrey"
+              to be consistent with other color names.
+
+              pamcut: fix incorrect output when rectangle to cut is entirely
+              above the input image.  Invisible junk after image.  Always
+              broken.  (The ability to cut outside the input image was new in
+              pamcut's predecessor pnmcut in Netpbm 9.7 (August 2000).
+
+              pamcut: fix incorrect output with PBM input when rectangle to
+              cut is entirely below the input image.  Invisible junk after
+              image.  Broken in Netpbm 10.44 (September 2008).
+
+              ppmtowinicon: fix array overrun with 4 and 8 bits per pixel.
+              Broken in Netpbm 11.05 (December 2023).
+
+              infotopam: fix incorrect output -- columns always in wrong
+              place.  Always broken.  (infotopam was new in Netpbm 10.22 (May
+              2004)).
+
+              pamseq: fix typo in error message.
+
+              build: makeman: fix warning about backslashes in strings.
+
+23.12.28 BJH  Release 11.05.00
+
+              pnmpad: Add -color, -promote, -extend-edge, -detect-background .
+
+              pnmconvol: Restore ability of convolution matrix to be a
+              pseudo-plain-PNM with samples that exceed the maxval.  Lost in
+              10.30 (October 2005) because maxval-checking code was added to
+              libnetpbm.  (Was fixed in 10.47.08 in November 2010, but only in
+              the 10.47 series).
+
+              pnmindex: Improve failure mode when -size or -across is zero.
+
+              pnmindex: Make -plain work.
+
+              pnmpad: fix behavior with -left, -right, and -width together or
+              -top, -bottom, -height together: ignores -width where it should
+              fail.  Broken in Netpbm 10.72 (September 2015).
+
+              pamtosvg: fix "zero determinant" failure.  Introduced in
+              Netpbm 11.04 (September 2023).
+
+              pjtoppm: fix crash based on uninitialized variable.
+              Introduced in Netpbm 11.04 (September 2023).
+
+              ppmtopcxl: fix incorrect output with > 256 colors.  Always
+              broken.  (Program was added in primordial Netpbm in 1990).
+
+              pbmtext: fix buffer overrun with insanely large input.
+
+              picttoppm: fix buffer overrun with insanely wide input.
+
+              ppmtoxpm: fix incorrect output with insanely large number of
+              colors.
+
+              pnmscalefixed: fix incorrect output with really big image and
+              -pixels option.
+
+              ppmdither: fix buffer overrun with insanely large dithering
+              matrix.
+
+              pnmpad: no longer accept old-style options (e.g. -t50).
+
+              libnetpbm: Add pm_feed_from_file, pm_accept_to_files,
+              pm_accept_to_filestream Standard Input feeder, Output accepter
+              for pm_system.
+
+              libnetpbm, programs that use color maps: fix buffer overrun
+              with insanely deep images.
+
+              merge build: Fix 'pnmcat'.  Introduced in Netpbm 11.00
+              (September 2023).
+
+              Build: Fix compile error on systems without 'asprintf'.
+              Introduced in Netpbm 11.04 (September 2023).
+
+              Build: Fix building of jpeg2ktopam and pamtojpeg2k with
+              assertion checking by default.
+
+23.09.27 BJH  Release 11.04.00
+
+              pamaddnoise: add -salt.
+
+              pamaddnoise: reject options that aren't meaningful for the type
+              of noise specified rather than just ignore them.
+
+              ppmtosixel: Add -7bit, so it works on more terminals, including
+              xterms.  Thanks Scott Pakin.
+
+              g3topbm: Add -correctlong
+
+              build: Add COMPILED_BY environment variable to control the
+              "compiled by" value from --version common option.  This helps
+              with creating reproducible builds.
+
+              pnmtojpeg: minor improvement to error messages about bad files.
+
+              pammixmulti: Remove disclaimer of patent license.
+
+              pamstack: Fix bug: acts like -firstmaxval specified when it
+              wasn't.  Introduced in Netpbm 11.03 (June 2023).
+
+              pamstack: Fix -lcmmaxval: chooses wrong maxval.  Always
+              broken (-lcmmaxval was new in Netpbm 11.03 (June 2023)).
+
+              pamstack: Fail gracefully when total number of planes is too
+              large for unsigned integer.  Always broken (Pamstack was new in
+              Netpbm 10.0 (June 2002).
+
+              pamtosvg: fix hang.
+
+              ppmfade: fix "file not found" crash for most fade modes.
+              Introduced in Netpbm 10.98 (March 2022).
+
+              ppmfade: fix incorrect block mode fade.  Always broken
+              (ppmfade was new in Netpbm 8.4 (April 2000)).
+
+              pamaddnoise: fix very incorrect noise added for all types.
+              Introduced in Netpbm 10.94 (March 2021).
+
+              ppmrough: fix buffer overrun.  Always broken (Ppmrough was new
+              in Netpbm 10.9 (September 2002).
+
+              ppmrough: fix excessive roughness.  Introduced in Netpbm 10.94
+              (March 2021).
+
+              pgmtexture: Fix buffer overflow with maxval > 255.  Always
+              broken.  Maxvals > 255 were possible starting in Netpbm 9.0
+              (April 2000).
+
+              pgmtexture: Fix bug: ignores -d.  Introduced in Netpbm 10.56
+              (September 2011).
+
+              xwdtopnm Fix spurious output with really wide/deep rows.
+
+              imgtoppm: Fix spurious output with really wide/deep rows.
+
+              pbmtopgm: Fix error message for excessive -width.
+
+              pbmtoxbm: Fix spurious output with really wide rows.
+
+              tifftopnm: Fix incorrect output with insanely wide/deep rows.
+
+              thinkjettopbm: Fix incorrect output with insanely wide rows.
+
+              ybmtopbm: Fix incorrect output with insanely wide rows.
+
+              pjtoppm: Fix incorrect output with insanely large number of rows.
+
+              library: add check of maxval for computable size.
+
+              Build: Include LDFLAGS in link of shared library.
+
+23.06.28 BJH  Release 11.03.00
+
+              pamstack: Add -firstmaxval, -lcmmaxval
+
+              pnmcolormap: make result independent of how system's qsort
+              orders records with equal keys.  Affects pnmquant.
+
+              pamtopng: fix typo in error message about -chroma option.
+
+              pamtopng, pnmtopng, pngtopam: fix error message when something
+              fails in libpng.  Always broken (the programs were new in Netpbm
+              8.1 (March 2000)).
+
+23.03.25 BJH  Release 11.02.00
+
+              jpegtopnm: Add -traceexif
+
+              pbmtextps: Add -asciihex, -ascii85.
+
+              pcdovtoppm: remove dependency on obsolete 'tempfile' program.
+
+              jpegtopnm: Many fixes to -dumpexif.  Always broken.
+              (-dumpexif was new in Netpbm 9.18 (September 2001))
+
+              pamtopng: fix -chroma option: always rejected.  Always broken.
+              (pamtopng was new in Netpbm 10.70 (June 2015)).
+
+              pnmtopng: fix -rgb option: always rejected.  Always broken
+              (-rgb was new in Netpbm 10.30 (October 2005)).
+
+              build: change the way you add the separately distributed
+              'hpcdtoppm' code to the build.
+
+22.12.31 BJH  Release 11.01.00
+
+              pamcat: Add -listfile .
+
+              pamtojpeg2k: add -size option.  Doesn't precisely work (and
+              -compression has never worked precisely either); should be
+              fixed some day.
+
+              ppmtompeg: Fix crash with resize option because of invalid
+              memory free.
+
+              fitstopnm: fix invalid memory reference (nonterminated ASCIIZ
+              string).
+
+              packaging: Fix library minor number to 100 + Netpbm minor number
+              so it is higher than previous ones in library major 100.
+              I.e. libnetpbm.so.100.101 instead of libnetpbm.so.100.1.
+              Introduced in Netpbm 11.00.00.
+
+22.09.28 BJH  Release 11.00.00
+
+              (No significance to new major number; just ran out of 2-digit
+              minor numbers).
+
+              Add pamcat.
+
+              pamtable: add -tuple.
+
+              pamtable: add -hex.
+
+              pbmtextps: improve error messages.
+
+              pnmtofits: fix arbitrary behavior when FITS input lacks
+              required fields in header.  Always broken.  Pnmtofits'
+              predecessor was in primordial Netpbm (1989).
+
+              ppmtoicr: Fix bug: all options cause bogus command line parsing
+              errors.  Always broken.  Ppmtoicr was new in 1991.
+
+              ppmtoicr: Fix arithmetic overflows.
+
+              ppmtoicr: make -rle option issue an error message saying it no
+              longer exists (it did, sort of, before 2015).
+
+              ppmforge: Fix arbitrary output with really large -power.
+              
+              pnmindex: fix shell injection vulnerabilities.  Broken since
+              Netpbm 10.28 (June 2005).
+
+              pnmmargin: fix shell injection vulnerability.  Always broken
+              (Program was added in primordial Netpbm in 1990).
+
+              build: Create backward compatibility symbolic link for
+              pnminterp-gen, missing for over 20 years.
+
+22.06.24 BJH  Release 10.99.00
+
+              Add pamrestack.
+
+              Add pamshuffle.
+
+              Add pamtoqoi, qoitopam.
+
+              palmtopnm: Fix failure with bogus claim of invalid input on
+              architectures that do not use two's complement negative numbers.
+              Always broken.  (Ability to convert PackBits input was new in
+              Netpbm 10.27 (March 2005).
+
+              pnmgamma -srgbtobt709, -bt709tosrgb: fix bug; incorrect output.
+              Always broken (These options were new in Netpbm 10.32 (February
+              2006)).  Thanks Alexander Shpilkin <ashpilkin@gmail.com>.
+
+              pamdice: Fix incorrect output file name with PAM input.  Always
+              broken (pamdice was new in Netpbm 9.25 (March 2002).
+
+              libnetpbm: Stop bogus runtime error check failure in pmfileio.c
+              shifts.
+
+22.03.27 BJH  Release 10.98.00
+
+              pamtopdbimg: Add -fixedtime.
+
+              ppmfade: Use temporary files securely.
+              
+              pnmtosir: Set some possibly meaningless bits in output to zero
+              so output is repeatable.
+
+              pamx: Fix bug: top-justifies image in all cases where it should
+              bottom-justify.  Always broken.  (pamx was new in Netpbm 10.34
+              (June 2006).
+
+              pnmtorle: Fix bug: -h works only on first image.
+
+              pamsistoaglyph: Fix invalid memory reference and incorrect
+              output on depth 1 input.  Always broken.  (pamsistoaglyph was
+              new in Netpbm 10.47 (June 2009).  Thanks Scott Pakin.
+
+              pambayer: Fix bogus colors at edges.  Always Broken (pambayer
+              was new in Release 10.30 (October 2005)).
+
+              libnetpbm, various programs: fix bug: bogus warning that a color
+              specified on command line cannot be represented exactly with the
+              maxval being used.  Introduced in Netpbm 10.83 (June 2018).
+
+              pnmtopsnr: Fix typo in error message.  Always broken (pnmpsnr
+              was new in Netpbm 9.6 (July 2000).
+
+              ppmtoilbm: Remove -floyd (aka -fs) option, which hasn't worked
+              in a long time if ever and is inappropriate function for this
+              program.  And the broken code is inconsistent with new random
+              number logic elsewhere in the package.
+
+              ppmtoapplevol: Fix bug: reads from Standard Input even when you
+              specify the input file argument.  Always broken.  (ppmtoapplevol
+              was new in Netpbm 10.54 (March 2011).
+
+              ppmtoapplevol: Fix bug: produces garbage with input image wider
+              than 255.  Always broken.  (ppmtoapplevol was new in Netpbm
+              10.54 (March 2011).
+
+              pgmmedian: fix crash when median matrix is wider or higher than
+              the input image.
+
+              picttoppm: Fix incorrect output for 32 bit per pixel images
+              that have only 3 planes.  Broken in Netpbm 10.34 (June 2006).
+
+              pamendian: fix bogus "sample exceeds maxval" failure.
+              Introduced in Netpbm 10.66 (March 2014).
+
+              ppmtoilbm: Fix wild memory references and hangs with -map .
+              Introduced in Netpbm 9.12 (March 2001).
+
+              pgmtexture: Fix incorrect output.  Always broken.  (Program was
+              added in primordial Netpbm in 1991).
+              
+              pgmabel: Fix incorrect output.  Always broken.  (Program was
+              new in Netpbm 10.3 (July 2002).
+
+              Remove Floyd-Steinberg dithering functions (ppm_fs_*) from
+              libnetpbm (libppmfloyd).  No longer used.  Floyd-Steinberg
+              dithering logic can be found in pnmremap.  libppmfloyd
+              was previously used by ppmtoilbm.
+
+21.12.27 BJH  Release 10.97.00
+
+              Add pbmnoise.
+
+              pnmpad: Use -halign with -mwidth and default to centering the
+              image instead of left-justifying when no other padding is being
+              added.  Same with -mheight, -valign, and top-justifying.
+
+              xwdtopnm: Add ability to process bit depth 32.
+
+              pgmtoppm: Add -black, -white.
+
+              ppmpat: Add -mesh.
+
+              pampaintspill: Add -near.  Thanks Scott Pakin.
+
+              pamtogif: Fix bug: doesn't ignore the input alpha mask when user
+              specified -transparent.  Broken in Netpbm 10.37 (December 2006).
+
+              palmtopnm: Fix bug: fails with PackBits input on platform with
+              default unsigned char, such as ppc64.  Always broken.  (Ability
+              to convert PackBits input was new in Netpbm 10.27 (March 2005).
+              
+              pamrubber: Fix bug: random behavior with -quad when you specify
+              both points for source or target and the second one is lower in
+              the image than the first.  Always broken (Pamrubber was new in
+              Netpbm 10.54 (March 2011)).
+
+              sunicontopnm, escp2topbm, mgrtopbm, ybmtopbm, pamcut, pbmpscale,
+              pnmcat, pnmpad: Fix arithmetic overrun with ridiculously large
+              image.
+
+              pbmclean: Fix overallocation of memory (waste).
+
+              libnetbm: Add pnm_writepamrowpart, pnm_formatPamtuples.
+
+              libnetpbm: When validating computable size of width and height,
+              allow for adding up to 10 instead of 2, to account for rounding
+              up to a multiple of 8 in processing bit maps.
+
+              Build: Don't attempt to build 'pamexec' on systems without
+              Unix process management.  Bug introduced in Netpbm 10.94
+              (March 2021) and supposedly fixed in 10.95, but not really.
+
+21.09.25 BJH  Release 10.96.00
+
+              pgmtoppm: Eliminate dependency on color dictionary when user
+              does not specify any colors by name.
+
+              pamstereogram: Fix crash with -xbegin=0.  Thanks Scott Pakin.
+              Introduced in Netpbm 10.94.
+
+21.06.30 BJH  Release 10.95.00
+
+              pamtopng: Fix rejection of all BLACKANDWHITE_ALPHA images with
+              message about wrong depth.  Always broken (pamtopng was new in
+              Netpbm 10.71 (June 2015)).  Thanks Karol Kosek
+              <krkk@krkk.ct8.pl>.
+
+              pamtopng: Fix failure with GRAYSCALE_ALPHA images with maxval
+              less than 255.  Always broken (pamtopng was new in Netpbm 10.71
+              (June 2015)).  Thanks Karol Kosek <krkk@krkk.ct8.pl>.
+              
+              pamtopng: Fix: treats all tuple types that start with BLA as
+              BLACKANDWHITE.  Always broken (pamtopng was new in Netpbm 10.71
+              (June 2015)).
+
+              pamtopng: Fix -transparent option - program recognized
+              -transparency instead.  Always broken (pamtopng was new in
+              Netpbm 10.71 (June 2015)).
+
+              pamtogif: Fix failure with bogus message about wrong depth with
+              grayscale and black and white PAM images with transparency.
+              Always broken (pamtogif was new in Netpbm 10.37 (December 2006)).
+              Thanks Karol Kosek <krkk@krkk.ct8.pl>.
+
+              ppmtogif: Same as 'pamtogif' fix above, but with -alpha option.
+              
+              Build: Fix build failure due to missing 'random' function on
+              Mingw platform.  Bug introduced in Netpbm 10.94 (March 2021).
+
+              Build: Don't attempt to build 'pamexec' on systems without
+              Unix process management.  Bug introduced in Netpbm 10.94
+              (March 2021).
+
+              Build: Make it work on systems that don't have date +%s.  Broken
+              in Netpbm 10.78 (March 2017).  Thanks Claes Nästén
+              (pekdon@gmail.com).
+
+              Build: Fix for MacOS build failures with missing sprintf and
+              vasprintf in broken build environment.
+              
+              Mkdeb: fix failure with message about unrecognized format of
+              VERSION file.  Introduced in Netpbm 10.90 (March 2020).
+
+21.03.27 BJH  Release 10.94.00
+
+              Add pamhomography:  Thanks Scott Pakin.
+
+              pamstereogram: Add -yfillshift .
+
+              pamtowinicon: Add BMP/PNG encoding to verbose output.
+
+              Use internal random number generator everywhere random numbers
+              are used except ppmtoilbm, so seeded results are the same on
+              all platforms.
+
+              pamexec: Issue message instead of being killed by a signal when
+              the exec'ed program does not read the whole image"
+
+              ppmforge: Fail if -dimension is greater than 5, which is
+              useless.
+
+              pamscale: Fix bogus "bad magic number" or similar failure most
+              of the time with -nomix.  Broken since Netpbm 10.49 (December
+              2009).
+
+              pnmtopng: Fix incorrect transparency in output when requesting
+              transparency.  Introduced after Netpbm 10.35 (August 2006) but
+              not after Netpbm 10.47 (June 2009).
+
+              pnmtopng: Fix buffer overrun or bogus "too many color/
+              transparency pairs" failure when requesting transparency.
+              Introduced after Netpbm 10.26 (January 2005) but not after
+              Netpbm 10.35 (August 2006).
+
+              pamtojpeg2k: Fix constant failure with message about file
+              close failing.
+
+              libnetpbm: pm_system: Fix bug: standard input feeder process
+              repositions unrelated files.  Always broken (pm_system was new
+              in Netpbm 10.13 (September 2003).
+
+              Pamtowinicon: Fix crash or incorrect output with PNG encoding
+              (result of pm_system bug above).  Always broken (Pamtowinicon
+              was new in Netpbm 10.63 (June 2013).
+
+              pnmtopng: Fix trivial memory leaks.
+
+              pnmtops: Fix incorrect output (arithmetic overflow) when
+              bounding box is exactly INT_MAX high or wide.  Always broken.
+              Pnmtops was in primordial Netpbm.
+
+              make package: fix no such file pcdovtoppm.exe failure on
+              Windows.
+
 20.12.28 BJH  Release 10.93.00
 
               pamarith: Add -equal.
@@ -12,18 +515,18 @@ CHANGE HISTORY
               it makes sense (all but -subtract, -difference, -compare,
               -divide, -shiftleft, and -shiftright).
 
-              pamrith: fail if operand images have different depth and not
+              pamarith: fail if operand images have different depth and not
               depth 1.
 
               ppmshift: Add -seed .
 
               pamaddnoise: Fix incorrect output for -type poisson.  Always
-              broken.  (pamaddnoise was new to Netpbm in Netpbm 10.29 (August
-              2005)).
+              broken.  (pamaddnoise's precursor pnmaddnoise was new to Netpbm
+              in Netpbm 10.29 (August 2005)).
 
               pamaddnoise: fix bug: garbage output with -type impulse.  Always
-              broken (pamaddnoise's precursors pnmaddnoise was new to Netpbm
-              in Netpbm 10.29 (August 2005).
+              broken (pamaddnoise's precursor pnmaddnoise was new to Netpbm
+              in Netpbm 10.29 (August 2005)).
 
 20.09.26 BJH  Release 10.92.00
 
@@ -215,7 +718,7 @@ CHANGE HISTORY
               won't accept it.
 
               Install: Use e.g. "10.90.00" for version in pkg-config and
-              config file, intead of e.g. "Netpbm 10.90.00".
+              config file, instead of e.g. "Netpbm 10.90.00".
 
 19.12.29 BJH  Release 10.89.00
 
@@ -231,7 +734,7 @@ CHANGE HISTORY
               than just pick one.
 
               pamrubber: Fix bug: -frame doesn't work.  Always broken.
-              (Pamrubber was new in Netpbm 10.54 (March 2011).
+              (Pamrubber was new in Netpbm 10.54 (March 2011)).
 
 19.09.28 BJH  Release 10.88.00
 
@@ -4970,6 +5473,9 @@ CHANGE HISTORY
               pnmpad: Add -width, -height, -halign, -valign options.
               Thanks M. van Beilen <mvb@iradis.org>.
 
+              pnmpad: Issue warning about old-style options (e.g. "-t50"
+              instead of "-t 50").
+
               ppmhist: remove 100,000 color limit.
 
               pnmnlfilt: works with multi-image streams.  Thanks 
@@ -5600,7 +6106,7 @@ CHANGE HISTORY
 
 00.07.12 BJH  Release 9.6
 
-              Add pnmtofiasco, fiascotopnm, psnpsnr.  Thanks to Ullrich
+              Add pnmtofiasco, fiascotopnm, pnmpnsr.  Thanks to Ullrich
               Hafner.
 
               Make Pnmcrop use a temporary file instead of huge amounts