We have tagged v2.4.5.0 as the latest production release and moved the
"release" branch marker to that point.  This is guaranteed to be API,
ABI, and link back-compatible with prior 2.4 releases. Release notes
are below.

This looks like a heftier-than-usual patch release, and it is -- because it
contains not only improvements and fixes implemented in the last month, but
also quite a few items that were implemented during the beta and release
candidate periods and held back until after the release (in order not to
disrupt the stability of the beta testing). Future 2.4.x monthly patch
releases will tend to be much smaller.


Release 2.4.5 (1 Nov 2022) -- compared to 2.4.4.2
---------------------------------------------------
* oiiotool: new commands `--iccread`  reads a named file and adds its contents
  as the ICCProfile metadata of the top image, `--iccwrite` saves the
  ICCProfile metadata of the top file to a named file. #3550
* TIFF, JPEG, JPEG-2000, PNG, and PSD files containing ICC profiles now
  extract and report extra metadata related to aspects of those profiles.
  #3554
* Python: support `int8[]` metadata and retrieving the `ICCPorofile` metadata.
  #3556
* oiiotool: New expression syntax for retrieving metadata `{TOP[foo]}` is
  similar to the existing `{TOP.foo}`, if there is no `foo` metadata found,
  the former evaluates to an empty string, whereas the latter is an error.
  #3619
* Strutil: new `utf16_to_utf8(const std::u16string&)` and
  `Strutil::utf8_to_utf16wstring()`. #3553
* ustring: make `std::hash` work for ustring, add `operator<` for ustringhash,
  add `from_hash()` to ustringhash, make ustringhash `==` and `!=` be
  constexpr for C++17 and beyond. #3577  Custom fmt formatter for ustringhash
  that prints the string rather than the hash. #3614
* Build: the version number is now a CMake cache variable that can be
  overridden (caveat emptor). #3549
* Build/security: New CMake cache variable `FORTIFY_SOURCE`, if enabled,
  builds with the specified gcc `_FORTIFY_SOURCE` option defined. This may be
  desirable for people deploying OIIO in security-sensitive environments.
  #3575
* CI: testing now includes using undefined behavior sanitizer. #3565
* Windows: protect against OpenEXR thread deadlock on shutdown. #3582
* Windows: Work around a static destruction order issue. #3591
* Windows: define `NOGDI` to keep the inclusion of windows.h from adding as
  many unneeded symbols. #3596
* MinGW: fix incorrect symbol visibility issue for ImageBuf iterators. #3578
* ARM: improve SIMD operations for ARM NEON. #3599
* Docs: New RELEASING.md documents our releasing procedures. #3564 #3580
* Docs: Better Windows build instructions in INSTALL.md. #3602
* Fix missing OIIO::getattribute support for `limits:channels` and
  `limits:imagesize_MB`. #3617
* BMP: fix reading 16bpp images. #3592
* BMP: protect against corrupt pixel coordinates. (TALOS-2022-1630,
  CVE-2022-38143) #3620
* DDS: fix alpha/luminance files, better testing. #3581
* DDS: optimize loading of compressed images, improves 3-5x. #3583 #3584
* DDS: Fix crashes for cubemap files when a cube face was not present, and
  check for invalid bits per pixel. (TALOS-2022-1634, CVE-2022-41838)
  (TALOS-2022-1635, CVE-2022-41999) #3625
* HDR: fix a 8x (!) read performance regression for HDR files that was
  introduced in OIIO in 2.4. #3588  On top of that, speed up by another 4x
  beyond what we ever did before by speeding up the RGBE->float conversion.
  #3590
* PNG: fix memory leaks when errors take an early exit. #3543 #3544
* PSD: fix a PSD read error on ARM architecture. #3589
* PSD: protect against corrupted embedded thumbnails. (TALOS-2022-1626,
  CVE-2022-41794) #3629
* RAW: additional color metadata is now recognized: `pre_mul`, `cam_mul`,
  `cam_xyz`, `rgb_cam`. #3561 #3569 #3572
* RLA: fix potential buffer overrun. (TALOS-2022-1629, CVE-2022-36354) #3624
* Targa: string overflow safety. (TALOS-2022-1628, CVE-2022-4198) #3622
* TIFF/JPEG/PSD: Fix EXIF bugs where corrupted exif blocks could overrun
  memory. (TALOS-2022-1626, CVE-2022-41794) (TALOS-2022-1632, CVE-2022-41684)
  #3627
* TIFF: guard against corrupt files with buffer overflows. (TALOS-2022-1627,
  CVE-2022-41977) #3628
* TIFF: guard against buffer overflow for certain CMYK files.
  (TALOS-2022-1633, CVE-2022-41639) (TALOS-2022-1643, CVE-2022-41988) #3632


--
Larry Gritz
l...@larrygritz.com





_______________________________________________
Oiio-dev mailing list
Oiio-dev@lists.openimageio.org
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to