Skip to content

Releases: AcademySoftwareFoundation/OpenImageIO

v3.1.12.0

01 Apr 07:02
v3.1.12.0

Choose a tag to compare

Release 3.1.12.0 (Apr 1, 2026) -- compared to 3.1.11.0

  • oiiotool: Better type understanding with -i:ch= and other cleanup #5056
  • texture: Fix texture overblur with st-blur parameters #5071 #5080 (by Pascal Lecocq) (3.1.12.0, 3.0.17.0)
  • IBA: Handle offset data windows in fillholes_pushpull #5105 (3.1.12.0, 3.0.17.0)
  • ImageInput: check_open fixes and new validity checks #5087 (3.1.12.0, 3.0.17.0)
  • bmp: Use check_open to guard against corrupt resolutions #5086 (3.1.12.0, 3.0.17.0)
  • heif: Fix invalid read writing 8-bit images with dimensions not a multiple of 64 #5095 (by Brecht Van Lommel)
  • ico: Various validity checks and error handling for corruptions #5088 (3.1.12.0, 3.0.17.0)
  • jpeg: Improved safety and error reporting for jpeg and iptc #5081
  • jpeg2000: Suppress leak when reading with OpenJPH #5098
  • psd: Fixes against corrupt files with better validation #5089 (3.1.12.0, 3.0.17.0)
  • rla: Lots of additional validity checking and safety #5094 (3.1.12.0, 3.0.17.0)
  • tiff: Support GPS fields, and other metadata enhancements #5050
  • tiff: Fix buffer overrun and improve error reporting #5082, fix wrong number of values passed to invert_photometric #5083, check for invalid bit depth in palette images #5091
  • ImageSpec: metadata_val improved safety #5096 (3.1.12.0, 3.0.17.0)
  • fix: Fix UB-sanitizer warning about alignment #5097
  • fix: Catch exceptions in print-uncaught-messages destructor #5103
  • fix: Enhanced exception safety for our use of OpenColorIO #5114
  • fix: Fix possible fmt exceptions where we might have passed null string #5115
  • build: Test building with clang 22.1, fix warnings uncovered #5067
  • build: Improve security by pinning auto-build dependencies by hash #5076
  • build: Include idiff in the python wheels we build #5104 (3.1.12.0, 3.0.17.0)
  • build(pybind11): Address new pybind11 float/int auto-conversion behavior #5058
  • build(win): Embed manifest in OIIO executables to enable long path handling #5066 (by Nathan Rusch)
  • ci: Add CI test for MSVS 2026 #5060 (3.1.12.0, 3.0.17.0)
  • ci: For security, replace workflow substitutions with safer env substitutions #5070
  • ci: Speed up slow benchmarks for debug and sanitizer CI tests #5077
  • ci: On Mac Intel CI variant, don't install openvdb, for speed #5065 (3.1.12.0, 3.0.17.0)
  • ci: Bump GitHub Actions to latest versions #5078 #5110 #5119
  • ci: Fix broken Mac CI and wheel building by specifying full compiler paths #5100 #5101 (3.1.12.0, 3.0.17.0)
  • ci: Update certificates to be able to install icc #5122 (3.1.12.0, 3.0.17.0)
  • ci: Turn off nightly workflows for user forks #5042
  • tests: New ref outputs for tiff-misc, heif no-avif, and ffmpeg 8.1 cases #5075 #5079 #5099 #5112
  • docs: Update description for dwaCompressionLevel #5074 (by Aamir Raza)
  • docs: Fix formatting examples for version macros #5073
  • docs: Keep TextureSystem docs in sync with ImageCache #5085 (3.1.12.0, 3.0.17.0)
  • docs: Fix typos and incorrect attribute name in a comment #5093 (3.1.12.0, 3.0.17.0)
  • docs: Fix misstatement about oiiotool --if #5102 (3.1.12.0, 3.0.17.0)
  • admin: Draft policy on use of AI coding assistants #5072 (3.1.12.0, 3.0.17.0)
  • ci: Freetype adjustments #4999

v3.0.17.0

01 Apr 05:41
v3.0.17.0

Choose a tag to compare

Release 3.0.17.0 (Apr 1, 2026) -- compared to 3.0.16.0

(note: this is the obsolete branch)

  • IBA: Handle offset data windows in fillholes_pushpull #5105 (3.1.12.0, 3.0.17.0)
  • texture: Fix texture overblur with st-blur parameters #5071 #5080 (by Pascal Lecocq) (3.1.12.0, 3.0.17.0)
  • tiff: Wrong number of values passed to invert_photometric #5083
  • ImageInput: check_open fixes and new validity checks #5087 (3.1.12.0, 3.0.17.0)
  • bmp: Use check_open to guard against corrupt resolutions #5086 (3.1.12.0, 3.0.17.0)
  • ico: Various validity checks and error handling for corruptions #5088 (3.1.12.0, 3.0.17.0)
  • psd: Fixes against corrupt files with better validation #5089 (3.1.12.0, 3.0.17.0)
  • rla: Lots of additional validity checking and safety #5094 (3.1.12.0, 3.0.17.0)
  • ImageSpec: metadata_val improved safety #5096 (3.1.12.0, 3.0.17.0)
  • build: Include idiff in the python wheels we build #5104 (3.1.12.0, 3.0.17.0)
  • ci: Add CI test for MSVS 2026 #5060 (3.1.12.0, 3.0.17.0)
  • ci: On Mac Intel CI variant, don't install openvdb, for speed #5065 (3.1.12.0, 3.0.17.0)
  • ci: Fix broken Mac CI and wheel building by specifying full compiler paths #5100 #5101 (3.1.12.0, 3.0.17.0)
  • ci: Update certificates to be able to install icc #5122 (3.1.12.0, 3.0.17.0)
  • tests: New ref outputs for heif no-avif, ffmpeg 8.1, and tiff-misc cases #5079 #5099 #5112 (3.1.12.0, 3.0.17.0)
  • docs: Keep TextureSystem docs in sync with ImageCache #5085 (3.1.12.0, 3.0.17.0)
  • docs: Fix typos and incorrect attribute name in a comment #5093 (3.1.12.0, 3.0.17.0)
  • docs: Fix misstatement about oiiotool --if #5102 (3.1.12.0, 3.0.17.0)
  • admin: Draft policy on use of AI coding assistants #5072 (3.1.12.0, 3.0.17.0)

v3.1.11.0

01 Mar 05:35
v3.1.11.0

Choose a tag to compare

Release 3.1.11.0 (Mar 1, 2026) -- compared to 3.1.10.0

  • oiiotool: Fix expression BOTTOM when there are exactly two images #5046
  • oiiotool: -d SUBIMAGENAME.* didn't work properly #5048
  • oiiotool: Make sure oiiotool --compression does expression substitution #5055
  • iv: Ability to flip, rotate and save image #5003 (by Valery Angelique)
  • fix: Gamma precision #5038 (by Lumina Wang)
  • bmp: Detect corrupt files where palette doesn't match bpp #5030
  • heif: Monochrome channel read and write support, fix crash #5043 (by Brecht Van Lommel)
  • jpeg-xl / color mgmt: Extending JXL CICP support to include P3 / color primaries 12 #5054 (by Shane Smith)
  • tiff: Fix TIFF output crash for multi-count Exif metadata #5035
  • tiff: Improve TIFF robustness for non-matching tag/metadata types #5036
  • tiff: Correctly read TIFF EXIF fields for ExifVersion and FlashPixVersion #5045
  • typedesc.h: New TypeURational type definition is like TypeRational, but with unsigned components. #5036 #5057
  • win: oiiotool --buildinfo misreported platform on MSVS #5027
  • build: Raise fmt auto-build version to 12.1, handle Windows flags #5039
  • build: Self-builder logic fixes for deep vs shallow clones #5034
  • build: Use quote to avoid error if variable is empty #5053
  • tests: Add testsuite/heif ref output for libheif 1.21 + avif support #5031
  • tests: Adjust test comparision thresholds for Mac ARM #5026
  • tests: Imageinout_test: add benchmark of read and write speed vs tile size #5037
  • ci: Don't install OpenCV on Mac Intel job variant #5032
  • ci: Temporarily disable python stub checking #5061
  • ci: Add MacOS 26 (ARM) to the CI lineup #5059

v3.0.16.0

01 Mar 05:14
v3.0.16.0

Choose a tag to compare

Release 3.0.16.0 (Mar 1, 2026) -- compared to 3.0.15.0

  • oiiotool: Fix expression BOTTOM when there are exactly two images #5046
  • bmp: Detect corrupt files where palette doesn't match bpp #5030
  • tiff: Fix TIFF output crash for multi-count Exif metadata #5035
  • windows: oiiotool --buildinfo misreported platform on MSVS #5027
  • build: Raise fmt auto-build version to 12.1, handle Windows flags #5039
  • ci: Optimize install_homebrew_deps by coalescing installs #4975
  • ci: Don't install OpenCV on Mac Intel job variant #5032
  • ci: Temporarily disable python stub checking #5061
  • ci: Add MacOS 26 (ARM) to the CI lineup #5059
  • tests: Add testsuite/heif ref output for libheif 1.21 + avif support #5031
  • tests: Adjust test comparision thresholds for Mac ARM #5026

v3.1.10.0

01 Feb 19:51
v3.1.10.0

Choose a tag to compare

Release 3.1.10.0 (Feb 1, 2026) -- compared to 3.1.9.0

  • perf: IBA::resample() and oiiotool --resample improvements to speed up 20x or more #4993
  • ImageBuf: IB::localpixels_as_[writable_]byte_image_span #5011
  • ImageBufAlgo*: IBA::make_texture now honors "maketx:threads" hint #5014
  • heif: Add IOProxy for input and output #5017 (by Brecht Van Lommel)
  • heif: Can not output AVIF when libheif has no HEVC support #5013 (by Brecht Van Lommel)
  • heif: Error saving multiple images with different bit depths #5018 (by Brecht Van Lommel)
  • webp: Use correct resolution limits for WebpOutput::open #5016 (by Jesse Yurkovich)
  • webp: Missing oiio:UnassociatedAlpha on input #5020 (by Brecht Van Lommel)
  • fix: Several bug fixes related to internal use of image_span #5004
  • build: Fix building on OpenBSD #5001 (by Brad Smith)
  • deps: Libheif 1.21 support #4992
  • deps: Bump build ver to 2.5.1 #5022 (by Zach Lewis)
  • deps: Use libheif exported config if available #5012
  • tests: Add new ref image for jpeg test #5007
  • tests: Fully disable tests when their required dependencies are missing #5005
  • ci: Speed up macos15 intel variant by not installing Qt #4998
  • ci: Don't run non-wheel workflows when only pyproject.toml changes #4997
  • ci: Windows runners switched which python version they had #5010
  • ci: Test against libraw 0.22 for 'latest' test variants #5009
  • ci: Lock bleeding edge to pybind11 latest version #5024

v3.0.15.0

01 Feb 19:48
v3.0.15.0

Choose a tag to compare

Release 3.0.15.0 (Feb 1, 2026) -- compared to 3.0.14.0

  • heif: Can not output AVIF when libheif has no HEVC support #5013 (by Brecht Van Lommel)
  • heif: Error saving multiple images with different bit depths #5018 (by Brecht Van Lommel)
  • webp: Use correct resolution limits for WebpOutput::open #5016 (by Jesse Yurkovich)
  • ci: Speed up macos15 intel variant by not installing Qt #4998
  • ci: Windows runners switched which python version they had #5010
  • ci: Lock bleeding edge to pybind11 latest version #5024

v3.1.9.0

01 Jan 18:33
v3.1.9.0

Choose a tag to compare

Release 3.1.9.0 (Jan 1, 2026) -- compared to 3.1.8.0

  • Color management improvements:
    • Auto convert between oiio:ColorSpace and CICP attributes in I/O #4964 (by Brecht Van Lommel)
    • exr: Write OpenEXR colorInteropID metadata based on oiio:ColorSpace #4967 (by Brecht Van Lommel)
    • jpeg-xl: CICP read and write support for JPEG-XL #4968 (by Brecht Van Lommel)
    • jpeg-xl: ICC read and write for JPEG-XL files (issue 4649) #4905 (by shanesmith-dwa)
  • png: We were not correctly suppressing hint metadata #4983
  • sgi: Implement RLE encoding support for output #4990 (by Jesse Yurkovich)
  • webp: Allow out-of-order scanlines when writing webp #4973 (by Pavan Madduri)
  • fix/IBA: IBA::compare_Yee() accessed the wrong channel #4976 (by Pavan Madduri)
  • perf/filesystem.h: Speedup to detect the existence of files on Windows #4977 (by JacksonSun-adsk)
  • ci: Address tight disk space on GHA runners #4974
  • ci: Optimize install_homebrew_deps by coalescing installs #4975
  • ci: Build_Ptex.bash should build Ptex using C++17 #4978
  • ci: Unbreak CI by adjusting Ubuntu installs #4981
  • ci: Test against libraw 0.21.5 #4988
  • docs: Fix missing docs for OIIO:attribute() and OIIO::getattribute() #4987

v3.0.14.0

01 Jan 18:31
v3.0.14.0

Choose a tag to compare

Release 3.0.14.0 (Jan 1, 2026) -- compared to 3.0.13.0

  • fix: IBA::compare_Yee() accessed the wrong channel #4976 (by Pavan Madduri)
  • ci: Test against libraw 0.21.5 #4988
  • ci: Address tight disk space on GHA runners #4974

v3.1.8.0

01 Dec 03:18
v3.1.8.0

Choose a tag to compare

Release 3.1.8.0 (Dec 1, 2025) -- compared to 3.1.7.0

  • exif: Support EXIF 3.0 tags #4961
  • jpeg: Fix wrong pointers/crashing when decodng CMYK jpeg files #4963
  • openexr: Improve attribute translation rules #4946
  • openexr: ACES container writes colorInteropId instead of colorInteropID #4966 (by Brecht Van Lommel)
  • color mgmt: Fix some legacy 'Linear' color references #4959
  • imagebuf: Fix ImageBuf::set_pixels() bug, didn't consider roi = All #4949
  • tests: Image_span_test reduce benchmark load for debug and CI renders #4951
  • build: Type warning in assertion in jpeg2000output.cpp #4952
  • build: Disable LERC in libTIFF local build script #4957 (by LI JI)
  • ci: Fix broken ci, debug and static cases, bump some latest #4954
  • ci: Unbreak icc/icx CI #4958
  • admin: Update some license notices #4955

v3.0.13.0

01 Dec 03:05
v3.0.13.0

Choose a tag to compare

Release 3.0.13.0 (Dec 1, 2025) -- compared to 3.0.12.0

  • exif: Support EXIF 3.0 tags #4961
  • build: Disable LERC in libTIFF local build script #4957 (by LI JI)
  • ci: Fix broken ci, debug and static cases, bump some latest #4954
  • ci: Unbreak icc/icx CI #4958