1Changes for libdmtx
2-----------------------------------------------------------------
3
4version 0.7.5 [March 2018]
5  https://github.com/dmtx/libdmtx/compare/v0.7.4..v0.7.5
6  Please, use similar way to check changelog for the next versions.
7
8version 0.7.4 [June 2011]
9  library: Relicensed to use Simplified BSD with waiver option
10  library: Added new error codes and messages in dmtxencode.c
11  library: Added DmtxByteList struct and supporting functions
12  library: Changed file header with updated text
13  library: Fixed ECC bug for 144x144 case (thanks Huver!)
14  library: New Reed Solomon implementation
15  library: New repository structure: libdmtx, dmtx-utils, and dmtx-wrappers
16  testing: Added test in compare_generated.sh to create directory if needed
17  testing: Fix compare_generated.sh to prevent false negatives
18  encoder: Review CHK macro strategy
19  encoder: New encoding implementation
20  encoder: Added Base 256 "encode to end of symbol" single byte header
21  encoder: Check ProcessEndOfSymbolTriplet() for same problem fixed in Edifact
22  encoder: Clean up PushCTXValues() passFail handling
23  encoder: Fixed all encoding bugs reported by compare_generated.sh
24  encoder: Fixed encoding bug affecting certain end-of-symbol conditions
25  encoder: Replaced "twothirdsbits" encoder concept (major source of headaches)
26  encoder: Track intermediate states in "optimize best" to handle all possibilities
27  decoder: Use new Edifact decode function that doesn't assume full triplet
28
29version 0.7.2 [September 2009]
30  Added initial macro decoding support (thanks Marlon!)
31  Fast quad fill for dmtxDecodeMatrixRegion() (thanks Mackenzie!)
32  Fixed capacity bug with rectangle requests
33  New Vala wrapper (thanks Evan!)
34  Wrapper integration in build system (thanks Evan!)
35  Add libdmtx-X.X.X.zip as source package option
36  Add libdmtx-win32-X.X.X.zip as binary package option
37  Add "project" directory to EXTRA_DIST in Makefile.am
38
39version 0.7.0 [March 2009]
40  New Java wrapper (thanks Pete and Dikran!)
41  New .NET wrapper (thanks Vali and Joe!)
42  Added solution and project files for MS Visual Studio 9.0
43  Reader support for FNC1 and upper shift (thanks Robin!)
44  Support for byte-padded rows through dmtxImageSetProp()
45  New no-copy image handling with configurable pixel packing
46  Moved image scaling factors to DmtxDecode
47  Moved scan cache from DmtxImage to DmtxDecode
48  Eliminate types DmtxRgb, DmtxColor3, and DmtxGradient
49  API updates for consistent naming and conventions
50  Added dmtxEncodeSetProp() and dmtxEncodeGetProp()
51  Option to print extended ASCII as UTF-8 (thanks Robin!)
52  Fixed diagnostic image output
53  Fixed misrepresented capacity in verbose mode
54  True vector SVG output bypassing ImageMagick (thanks Richard!)
55  Use ImageMagick to write images in major raster formats
56  Fixed several bugs and compiler warnings
57
58version 0.6.0 [November 2008]
59  dmtxread now scans all major image formats [Olivier]
60  New encoding/decoding Ruby wrapper [Romain]
61  Reduced memory footprint
62  Will scan multiple barcodes per image
63  Various platform-specific improvements
64  Initial work preparing for custom pixel packing in future
65  Begin static analysis cleanup with splint
66  New --disable-dmtxread and --disable-dmtxwrite [Romain]
67  Ability to specify max/min expected barcode sizes
68  New edge neighbor tracking (Hough + 2 way edge cache)
69  Info cache to track scan progress and avoid rescanning pixels
70  Major reduction in floating point operations
71  New informative return codes (found, not found, error)
72  Read input from STDIN
73  Diagnostic images display trail left by scanning logic
74  Option to write output to STDOUT [Olivier]
75  PHP wrapper now compiles with recent libdmtx
76  Dedicated README.xxx instructions for specific platforms
77
78version 0.5.2 [September 2008]
79  Move SetRangeLimit and SetScanRegion into library
80  Replace DMTXUTIL_SUCCESS/ERROR with DMTX_SUCCESS/FAILURE
81  Add edge threshold filtering
82  Add encoding support for 144x144 barcodes
83  Fixed encoding case when message starts with two digits
84  Fixed bug in range limit option
85  Add dynamic image shrinking (pixel skipping)
86  Add step-by-step diagnostic image dump (debug build)
87  Fixed bug in minimum scan gap setting
88  Removed y-flip from internal pixel storage
89  Added strict border tests to eliminate false positives
90  Added squareness deviation filter
91  Implement simplified Hough transform for locating first edge
92  Several behind-the-scenes performance enhancements
93  Python wrapper update; 15x faster (thanks Jonathan!)
94  New PHP wrapper code added
95  Various improvements when building for OS X and FreeBSD
96
97version 0.5.1 [July 2008]
98  Fixed Extended ASCII encoding bug
99  Fixed error correction bug related to multiple interleaved blocks
100  Added timeout condition for region detection
101  Allow partial and complete disabling of error correction
102  Replaced DmtxPixel struct with DmtxRgb for safe pixel copies
103  Tighter integration with libfec
104  Conditional build logic for libtiff
105  Added placeholder for new utility, dmtxquery
106  Added unit test program for testing libdmtx internals
107  Include local copies of getopt1.c, getopt.c, and getopt.h
108  Various things to help compiling in MS VC++
109  Lots of holes filled in comments (Doxygen)
110  Fixed experimental Data Mosaic decoding
111  New Cocoa/iPhone wrapper (thanks Stefan!)
112
113version 0.5 [April 2008]
114  Error correction using libfec (thanks Florian!)
115  Rework encoding and decoding API for consistency and intuitiveness
116  Handle region detection and region decoding as separate tasks
117  Pass found regions back to calling app before attempting decode
118  Image mask approach (for performance and multi-barcode scans)
119  Fix TestForEndOfSymbolEdifact() to handle special cases correctly
120  Roll scan pattern into core library (inward breadth-first cross)
121  Replace dmtxScanLine() with dmtxScanPixel()
122  Implement 4-direction weighted module decisions (eliminates thresholds)
123  Add ability to scan portion of image
124  Add --diagnose option that dumps image with embedded scan infomation
125  Added Z rotation angle (in degrees) to verbose output
126  Move ASCII and codeword output to separate --preview option
127  Added -R option for setting image print resolution in dpi (PNG only)
128  Remove gltest and simpletest from default build target
129  Update Subversion to be keyword friendly ($Id$)
130  Updated documentation to reflect API and option changes
131
132version 0.4 [December 2007]
133  Remove arbitrary sz scaling (100.0) since it doesn't matter anyway
134  Fix 4 bottom-right modules in sizes where they are not used (thanks Matthias R.!)
135  Replace callback references with preprocessor macros
136  Implement remaining encodation schemes for encoding (X12, Base 256, etc...)
137  Implement remaining encodation schemes for decoding (X12, Base 256, etc...)
138  Implement --auto-best option for best possible encoding efficiency
139  Implement multi-region symbols
140  Read and write rectangle barcodes
141  Use GNU autotools (autoconf, automake, libtool)
142  New region detection overhaul
143  Include initial version of Python bindings from pydmtx project (thanks Dan!)
144  Add decoding functionality through Python
145  Add marathon images to project (thanks john@sportcam.net!)
146  Fix dmtxread crash when same barcode is found more than 16 times
147  Verbose messages describing traits of detected barcodes
148  --codewords option to print codewords instead of decoded message
149  --newline option to insert newline character at end of output
150  Additional output formats (PNG, ASCII, codewords)
151  'make test' executes regression tests for encodation
152
153version 0.3 [October 2006]
154  Several high-level changes: build process, naming consistency, file layout
155  Added new automatic style checks in script directory ("make style")
156  Implemented remaining encodation schemes for decode (X12, Base 256, etc...)
157  Fixed instability/regressions that were introduced in v0.2 release
158  Color sampling now averaged from multiple pixel locations
159  Size calibration accuracy improved with new approach
160  dmtxread: increased default scanline count, added multi-page TIFF format
161  dmtxwrite: bug fixes, implemented -o option
162  Improved documentation: deps listed in INSTALL, new man page for dmtxwrite
163
164version 0.2 [June 2006]
165  Cleaned up program structure surrounding decoding process
166  Improved API for real-world use (no longer just dumping results to STDOUT)
167  Added "dmtxread" command line utility
168  Added "dmtxwrite" command line utility
169  Implemented Reed-Solomon error detection
170  Created "simpletest.c" for full circle processing test
171  Now using libpng(3) in library to read Data Matrix images
172  Improved documentation (somewhat)
173
174version 0.1 [April 2006]
175  Initial release
176