* Wed Jul 29 2020 Kyrill Detinov <lazy.kent@opensuse.org>
- Update to 1.80.0.
* Improve bmp handling of 1 bpp images and sanity checking of params.
* Add function to display all rgb gamut colors.
* In Makefile.am, use option serial-tests to avoid races in
testing.
* Make md subdirectory and add ax_split_version.md there.
* Simple function for hue-invariant mapping
(pixMapWithInvariantHue).
* Fixed bug in limit of ptra size when used for sorting by bins.
* Use hashmap to count pixel colors in RGB(A) images.
* Convert hashtest program to regression test hash_reg.
* Convert croptest program to regression test crop_reg.
* New color segmentation by region growing (colorfill.c).
* New regression tests: colorfill_reg, circle_reg, ccbord_reg.
* Set maxima for all allocations for common leptonica data structures.
* Don't fail when downscaling 2, 4, 8, and 32 bpp images, even to one
pixel, invoking pixScaleSmooth().
* New functions that select 1 bpp components based on their area.
* Incremental addition to sorted array of numbers.
* New prog/fuzzing directory for oss-fuzz based fuzzing programs.
* Ue of pixcmapIsValid() with extra argument to determine validity
with the pix it is attached to.
* Use lept_stderr() in all programs in the prog directory.
* New program rasteroptest() for thorough testing of rasterop functions.
* Removed the pixSaveTiled*() functions.
* Stubbed pixDisplayWrite(). Last used in tesseract 3.04.01 (2/2016).
* Sat Jan 25 2020 Kyrill Detinov <lazy.kent@opensuse.org>
- Update to 1.79.0.
* Clean up auto-generation of files; removed 'register'.
* Some fixes for issues identified by fuzzer.
* New source files: checkerboard.c.
* New programs: replacebytes.c, webpanimio_reg.c, partifytest.c,
rectangle_reg.c, lowsat_reg.c, rotate_it.c, scale_it.c, dewarp_it.c,
pdfio1_reg.c, pdfio2_reg.c, checkerboard_reg.c, underlinetest.c.
* Convert to standard reg test: heap_reg.c, pixa1_reg.c,
smallpix_reg.c.
* Improve data checking when reading image file headers
(pnm, png, jpeg, tiff).
* Fix some bugs in pnm reading.
* Fix inconsistencies with the encoding type flags in pdf
writing.
* Allow tiff to write images with colormaps.
* Fix errors in PS code; made some functions static.
* Add code for animated webp (requires webp mux and demux
libraries).
* Add "partify" application for separating parts in a musical
score.
* Enable tif read/write of gray+alpha and rgba; filter out tiff
pixels that are not uint and compression by tile.
* Apply consistent formatting of static const variables.
* Add programs for scaling, rotation and deskew, named dewkew_it,
rotate_it and scale_it, for useful operations on arbitrary images.
* Convert pdfiotest program to two regression tests: pdfio1_reg
and pdfio2_reg.
* Remove all use of strncat; use stringCat().
* New functions from removing outliers in sequences of boxes.
* Generalize pixAverageInRect(): mask, region and range filters,
and subsampling. New pixAverageInRectRGB().
* Fix int overflow bug in pixMedianCut(); required new heap accessor.
* New pixMultiplyGray() allows pix to be multiplied by an array (or
another pix).
* Better routines for counting color.
* Lossless conversion for RGB to cmap with not more than 256 colors.
* New histo based global thresholding: pixThresholdByHisto().
* Allow most reg tests to run even if external libraries are not
available.
* New one-line gplot functions that return a pix.
* New application to find where corners meet in a checkerboard.
* Add utility functions for painting through mask in cmap pix,
creating a hit-miss sela from a color pix, equality of two pta.
* Proper handling of 1 bpp colormap tiffs: remove when reading,
preserve when writing.
* Deprecate three pixSaveTile*() functions; removed all calls to
these from the library and progs.
* Include auto_config.h explicitly in all src and prog files.
* Improve input data checking for bmp files.
* Tue Apr 02 2019 Kyrill Detinov <lazy.kent@opensuse.org>
- Update to 1.78.0.
* Various improvements in handling boxa sequences and transforms.
* New regression tests: boxa4_reg, string_reg.
* New function for copying a pix, filtered by a boxa.
* Modify histogram method for image comparison.
* More careful attention to invalid boxes in box geometry functions.
* Better string and array functions for search and replace.
* Convenience functions for generating simple masks.
* Allow pdf writing of jp2k images, in full generality.
* Allow writing compressed ps images for printing.
* Modified enum comments to include a suggested enum name.
* New program: imagetops.
* Mon Dec 17 2018 Karol Babioch <kbabioch@suse.de>
- Update to 1.77.0
* CVE-2018-7442: potential injection attack because '/' is allowed in gplot
rootdir. (bsc#1082748)
* CVE-2018-7186: number of characters not limited in fscanf or sscanf,
allowing possible attack with buffer overflow. (bsc#1081576)
* CVE-2018-3836: command injection vulnerability in gplotMakeOutput().
(bsc#1079358)
* CVE-2017-18196: duplicated path components. (bsc#1082843)
* CVE-2018-7441: hardcoded /tmp pathnames. (bsc#1082749)
* CVE-2018-7247: input 'rootname' can overflow a buffer. (bsc#1081631)
* CVE-2018-7440: command injection in gplotMakeOutput using $(command).
(bsc#1082747)
* Using a packed struct for bmp headers to avoid crash on some big-endians.
* Fixed a bug in the prototype parser for xtractprotos that was
surfaced by a typedef declaration for the bmp headers.
* Added some basic pixa functions for rotation and translation.
* Added an iterative method to find rectangular coverings for arbitrary
connected components.
* Enabled read/write for standard jpeg compressed tiff images.
* Enabled reading for the old (deprecated) jpeg-encoded tiffs.
* Fix range selectors for pixa, pixaa, boxa, boxaa, pta: Now, last = -1 goes
to the end.
* When reading tiff --> pix, insert IMAGEDESCRIPTION into text field.
* Fri May 04 2018 lazy.kent@opensuse.org
- Update to 1.76.0.
* Modify infrastructure to fix outstanding security issues.
By default, you can no longer create temp directories and temp
files whose names are known to the compiler. Also, prevent
"system" calls, which were used for image display and gnuplot.
* Replaced remaining sprintf() with snprintf() in prog tests.
* Added non-transcoding functions for generating pdf from jpeg
pixacomp.
* Add control of jpeg quality from pixWriteMem() and
pixWriteStream().
* Fixed getFilenamesInDirectory() to properly identify
directories.
* Prevent size overflow in calloc for kernel; cleaned it up fpix
and dpix.
* bmp reading now accepts negative height.
* Simplified splitimage2pdf; it no longer uses ps2pdf.
* Remove name-mangling WRITE_AS_NAMED compile option.
* Removed 2 deprecated write functions.
* Added these regression tests: locminmax_reg, speckle_reg,
watershed_reg.
Version: 1.75.3-bp150.2.4
* Mon Feb 19 2018 kbabioch@suse.com
- Update to 1.75.3:
* See changes in the version-notes.html file.
* Fixed a stack based buffer overflows in gplotRead() and ptaReadStream()
when parsing crafted files can lead to denial of service
(CVE-2018-7186 bsc#1081576)
* Fixed a buffer overflow in pixHtmlViewer in prog/htmlviewer.c
(unsanitized input (rootname)), which could potentially lead to
arbitrary code exeuction. (CVE-2018-7247 bsc#1081631)
* Sun Feb 04 2018 jengelh@inai.de
- Fix RPM groups.
* Fri Feb 02 2018 lazy.kent@opensuse.org
- Update to 1.75.1.
* See changes in the version-notes.html file.
- Add leptonica-license.txt, version-notes.html, moller52.jpg to
docs of the liblept package.
* Mon Dec 11 2017 lazy.kent@opensuse.org
- Update to 1.74.4.
* See changes in the version-notes.html file.
- Add BuildRequires: gnuplot.
* Fri Feb 17 2017 idonmez@suse.com
- Update to version 1.74.1
Version 1.74.1 4 Jan 17
* Configuration changes to support the patch number in the
version (major.minor.patch).
* Removed all remaining pixDisplayWrite() calls in prog/.
* Cleaned up and/or promoted about 15 programs to full regression
tests. There are now 95 tests in the regression set.
* Over half the initial coverity scan warnings have been removed.
Version 1.74.0 10 Dec 16
* Leptonica development was moved to github. The master is at:
github.com/danbloomberg/leptonica
* New modes for RGB --> gray conversion.
* New functions added for displaying a pix from a pixa.
* Split out sort/hash/set/map functions for dna, sarray and pta.
* More robust horizontal deskew on multi-column page images.
* Improve webpio_reg test.
* Remove X11 display for gplot; it is no longer supported.
* Remove most sleep calls, which were put in for gplot; no longer needed.
* Removed use of gthumb in library.
* Removed use of pixDisplayWrite() in the library; still in some progs.
* Improved test for endianness in makefile.static; no longer requires
any local files or building and running a program.
* Modified all files for doxygen output (spearheaded by Jurgen Buchmuller)
* Improved plotting of the boxes in a boxa.
* Replaced the slow point hash function with a simple fast one.
* Added pam (4 component) format writing to pnmio.c (Jurgen Buchmuller)
* Improved rendering of pixa in side/by/sides.
* Better utilities for pixa and pixacomp.
* Add read/write serialization functions from/to memory for all
the major data structures that do not already have them.
* More serialized boot recognizers stored as self-generating code.
* Cleaned up generating an adapted recognizer from the boot recognizer.
* Simplified temp file naming; removed most instances of named
temp files from non-debug code; use tmpfile() and a wrapper
l_makeTempFilename().
* Simplify and streamline multipage tiff reading (Jeff Breidenbach).
* Improvement of Otsu thresholding.
* Recognize outstanding contributors to leptonica over the years.
* New gif mem read/write interface that avoids writing a temp file,
contributed by Tobias Peirick.
* Use double arrays (dna) instead of float (numa) for set ops.
* Cleanup of gray quantization functions and tests.
* Refactored connectivity-conserving operations, to make them more useful.
* Provided methods for measuring and regularizing the width of strokes.
* Removed viewfiles.c from library; code is now in prog htmlviewer.c.
* Better debugging in page segmentation (pageseg.c)
* Deprecated the pixDisplayWrite*() debugging methods.
* Added about 15 regression tests to the framework in alltests_reg.c
* Final mods for compatibility with tesseract 4.00.
* Tue Feb 02 2016 lazy.kent@opensuse.org
- Update to 1.73.
* All lept_* functions have been rewritten to avoid path rewrites
for output to temp files, which were introduced in 1.72.
* Added grayscale histogram functions that can be used to compare
images.
* Added functions to determine if an image region has horizontal
text lines.
* Added functions to compare photo regions of images to determine
if they're essentially the same.
* Added red-black tree utility functions to implement maps and
sets.
* Improved security of tiff and gif reading, to prevent memory
corruption when reading bad data.
- Change major library version to 5.
- Change programs prefix from "leptonica" to "lept" (make the names
simpler to use).
* Sun Sep 27 2015 asterios.dramis@gmail.com
- Update to 1.72:
* Better handling of 1 bpp colormap read/write with png so that
they are losseless. The colormap is always removed on read and
the conversion is to the simplest non-cmapped pix that can
fully represent the input -- both with and without alpha.
* Fixed overflow bug in pixCorrelationBinary().
* Fixed orientation flags and handling of 16 bit RGB in tiff.
* Also new wrappers to TIFFClientOpen(), so we no longer go
through the file descriptor for memory operations.
* Improvements in the dewarp functions.
* New box sequence smoothings.
* New antialiased painting through mask; previously it was only
implemented for connected components in a mask.
* Better error handling and debug output with jpeg2000
read/write.
* Implemented base64 encoding. This allows binary data to be
represented as a C string that can be compiled. Used this in
bmf utility.
* Implemented automatic code generation for deserialization from
compiled strings (stringcode.*)
* Regression tests write to leptonica subdir of in windows; in
unix it is optional. This avoids spamming the directory.
* Added new colorspace conversions (XYZ, LAB).
* New source files: encoding.c, bmfdata.h, stringcode.c,
stringcode.h, bootnumgen.c.
* Removed source files: convolvelow.c, graymorphlow.c
* New programs: genfonts_reg, colorize_reg, texturefill_reg,
autogentest1, autogentest2.
* alltests_reg now has 66 tests.
- Added new build requirement openjpeg2-devel for openSUSE > 13.1.
* Sat Sep 27 2014 lazy.kent@opensuse.org
- Update to 1.71.
* This version supports tesseract 3.0.4. In particular, 3.0.4 has
automatic conversion of a set of scanned images, either in a
directory or coming directly from a scanner, into pdf with
injected text. This is something we've wanted to do for several
years!
* Improved jp2k header reading, including resolution.
* Removed src files: rotateorthlow.c, pdfio.c, pdfiostub.c.
* Renamed jp2kio.c, jp2kiostub.c ==> jp2kheader.c,
jp2kheaderstub.c. These header reading functions parse the jp2k
files, and don't require a jpeg2000 library.
* New jp2kio.c, jp2kiostub.c, that uses openjpeg-2.X to read and
write jp2k. We now support I/O from these formats: png, tiff,
jpeg, bmp, pnm, webp, gif and jp2k as well as writing to
PostScript and pdf.
* New pdfio1.c, pdfio1stub.c, pdfio2.c pdfio2stub.c, where we've
split functions into high and low level.
* Fixed memory bug in bilateral.c.
* Improved reading/write of binary data from file. For example,
l_binaryReadStream() can now be used to capture data piped in
via stdin.
* Font directory now arg passed in everywhere (not hardcoded).
* Don't write temporary files to /tmp; only to a small number of
subdirectories, to avoid spamming the /tmp directory. E.g., for
regression tests, the current output is now to /tmp/regout/.
* For jpeg reading modify pixReadJpeg() to take as a hint a bit
flag that allows extraction of only the luminance channel.
* Allow wrapping of pdf objects from png images without
transcoding.
* Better support for alpha on read/write with png, including 1
bpp with colormap, alpha (supported in png with transparency
array).
* Sun Jan 26 2014 lazy.kent@opensuse.org
- Update to 1.70.
* New bilateral filtering.
* New simple character recognition utility.
* Improved dewarping functionality, in model building and
rendering. More flexible use of ref models.
* Better and more consistent handling of alpha layer in RGBA,
though use of the spp field. Ability to handle more png files
with alpha, including palette with alpha.
* New fast converters from jpeg and jpeg2000 to pdf, without
transcoding.
* Made bmp reader (and pix reading in general) more robust; avoid
size overflow errors.
* New text labelling operations; depth conversion of a set of
images.
- Major version changed to 4.
- Rename liblept-devel to leptonica-devel.
- Drop liblept-1.69-no_return and leptonica-1.69-giflib5 patches
(fixed upstream).
- BuildRequires: pkgconfig(libwebp) >= 0.2.0
- Correct URL and a source URL.
* Tue Mar 12 2013 seife+obs@b1-systems.com
- fix build with giflib-5.x, leptonica-1.69-giflib5.patch
* Sat Aug 25 2012 lazy.kent@opensuse.org
- Add liblept3-1.69-no_return.patch: fix
no-return-in-nonvoid-function error. The bug reported upstream:
http://code.google.com/p/leptonica/issues/detail?id=69.
* Mon Aug 06 2012 lazy.kent@opensuse.org
- Update to 1.69.
* Major version changed to 3.
* New copyright (BSD, 2 clause) on src files.
* Fixed bug in PDF generation for large files, using a new double
array (dnabasic.c). Added several new modes for PDF generation
from sets of images.
* Dewarp based on image content now aligns to left and right
margins; works at book level; is more robust to bad disparity
models; version 2 serialization.
* Improved sorting efficiency of numas in cases where binning,
which is order N, makes sense.
* Fixed fpix serialization (now version 2).
* New version (5) of xtractprotos, allows putting prototypes
in-line in allheaders.h. Having them separately in
leptprotos.h still an option.
* New src files: boxfunc4.c coloring.c, dnabasic.c.
- Build requires libjpeg-devel.
* Fri Jun 22 2012 lazy.kent@opensuse.org
- Add "leptonica-" prefix to tools.
- Don't install test programs.
- Correct leptonica-tools summary and description.
* Tue May 22 2012 lazy.kent@opensuse.org
- Add libtool as buildrequire to avoid implicit dependency.
- Use make_install macro.
* Wed Sep 14 2011 lazy.kent@opensuse.org
- Dropped libgif patch (no need).
- Build against libwebp in openSUSE >= 12.1.
- Removed useless provides liblept-devel (no need anymore).
- Added license file to leptonica-tools package.
* Sun Jul 10 2011 lazy.kent@opensuse.org
- Don't build versioned devel and tools packages.
- Use full URL for Source.
- Corrected License tag.
* Thu Apr 14 2011 lazy.kent@opensuse.org
- Fix dependencies.
- Run autoreconf before configure.
* Tue Mar 15 2011 lazy.kent@opensuse.org
- Devel package renamed to liblept2.
* Tue Mar 15 2011 lazy.kent@opensuse.org
- Update to 1.68.
- Library major version changed to 2.
- Dropped no_return patch (fixed upstream).
- Added baselibs.conf as a source.
- libgif patch refresh.
* Fri Nov 12 2010 lazy.kent.suse@gmail.com
- Don't build static library.