comparison mupdf-source/thirdparty/lcms2/ChangeLog @ 2:b50eed0cc0ef upstream

ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4. The directory name has changed: no version number in the expanded directory now.
author Franz Glasner <fzglas.hg@dom66.de>
date Mon, 15 Sep 2025 11:43:07 +0200
parents
children
comparison
equal deleted inserted replaced
1:1d09e1dec1d9 2:b50eed0cc0ef
1 LCMS2MT ChangeLog:
2
3 ------------------------
4 2.14.art Featured release
5 ------------------------
6
7 Merge 2.14 with 2.10.art.
8
9 ------------------------
10 2.10.art Featured release
11 ------------------------
12
13 Merge 2.10 with 2.9.art.
14
15 ------------------------
16 2.9.art Featured release
17 ------------------------
18
19 Merge 2.9 with 2.8.art.
20
21 ------------------------
22 2.8.art Featured release
23 ------------------------
24
25 Forked LCMS. This is binary incompatible with normal LCMS2.
26 Removed 'pickled' contexts.
27 Added explicit passing of cmsContextIDs to all API functions.
28 Removed the 'THR' API functions as now unnecessary.
29 Changed LCMS_VERSION (and checking logic).
30 Extend T_EXTRA etc to allow for 63 extra channels.
31
32
33 Vanilla LCMS2 Changelog:
34 ~~~~~~~~~~~~~~~~~~~~~~~~
35
36 -----------------------
37 2.16 Featured release
38 -----------------------
39 New import .CUBE files as RGB devicelinks
40 New Read/Write MHC2 tags for Windows GPU access
41 New Support for UTF8 on multilocalized unicode functions
42 New Suppot for OkLab color space, built-in and formatter.
43 Improved floating point transforms float -> integer are now honored as float
44 Improved MSYS2, mingw is now supported
45 Improved proferred CMM, platform and creator now survives profile edition.
46 Fixed tificc now can deal with Lab TIFF
47 Fixed code can now be compiled by a C++17 compiler, "register" keywork use detected at compile time.
48 Fixed Reverted postcript creation that corrupted some interpreters.
49
50 -----------------------
51 2.15 Maintenance release
52 -----------------------
53 New MESON build system, many thanks to amispark and Lovell Fuller for bringing this.
54 Fixed a bug that caused memory corruption on colord
55 cmsReadRawTag can read portions of tags again. Removing this caused colord to segfault when dumping profiles
56 Added more checks based of fuzzer discoveries.
57 MSYS2 can now compile lcms2
58 Checked on Apple Silicon M1 and M2
59 Fixed a bug of fastfloat plug-in that affected Krita CMYK color selector
60
61 -----------------------
62 2.14 Featured release
63 -----------------------
64 lcms2 now implements ICC specification 4.4
65 New multi-threaded plug-in
66 several fixes to keep fuzzers happy
67 Remove check on DLL when CMS_NO_REGISTER_KEYWORD is used
68 Added more validation against broken profiles
69 Add more help to several tools
70
71 -----------------------
72 2.13.1 Hot fix
73 -----------------------
74 Fix for pure white going gray in grayscale transforms.
75
76 -----------------------
77 2.13 Featured release
78 -----------------------
79 Added support for premultiplied alpha
80 tifficc can now handle alpha channels, both unassociated and premultiplied
81 Better documentation
82 CGATS parser can now deal with very long strings
83 Added Projects for Visual Studio 2020
84 Travis CI discontinued, GitHub actions used instead
85 Added a very preliminar meson build script (thanks to xclaesse)
86 Added ARM64 target to visual studio 2019 (thanks to gaborkertesz-linaro)
87 Added thread safe code to get time
88 Added automatic linear space detection
89 Added cmsGetStageContextID function
90 Added cmsDetectRGBProfileGamma function
91 configure now accepts --without-fastfloat to turn plugin off
92 autogen.sh has now a --distclean toggle to get rid of all autotools generated files
93 Checked to work on STM32 Cortex-A, Cortex-M families
94 Bug & typos fixing (thanks to many reporters and contributors)
95
96 -----------------------
97 2.12 Maintenance release
98 -----------------------
99 Added new build-in sigmoidal tone curve
100 Added XCode 12 project
101 Added support for multichannel input up to 15 channels
102 Fix LUT8 write matrix
103 Fix version mess on 10/11
104 Fix tools & samples xgetopt
105 Fix warnings on different function pointers
106 Fix matlab MEX compilation
107 plugin: cleanup and better SSE detection
108 plugin: add lab to any on float
109 plugin: it can now be compiled as C++
110 recover PDF documentation, but try to keep it under a reasonable size.
111 Prevent a rare but possible out-of-bounds read in postscript generator
112 Remove unused variables
113
114 -----------------------
115 2.11 Maintenance release
116 -----------------------
117 Fixed __cpuid() on fast float plugin to allow gnu gcc
118 Fixed copy alpha bounds check
119 Fixed data race condition on contexts pool
120 Fixed LUT16 write matrix on multichannel V2 profiles
121
122 -----------------------
123 2.10 Featured release
124 -----------------------
125 Added a compilation toggle to remove "register" keyword in API.
126 Previously commercial, fast_float plug-in is now released as open source under GPL3 license.
127 MD5 functions are now accessible through plug-in API.
128 Added support for Visual Studio 2019
129 Bug fixing.
130
131
132 -----------------------
133 2.9 Maintenance release
134 -----------------------
135 Several fixes related with security, and therefore not detailed here.
136 C++ compiles now without warnings
137 Added OSX and clang in travis
138 Added a travis-ci test matrix for many compilers and OS. Thanks to Thomas Weber (debian) for this great improvement.
139 testbed can now work with dynamic versions of library
140 Fixed wrong planar formatters regarding linestride interpretation
141
142 -----------------------
143 2.8 Featured release
144 -----------------------
145
146 Changed ChangeLog direction
147 Fixed many typos in comments, thanks to Stefan Weil for doing that.
148 Fixed localization bug, added a new test case crayons.icc thanks to Richard Hughes for providing the profile.
149 Fixed a bug in optimizer that made some formats (i.e, bits planar) unavailable
150 Fixed misalignment problems on Alpha. The compiler does not align strings, and accessing begin of string as a uint16 makes code to fail.
151 Added some extra checks to the tools and examples.
152 Fixed a bug that prevented to read luminance tag
153 BIG amount of functionality contributed/Sponsored by Alien Skin Software: TransformStride, copyAlpha, performance plug-ins. Fixes some warnings as well.
154 Added an extra _ to _stdcall to make it more portable
155 Fixed a bug in transicc for named color profiles
156 Fixed several compiler warnings
157 Added support for Visual Studio 2015
158 Fixed for XCODE project
159
160 -----------------------
161 2.7 Maintenance release
162 -----------------------
163
164 Added a version retrieval function
165 Added an option in transicc for working in bounded mode
166 Fixed wrong handling of extra channels in some formatters.
167 Added a project for VS2013
168 Added license for iccjpeg.c
169 New project for mac
170 Added a global optimization that merges consecutive matrices in pipelines. Fixes loss of precision in some transforms
171 Added a flag to clip negative values in unbounded transforms (only gray, rgb, cmyk)
172 Move unused var suppresor before the `return` statements.
173 Remove dead code.
174 Add missing comma in CGATS parser
175 utils/jpgicc/iccjpeg.c: Fix check if unsigned variable 'total_length'… …
176 Some maintenance fixes
177 Remove unused vcproj files
178 Added a function to retrieve the iohandler of a given profile object
179 Added a safety check on named color lists
180 Fixed a macro clash on SNONE.
181 Fixed a possible segmentation fault in a non-happy path
182
183 -----------------------
184 2.6 Featured release
185 -----------------------
186
187 Added pthread dependency. From now lcms supports multithreading
188 Fix for delete tag memory corruption
189 Added directories for tiff, jpeg in configure script
190 New locking plug-in, from Artifex
191 Big revamp on Contexts, from Artifex
192 Fixed memory leaks on error handling
193 Changed endianness detection for PowerPC
194 Added a way to retrieve matrix shaper always, no matter LUT is present
195 Fixed a bug in PCS/Colorspace order when reading V2 Lab devicelinks
196 Fixed some indexing out of bounds in floating point interpolation
197 Fixed a double free in recovering from a previous error in default intent handler.
198
199 -----------------------
200 2.5 Maintenance release
201 -----------------------
202
203 Added some checks for non-happy path, mostly failing mallocs
204 Transform2Devicelink now keeps white point when guessing deviceclass is enabled
205 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
206 Added a simple project for cppcheck
207 Added support for VS2012
208 Remove spurious tabs added by git merge of pull request
209 Fixed a bug in parametric curves
210 Added some fixes from XhmikosR
211 Added TIFF Lab16 handling on tifficc
212 More changes from Artifex
213 Added identity curves support for write V2 LUT
214 Added a way to read the profile creator from header
215 Added a reference for Mac MLU tag
216 Fixed devicelink generation for 8 bits
217 Several minor issues found by cppcheck
218 Several improvements in cgats parser.
219 Fixed some bugs on floating point curves.
220 Fixed a bug on big endian platforms not supporting uint64 or long long.
221 Added error descriptions on cmsSmoothToneCurve
222 Added new cmsPlugInTHR() and fixed some race conditions (thanks to Artifex)
223 update black point detection algorithm to reflect ICC changes
224 Fixed some 64 bit warnings on size_t to uint32 conversions
225 Fixed a multithead bug on optimization (StageDEF)
226 RGB profiles using same tone curves for several channels are storing now only one copy of the curve (saves space)
227 User defined parametric curves can now be saved in ICC profiles.
228
229 --------------------
230 2.4 Featured release
231 --------------------
232
233 Added a check for maximum input channels
234 Fixed an uninitialized read on PatchLUT
235 Fixed a bug in XYZ floating point PCS
236 added half float variants (ABGR and so)
237 Added formatter resolution after xform optimization plugin
238 Fixed a bug in transicc when clot tables are present
239 Added a conditional compilatio flag for "half" support
240 Fixed a bug on named color profiles.
241 Fixed a typo on tificc and jpgicc names, thanks to Elle Stone for reporting.
242 Added half float support
243 Increased security checks, thanks to Mateusz Jurczyk, from Google.
244 Fixed a bug on IT8 reading of negative numbers.
245 Fixed a bug on ending zero when saving a IT8 to memory
246 Internal stage structs are now accessible through plug-in API
247 Added a new plug-in type
248 Added getPipelineContextID
249 Fixed a bug in pipeline duplication
250 gamma 1.0 can now operate in unbounded mode
251 Exposed internal overview table for tone curves
252 Added a new plug in entry for full transform
253 Added support for transforms on planar data with different stride
254 Added black point detection algorithm from Adobe paper
255 Fixed a bug in black preservation checking
256 Added performance improvements from several contributors, mostly Artifex
257 Fixed uint64 to work in systems without long long native type
258 Fixed a bug in the named color devicelink generation
259
260 -----------------------
261 2.3 Maintenance release
262 -----------------------
263
264 Added compatibility with Argyll's CGATS parser
265 Updated to ICC spec 4.3
266 Adding a memory alignment macro for CGATS parser
267 Fixed a bug on the range of data in transicc, when colorant tag is specified
268 Fixed Absolute colorimetric intent issues
269 Fixed encoding for floating point tags in Lab/XYZ
270 Fixed a 0 byte allocation issue in _cmsCreateSubAllocChunk
271
272 -----------------------
273 2.2 Maintenance release
274 -----------------------
275
276 Pascal unit now is supported by Free Pascal Compiler
277 Fixed a bug on ReadRAWtag
278 Added dictionary metatag support
279 Fixed a bug in black preservation and slightly non-monotonic curves
280 Added named color functionality
281 Fixed a bug that made crash black preservation on CMYK2CMYK devicelinks
282 Added functions to retrieve formatters from transforms
283 Profiles with weird curves are not prone to p`relinearization optimization.
284 changed memmove to memcpy in cache for xput improvement
285 Fixed GBD bug (out of bounds memory overwrite)
286 Fixed some potential issues as NULL dereferencing
287 Updated linkicc to 2.1, cleanup
288 Removed pthreads need
289 Fixed severa bugs in absolute colorimetric intent
290
291 -----------------------
292 2.1 Maintenance release
293 -----------------------
294
295 Added bound check in floating point interpolation
296 Fixed a bug on curve reversing when source curves have few points
297 Added Duotone support (Bilinear interpolation)
298 Fixed delphi interface
299 linkicc now stores the rendering intent in the profile header
300 Fixed several integer overflow and other integrity checks, thanks to Chris Evans
301 Fixed an issue on curve inversion
302 Fixed memory leaks on when recovering from errors
303 Fixed a bug in psid and profile sequence tags
304 Fixed a bug in device link creation on v4 profiles
305 Fixed a bug in tificc in floating point formats
306 Peliminary Delphi wrapper
307 Fixed some typos in error messages
308 Added cmsTagLinkedTo
309 Fixed VC2010, VC2008 projects
310 Added a check on jpgicc for NULL transforms
311 Added UTILS_UNUSED_PARAMETER for samples
312 Added cmsChangeBufferFormat for backwards compatibility
313 Fixed a bug on Lab + Alpha float formatters, added such predefined formatters as well
314 Fixed a bug on transicc that made profiles with output colorants info to malfunction
315 Fixed a bug that prevented linkicc to work
316 Fixed a bug on V2 CHAD construction, affects absolute colorimetric intent
317
318 -----------------------
319 2.0 Major version bump
320 -----------------------