1------------------------ 22.9.art Featured release 3------------------------ 4 5Merge 2.9 with 2.8.art. 6 7------------------------ 82.9 Maintenance release 9------------------------ 10 11No changelog provided. 12 13------------------------ 142.8.art Featured release 15------------------------ 16 17Forked LCMS. This is binary incompatible with normal LCMS2. 18Removed 'pickled' contexts. 19Added explicit passing of cmsContextIDs to all API functions. 20Removed the 'THR' API functions as now unnecessary. 21Changed LCMS_VERSION (and checking logic). 22Extend T_EXTRA etc to allow for 63 extra channels. 23 24----------------------- 252.9 Maintenance release 26----------------------- 27Several fixes related with security, and therefore not detailed here. 28C++ compiles now without warnings 29Added OSX and clang in travis 30Added a travis-ci test matrix for many compilers and OS. Thanks to Thomas Weber (debian) for this great improvement. 31testbed can now work with dynamic versions of library 32Fixed wrong planar formatters regarding linestride interpretation 33 34----------------------- 352.8 Featured release 36----------------------- 37 38Changed ChangeLog direction 39Fixed many typos in comments, thanks to Stefan Weil for doing that. 40Fixed localization bug, added a new test case crayons.icc thanks to Richard Hughes for providing the profile. 41Fixed a bug in optimizer that made some formats (i.e, bits planar) unavailable 42Fixed misalignment problems on Alpha. The compiler does not align strings, and accessing begin of string as a uint16 makes code to fail. 43Added some extra checks to the tools and examples. 44Fixed a bug that prevented to read luminance tag 45BIG amount of functionality contributed/Sponsored by Alien Skin Software: TransformStride, copyAlpha, performance plug-ins. Fixes some warnings as well. 46Added an extra _ to _stdcall to make it more portable 47Fixed a bug in transicc for named color profiles 48Fixed several compiler warnings 49Added support for Visual Studio 2015 50Fixed for XCODE project 51 52----------------------- 532.7 Maintenance release 54----------------------- 55 56Added a version retrieval function 57Added an option in transicc for working in bounded mode 58Fixed wrong handling of extra channels in some formatters. 59Added a project for VS2013 60Added license for iccjpeg.c 61New project for mac 62Added a global optimization that merges consecutive matrices in pipelines. Fixes loss of precision in some transforms 63Added a flag to clip negative values in unbounded transforms (only gray, rgb, cmyk) 64Move unused var suppresor before the `return` statements. 65Remove dead code. 66Add missing comma in CGATS parser 67utils/jpgicc/iccjpeg.c: Fix check if unsigned variable 'total_length'… … 68Some maintenance fixes 69Remove unused vcproj files 70Added a function to retrieve the iohandler of a given profile object 71Added a safety check on named color lists 72Fixed a macro clash on SNONE. 73Fixed a possible segmentation fault in a non-happy path 74 75----------------------- 762.6 Featured release 77----------------------- 78 79Added pthread dependency. From now lcms supports multithreading 80Fix for delete tag memory corruption 81Added directories for tiff, jpeg in configure script 82New locking plug-in, from Artifex 83Big revamp on Contexts, from Artifex 84Fixed memory leaks on error handling 85Changed endianness detection for PowerPC 86Added a way to retrieve matrix shaper always, no matter LUT is present 87Fixed a bug in PCS/Colorspace order when reading V2 Lab devicelinks 88Fixed some indexing out of bounds in floating point interpolation 89Fixed a double free in recovering from a previous error in default intent handler. 90 91----------------------- 922.5 Maintenance release 93----------------------- 94 95Added some checks for non-happy path, mostly failing mallocs 96Transform2Devicelink now keeps white point when guessing deviceclass is enabled 97Rendering intent used when creating the transform is now propagated to profile header in cmsTransform2Devicelink. This is because 7.2.15 in spec 4.3 98Added a simple project for cppcheck 99Added support for VS2012 100Remove spurious tabs added by git merge of pull request 101Fixed a bug in parametric curves 102Added some fixes from XhmikosR 103Added TIFF Lab16 handling on tifficc 104More changes from Artifex 105Added identity curves support for write V2 LUT 106Added a way to read the profile creator from header 107Added a reference for Mac MLU tag 108Fixed devicelink generation for 8 bits 109Several minor issues found by cppcheck 110Several improvements in cgats parser. 111Fixed some bugs on floating point curves. 112Fixed a bug on big endian platforms not supporting uint64 or long long. 113Added error descriptions on cmsSmoothToneCurve 114Added new cmsPlugInTHR() and fixed some race conditions (thanks to Artifex) 115update black point detection algorithm to reflect ICC changes 116Fixed some 64 bit warnings on size_t to uint32 conversions 117Fixed a multithead bug on optimization (StageDEF) 118RGB profiles using same tone curves for several channels are storing now only one copy of the curve (saves space) 119User defined parametric curves can now be saved in ICC profiles. 120 121-------------------- 1222.4 Featured release 123-------------------- 124 125Added a check for maximum input channels 126Fixed an uninitialized read on PatchLUT 127Fixed a bug in XYZ floating point PCS 128added half float variants (ABGR and so) 129Added formatter resolution after xform optimization plugin 130Fixed a bug in transicc when clot tables are present 131Added a conditional compilatio flag for "half" support 132Fixed a bug on named color profiles. 133Fixed a typo on tificc and jpgicc names, thanks to Elle Stone for reporting. 134Added half float support 135Increased security checks, thanks to Mateusz Jurczyk, from Google. 136Fixed a bug on IT8 reading of negative numbers. 137Fixed a bug on ending zero when saving a IT8 to memory 138Internal stage structs are now accessible through plug-in API 139Added a new plug-in type 140Added getPipelineContextID 141Fixed a bug in pipeline duplication 142gamma 1.0 can now operate in unbounded mode 143Exposed internal overview table for tone curves 144Added a new plug in entry for full transform 145Added support for transforms on planar data with different stride 146Added black point detection algorithm from Adobe paper 147Fixed a bug in black preservation checking 148Added performance improvements from several contributors, mostly Artifex 149Fixed uint64 to work in systems without long long native type 150Fixed a bug in the named color devicelink generation 151 152----------------------- 1532.3 Maintenance release 154----------------------- 155 156Added compatibility with Argyll's CGATS parser 157Updated to ICC spec 4.3 158Adding a memory alignment macro for CGATS parser 159Fixed a bug on the range of data in transicc, when colorant tag is specified 160Fixed Absolute colorimetric intent issues 161Fixed encoding for floating point tags in Lab/XYZ 162Fixed a 0 byte allocation issue in _cmsCreateSubAllocChunk 163 164----------------------- 1652.2 Maintenance release 166----------------------- 167 168Pascal unit now is supported by Free Pascal Compiler 169Fixed a bug on ReadRAWtag 170Added dictionary metatag support 171Fixed a bug in black preservation and slightly non-monotonic curves 172Added named color functionality 173Fixed a bug that made crash black preservation on CMYK2CMYK devicelinks 174Added functions to retrieve formatters from transforms 175Profiles with weird curves are not prone to p`relinearization optimization. 176changed memmove to memcpy in cache for xput improvement 177Fixed GBD bug (out of bounds memory overwrite) 178Fixed some potential issues as NULL dereferencing 179Updated linkicc to 2.1, cleanup 180Removed pthreads need 181Fixed severa bugs in absolute colorimetric intent 182 183----------------------- 1842.1 Maintenance release 185----------------------- 186 187Added bound check in floating point interpolation 188Fixed a bug on curve reversing when source curves have few points 189Added Duotone support (Bilinear interpolation) 190Fixed delphi interface 191linkicc now stores the rendering intent in the profile header 192Fixed several integer overflow and other integrity checks, thanks to Chris Evans 193Fixed an issue on curve inversion 194Fixed memory leaks on when recovering from errors 195Fixed a bug in psid and profile sequence tags 196Fixed a bug in device link creation on v4 profiles 197Fixed a bug in tificc in floating point formats 198Peliminary Delphi wrapper 199Fixed some typos in error messages 200Added cmsTagLinkedTo 201Fixed VC2010, VC2008 projects 202Added a check on jpgicc for NULL transforms 203Added UTILS_UNUSED_PARAMETER for samples 204Added cmsChangeBufferFormat for backwards compatibility 205Fixed a bug on Lab + Alpha float formatters, added such predefined formatters as well 206Fixed a bug on transicc that made profiles with output colorants info to malfunction 207Fixed a bug that prevented linkicc to work 208Fixed a bug on V2 CHAD construction, affects absolute colorimetric intent 209 210----------------------- 2112.0 Major version bump 212----------------------- 213