github eoyilmaz/displaycal-py3 3.9.18
DisplayCAL 3.9.18

3 hours ago

It's been almost 10 months since 3.9.17, and this release reflects that: 72 merged pull requests, 524 commits, and 104 closed issues worth of work, adding support for a new colorimeter, ArgyllCMS 3.5.0 compatibility, and a large batch of accumulated stability and accuracy fixes across Windows, macOS, and Linux.

Warning

In MacOS, after installing DisplayCAL you need to run the following in Terminal:

xattr -dr com.apple.quarantine /Applications/DisplayCAL

✨ Highlights

  • New instrument support: Datacolor Spyder2024 (SpyderX2). (#620 by @g4bri3lDev)
  • ArgyllCMS 3.5.0 support, including the new spectral plot (specplot) option. (#645 by @jaminmc)
  • The simplified splash screen (previously macOS-only) is now available on all platforms, fully translated. (#787 by @ethanbrookins, #791 by @eoyilmaz)
  • Windows ARM64 builds (#741, #747 by @eoyilmaz) and Linux DEB/RPM installer packages (#739 by @eoyilmaz) are now available.

🚀 Improvements

  • Improved Web @ localhost remote calibration: fixed freezing/retry issues, corrected color accuracy shown in the browser, and improved handling when multiple devices are connected. (#647 by @jaminmc)
  • Automatic retry when a spectrophotometer's ambient light diffuser interrupts a measurement. (#733 by @eoyilmaz)
  • Added a warning in the measurement report when the display's actual white point drifts noticeably from the profile's target. (#761 by @eoyilmaz)
  • You can now sort the colorimeter corrections table by clicking its column headers. (#752 by @eoyilmaz)
  • Sped up 3D LUT (B2A) table generation. (#781 by @eoyilmaz)
  • Your saved "2012" observer settings are now migrated automatically to the "2015" naming used by ArgyllCMS 3.4+, no action needed. (#760 by @eoyilmaz)
  • ArgyllCMS downloads and version checks now use a new, more reliable GitHub-hosted source. (#750 by @eoyilmaz)

🐛 Bug Fixes

🧩 General

  • Fixed profiles sometimes crushing near-black shadow detail together. (#724 by @eoyilmaz)
  • Fixed a startup crash some users hit right after launching the app. (#726 by @eoyilmaz)
  • Fixed a spurious warning and a crash in the 3D VRML view/export. (#725, #783 by @eoyilmaz)
  • Fixed profile creation failing on machines with more than 60 CPU cores/threads. (#717 by @eoyilmaz)
  • Fixed corruption and an overly strict white point check that could affect XYZ LUT-based profiles. (#721 by @Youfffeng)
  • Fixed duplicate "please calibrate your instrument" prompts. (#765 by @eoyilmaz)
  • Fixed the app losing track of colorimeter correction measurement progress after a crash. (#767 by @eoyilmaz)
  • Fixed saving the log file so it no longer gets corrupted. (#744 by @eoyilmaz)
  • Fixed an error that could occur when applying calibration/profile associations. (#754 by @eoyilmaz)
  • Fixed a crash when a profile's filename included the %crc32 placeholder. (#777 by @eoyilmaz)
  • Fixed uploading/checking colorimeter corrections online. (#789 by @eoyilmaz)
  • Fixed 3D LUT settings being unexpectedly reset when creating a new profile. (#655 by @Adam-Color)
  • Fixed profiles not reloading correctly after changing certain settings. (#678 by @jaminmc)
  • Fixed the testchart editor grid on newer Python versions (3.10+). (#677 by @jaminmc)
  • Removed excessive debug output that could slow things down. (#699 by @Adam-Color)

🪟 Windows

  • Fixed build/compatibility issues on Python 3.13+, including Windows color management integration. (#646 by @jaminmc)
  • Fixed the ARM64 installer refusing to install on ARM64 systems. (#747, #748 by @eoyilmaz)
  • Fixed the monitor name showing as a generic "Plug and Play" device instead of its real model name. (#740 by @eoyilmaz)
  • Fixed the on-screen color patch being positioned incorrectly at display scaling above 100%. (#743 by @eoyilmaz)
  • Fixed gamut coverage not being displayed, caused by a file path bug. (#746 by @eoyilmaz)
  • Fixed oversized "fancy" text rendering at certain scaling levels. (#755 by @DamoyY)
  • Fixed a Profile Loader crash when monitors are reconnected or rearranged. (#763 by @eoyilmaz)
  • HDR calibration profiles are no longer incorrectly forced while the display is in SDR mode; HDR detection is now more reliable on Windows 11 22H2+. (#766, #771 by @eoyilmaz)
  • Fixed saving a profile with SMPTE 2084 (HDR PQ) roll-off causing an error. (#716 by @eoyilmaz)

🍎 macOS

  • Fixed a black screen appearing during calibration on some Macs. (#723 by @eoyilmaz)
  • Fixed a crash on quit on macOS Sonoma 14.6. (#681 by @eoyilmaz)
  • Fixed bundled tool apps (e.g. the 3D LUT viewer) sometimes launching the wrong app. (#722 by @eoyilmaz)
  • Fixed app signing so all bundled tool apps are properly signed. (#684 by @eoyilmaz)
  • Fixed a crash when creating a colorimeter correction. (#732 by @eoyilmaz)
  • Fixed a crash when saving the log window on certain macOS versions. (#759 by @eoyilmaz)
  • Fixed display names showing as generic instead of the real monitor model on Apple Silicon Macs and macOS Tahoe. (#774 by @eoyilmaz)

🐧 Linux

  • Fixed display names showing as generic "Monitor" instead of the real model name. (#762 by @eoyilmaz)
  • Fixed the interactive display adjustment step hanging under Wayland. (#768 by @eoyilmaz)
  • Added a clearer error message when a required wxPython system library is missing. (#745 by @eoyilmaz)

🙏 Thanks

Thanks to everyone who contributed to this release, including first-time contributors @g4bri3lDev, @jaminmc, @Youfffeng, and @DamoyY.

Full Changelog: 3.9.17...3.9.18

Don't miss a new displaycal-py3 release

NewReleases is sending notifications on new releases.