123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288 |
- -----------------------
- 2.16 Featured release
- -----------------------
- New import .CUBE files as RGB devicelinks
- New Read/Write MHC2 tags for Windows GPU access
- New Support for UTF8 on multilocalized unicode functions
- New Suppot for OkLab color space, built-in and formatter.
- Improved floating point transforms float -> integer are now honored as float
- Improved MSYS2, mingw is now supported
- Improved proferred CMM, platform and creator now survives profile edition.
- Fixed tificc now can deal with Lab TIFF
- Fixed code can now be compiled by a C++17 compiler, "register" keywork use detected at compile time.
- Fixed Reverted postcript creation that corrupted some interpreters.
- -----------------------
- 2.15 Maintenance release
- -----------------------
- New MESON build system, many thanks to amispark and Lovell Fuller for bringing this.
- Fixed a bug that caused memory corruption on colord
- cmsReadRawTag can read portions of tags again. Removing this caused colord to segfault when dumping profiles
- Added more checks based of fuzzer discoveries.
- MSYS2 can now compile lcms2
- Checked on Apple Silicon M1 and M2
- Fixed a bug of fastfloat plug-in that affected Krita CMYK color selector
- -----------------------
- 2.14 Featured release
- -----------------------
- lcms2 now implements ICC specification 4.4
- New multi-threaded plug-in
- several fixes to keep fuzzers happy
- Remove check on DLL when CMS_NO_REGISTER_KEYWORD is used
- Added more validation against broken profiles
- Add more help to several tools
- -----------------------
- 2.13.1 Hot fix
- -----------------------
- Fix for pure white going gray in grayscale transforms.
- -----------------------
- 2.13 Featured release
- -----------------------
- Added support for premultiplied alpha
- tifficc can now handle alpha channels, both unassociated and premultiplied
- Better documentation
- CGATS parser can now deal with very long strings
- Added Projects for Visual Studio 2020
- Travis CI discontinued, GitHub actions used instead
- Added a very preliminar meson build script (thanks to xclaesse)
- Added ARM64 target to visual studio 2019 (thanks to gaborkertesz-linaro)
- Added thread safe code to get time
- Added automatic linear space detection
- Added cmsGetStageContextID function
- Added cmsDetectRGBProfileGamma function
- configure now accepts --without-fastfloat to turn plugin off
- autogen.sh has now a --distclean toggle to get rid of all autotools generated files
- Checked to work on STM32 Cortex-A, Cortex-M families
- Bug & typos fixing (thanks to many reporters and contributors)
- -----------------------
- 2.12 Maintenance release
- -----------------------
- Added new build-in sigmoidal tone curve
- Added XCode 12 project
- Added support for multichannel input up to 15 channels
- Fix LUT8 write matrix
- Fix version mess on 10/11
- Fix tools & samples xgetopt
- Fix warnings on different function pointers
- Fix matlab MEX compilation
- plugin: cleanup and better SSE detection
- plugin: add lab to any on float
- plugin: it can now be compiled as C++
- recover PDF documentation, but try to keep it under a reasonable size.
- Prevent a rare but possible out-of-bounds read in postscript generator
- Remove unused variables
- -----------------------
- 2.11 Maintenance release
- -----------------------
- Fixed __cpuid() on fast float plugin to allow gnu gcc
- Fixed copy alpha bounds check
- Fixed data race condition on contexts pool
- Fixed LUT16 write matrix on multichannel V2 profiles
- -----------------------
- 2.10 Featured release
- -----------------------
- Added a compilation toggle to remove "register" keyword in API.
- Previously commercial, fast_float plug-in is now released as open source under GPL3 license.
- MD5 functions are now accessible through plug-in API.
- Added support for Visual Studio 2019
- Bug fixing.
- -----------------------
- 2.9 Maintenance release
- -----------------------
- Several fixes related with security, and therefore not detailed here.
- C++ compiles now without warnings
- Added OSX and clang in travis
- Added a travis-ci test matrix for many compilers and OS. Thanks to Thomas Weber (debian) for this great improvement.
- testbed can now work with dynamic versions of library
- Fixed wrong planar formatters regarding linestride interpretation
- -----------------------
- 2.8 Featured release
- -----------------------
- Changed ChangeLog direction
- Fixed many typos in comments, thanks to Stefan Weil for doing that.
- Fixed localization bug, added a new test case crayons.icc thanks to Richard Hughes for providing the profile.
- Fixed a bug in optimizer that made some formats (i.e, bits planar) unavailable
- Fixed misalignment problems on Alpha. The compiler does not align strings, and accessing begin of string as a uint16 makes code to fail.
- Added some extra checks to the tools and examples.
- Fixed a bug that prevented to read luminance tag
- BIG amount of functionality contributed/Sponsored by Alien Skin Software: TransformStride, copyAlpha, performance plug-ins. Fixes some warnings as well.
- Added an extra _ to _stdcall to make it more portable
- Fixed a bug in transicc for named color profiles
- Fixed several compiler warnings
- Added support for Visual Studio 2015
- Fixed for XCODE project
- -----------------------
- 2.7 Maintenance release
- -----------------------
- Added a version retrieval function
- Added an option in transicc for working in bounded mode
- Fixed wrong handling of extra channels in some formatters.
- Added a project for VS2013
- Added license for iccjpeg.c
- New project for mac
- Added a global optimization that merges consecutive matrices in pipelines. Fixes loss of precision in some transforms
- Added a flag to clip negative values in unbounded transforms (only gray, rgb, cmyk)
- Move unused var suppresor before the `return` statements.
- Remove dead code.
- Add missing comma in CGATS parser
- utils/jpgicc/iccjpeg.c: Fix check if unsigned variable 'total_length'… …
- Some maintenance fixes
- Remove unused vcproj files
- Added a function to retrieve the iohandler of a given profile object
- Added a safety check on named color lists
- Fixed a macro clash on SNONE.
- Fixed a possible segmentation fault in a non-happy path
- -----------------------
- 2.6 Featured release
- -----------------------
- Added pthread dependency. From now lcms supports multithreading
- Fix for delete tag memory corruption
- Added directories for tiff, jpeg in configure script
- New locking plug-in, from Artifex
- Big revamp on Contexts, from Artifex
- Fixed memory leaks on error handling
- Changed endianness detection for PowerPC
- Added a way to retrieve matrix shaper always, no matter LUT is present
- Fixed a bug in PCS/Colorspace order when reading V2 Lab devicelinks
- Fixed some indexing out of bounds in floating point interpolation
- Fixed a double free in recovering from a previous error in default intent handler.
- -----------------------
- 2.5 Maintenance release
- -----------------------
- Added some checks for non-happy path, mostly failing mallocs
- Transform2Devicelink now keeps white point when guessing deviceclass is enabled
- Rendering intent used when creating the transform is now propagated to profile header in cmsTransform2Devicelink. This is because 7.2.15 in spec 4.3
- Added a simple project for cppcheck
- Added support for VS2012
- Remove spurious tabs added by git merge of pull request
- Fixed a bug in parametric curves
- Added some fixes from XhmikosR
- Added TIFF Lab16 handling on tifficc
- More changes from Artifex
- Added identity curves support for write V2 LUT
- Added a way to read the profile creator from header
- Added a reference for Mac MLU tag
- Fixed devicelink generation for 8 bits
- Several minor issues found by cppcheck
- Several improvements in cgats parser.
- Fixed some bugs on floating point curves.
- Fixed a bug on big endian platforms not supporting uint64 or long long.
- Added error descriptions on cmsSmoothToneCurve
- Added new cmsPlugInTHR() and fixed some race conditions (thanks to Artifex)
- update black point detection algorithm to reflect ICC changes
- Fixed some 64 bit warnings on size_t to uint32 conversions
- Fixed a multithead bug on optimization (StageDEF)
- RGB profiles using same tone curves for several channels are storing now only one copy of the curve (saves space)
- User defined parametric curves can now be saved in ICC profiles.
- --------------------
- 2.4 Featured release
- --------------------
- Added a check for maximum input channels
- Fixed an uninitialized read on PatchLUT
- Fixed a bug in XYZ floating point PCS
- added half float variants (ABGR and so)
- Added formatter resolution after xform optimization plugin
- Fixed a bug in transicc when clot tables are present
- Added a conditional compilatio flag for "half" support
- Fixed a bug on named color profiles.
- Fixed a typo on tificc and jpgicc names, thanks to Elle Stone for reporting.
- Added half float support
- Increased security checks, thanks to Mateusz Jurczyk, from Google.
- Fixed a bug on IT8 reading of negative numbers.
- Fixed a bug on ending zero when saving a IT8 to memory
- Internal stage structs are now accessible through plug-in API
- Added a new plug-in type
- Added getPipelineContextID
- Fixed a bug in pipeline duplication
- gamma 1.0 can now operate in unbounded mode
- Exposed internal overview table for tone curves
- Added a new plug in entry for full transform
- Added support for transforms on planar data with different stride
- Added black point detection algorithm from Adobe paper
- Fixed a bug in black preservation checking
- Added performance improvements from several contributors, mostly Artifex
- Fixed uint64 to work in systems without long long native type
- Fixed a bug in the named color devicelink generation
- -----------------------
- 2.3 Maintenance release
- -----------------------
- Added compatibility with Argyll's CGATS parser
- Updated to ICC spec 4.3
- Adding a memory alignment macro for CGATS parser
- Fixed a bug on the range of data in transicc, when colorant tag is specified
- Fixed Absolute colorimetric intent issues
- Fixed encoding for floating point tags in Lab/XYZ
- Fixed a 0 byte allocation issue in _cmsCreateSubAllocChunk
- -----------------------
- 2.2 Maintenance release
- -----------------------
- Pascal unit now is supported by Free Pascal Compiler
- Fixed a bug on ReadRAWtag
- Added dictionary metatag support
- Fixed a bug in black preservation and slightly non-monotonic curves
- Added named color functionality
- Fixed a bug that made crash black preservation on CMYK2CMYK devicelinks
- Added functions to retrieve formatters from transforms
- Profiles with weird curves are not prone to p`relinearization optimization.
- changed memmove to memcpy in cache for xput improvement
- Fixed GBD bug (out of bounds memory overwrite)
- Fixed some potential issues as NULL dereferencing
- Updated linkicc to 2.1, cleanup
- Removed pthreads need
- Fixed severa bugs in absolute colorimetric intent
- -----------------------
- 2.1 Maintenance release
- -----------------------
- Added bound check in floating point interpolation
- Fixed a bug on curve reversing when source curves have few points
- Added Duotone support (Bilinear interpolation)
- Fixed delphi interface
- linkicc now stores the rendering intent in the profile header
- Fixed several integer overflow and other integrity checks, thanks to Chris Evans
- Fixed an issue on curve inversion
- Fixed memory leaks on when recovering from errors
- Fixed a bug in psid and profile sequence tags
- Fixed a bug in device link creation on v4 profiles
- Fixed a bug in tificc in floating point formats
- Peliminary Delphi wrapper
- Fixed some typos in error messages
- Added cmsTagLinkedTo
- Fixed VC2010, VC2008 projects
- Added a check on jpgicc for NULL transforms
- Added UTILS_UNUSED_PARAMETER for samples
- Added cmsChangeBufferFormat for backwards compatibility
- Fixed a bug on Lab + Alpha float formatters, added such predefined formatters as well
- Fixed a bug on transicc that made profiles with output colorants info to malfunction
- Fixed a bug that prevented linkicc to work
- Fixed a bug on V2 CHAD construction, affects absolute colorimetric intent
- -----------------------
- 2.0 Major version bump
- -----------------------
|