On April 26, 2021, Apple released Catalina Security Update 2021-002 (19H1030) for macOS 10.15.7.
This security update breaks OpenCL, a framework from Apple used by Observatory for processing images. After installing this update, Observatory will display the error message “An error occurred while initializing OpenCL“ upon launching, and terminates.
The release notes for the security update do not mention OpenCL, and I’m baffled how this got through Apple’s internal QA. Every application using OpenCL directly or indirectly is affected by this, not just Observatory. I’ve immediately filed a bug report with Apple but have not yet received a response.
Big Sur 11.3 (20E232) and Mojave 10.14.6 (Security Update 2021-003, 18G9028) have not been affected by this bug. Older macOS versions didn’t receive a security update so they too have not been affected. The regression exists only in the Security Update for macOS Catalina. Before applying it, OpenCL works correctly, but after applying it, it does not anymore.
I would normally never recommend this, but until this is resolved by Apple, please do not install Catalina Security Update 2021-002.
Update 2021-05-06: Catalina Security Update Developer Beta 2021-003 fixes the issue, so I expect it to be resolved in the upcoming Catalina Security Update 2021-003.
Update 2021-05-24: Today Apple released Catalina Security Update 2021-003 (19H1217) for macOS 10.15.7. Whereas the beta fixed the OpenCL regression, this public release does not. Apple retroactively breaks functionality in macOS, doesn‘t admit it, doesn‘t respond to a detailed bug report (FB9090655) that includes sample code to demonstrate the regression, and most importantly, doesn‘t fix it. What gives?
If you haven‘t installed Catalina Security Update 2021-002 yet, then you can safely install Catalina Security Update 2021-003. It contains all of the 2021-002 changes, but doesn‘t break OpenCL. Apple excluded the fix for the 2021-002 OpenCL regression that was in beta 19H1210 from it though, so applying 2021-003 after 2021-002 still leaves you with broken OpenCL. Interestingly, this also means that macOS 10.15.7 19H1217 on one system now may not be the same as macOS 10.15.7 19H1217 on another system. What a mess.
Update 2021-06-03: If you have already installed the Catalina Security Update, you can solve the issue by restarting your Mac in macOS Recovery (press
⌘R upon restart) and choosing Install macOS. This reinstalls macOS Catalina 10.15.7 (19H15). It will not erase any data, but do make a Time Machine backup beforehand anyway. You could then install Catalina Security Update 2021-003. The OpenCL issue may be hardware specific though, as on a Late 2013 MacBook Pro Catalina Security Update 2021-003 breaks it as well.
Update 2021-08-12: Observatory is supported on macOS version 10.11 (El Capitan) all the way to the latest beta of upcoming macOS 12 (Monterey), but in the latest security updates on Catalina 10.15.7 Apple introduced a regression on some older hardware for which the only workaround is to revert these security updates, or upgrade macOS.
For example, Observatory runs fine on macOS 10.15.7 and the latest Catalina Security Update 2021-004 on a 2019 MacBook Pro and also on a Mid 2012 MacBook Air. But on a Mid 2012 and Late 2013 MacBook Pro it only runs with macOS 10.15.7 up to build 19H524, but not on any 19H1xxx build. It may be a coincidence, but these machines each have a NVIDIA GPU. The GPU shouldn’t matter, and OpenCL should at least be working on the CPU, but it doesn’t anymore since these last few security updates. The above mentioned workaround works well on these machines, and both the CPU and NVIDIA GPU are then supported.
To reiterate, the workaround on this older hardware is:
- Reboot the machine, press and hold
⌘Rto get into Recovery mode;
- Choose “Install macOS”.
This returns it to the original Catalina 10.15.7 (19H15), without affecting any data or applications. Of course, do make a Time Machine backup beforehand anyway.
If you are running macOS Catalina 10.15.7 on older hardware, before purchasing Observatory make sure to try the demo. It will show you if your system is affected by this issue.