47km south-south-west from Long Beach, California, the island of Catalina was largely bought up in 1919 by William Wrigley, chewing gum king and owner of the Chicago Cubs baseball team.
But googling “Catalina” and “developer” today turns up different stories. Apple released MacOS Catalina, on Monday 7 October, and developers of many apps scrambled to cope, us included. Thanks to heroic work of Toby Nelson, the maintainer of the MacOS app, we now have a Catalina-compatible build available for download (see Downloads above). It is notarized, app-hardened, sandboxed and code-signed. A corresponding Mac App Store version is currently in app review, and will be available there shortly.
What is Catalina?
Apple currently names versions of its desktop/laptop operating system after places in California, and Catalina is MacOS 10.15. Catalina is the most radical change in MacOS for a decade, disabling all 32-bit programs so that they can never again be run, and also imposing further security restrictions on those apps surviving the cull.
64 versus 32 bits
Recent releases of the Inform app for MacOS have been 64-bit for some time, and the app uses modern 64-bit APIs inside MacOS, but until October 2019 it contained 32-bit components. It follows that no version of Inform predating October 2019 will ever be able to run on Catalina or later versions of MacOS.
The October 2019 release is described as “Interim” because it is not a new release of the Inform programming language: it’s a compatibility update of the existing version of that language. (So there will be no corresponding release for Windows, Linux or Android: this addresses a Mac-only issue.) If you were using 7.9.3 on, say, Mojave or High Sierra, you can now resume using 7.9.3 on Catalina, and you shouldn’t see any difference.
That should be fine if you are working with the current Inform language, version 7.9.3. But if you need to build an Inform project from years back, written in a now-outdated dialect of the language, and you need to do this on Catalina, you are potentially stuck. This site offers a long back catalogue of old versions of Inform for MacOS, and those old apps will continue to be available for download, but they will not work on Catalina.
Hope is not lost, because the Interim release also debuts a new app feature: the ability to choose which language version you wish to use. At present this allows only a choice of language versions 7.9.3, 7.9.2, and 7.9.1. We intend in due course to go further back, but not yet. So if you need to build Inform projects using language versions before 7.9.1 (build 6L05), do not swim to Catalina just yet.
MacOS now contains a component called Gatekeeper which polices which apps you are allowed to run. In Catalina, this is more stringent. If you use Inform for MacOS from the Mac App Store, you are unlikely to be affected, because Gatekeeper always trusts what comes from the App Store. But if you download Inform for MacOS from this website, you will see some alarming alarms.
Inform is already code-signed. This means that it is cryptographically identified as being the work of Toby Nelson, the Inform for MacOS developer: that’s good, as Gatekeeper really doesn’t like anonymous software. However, Gatekeeper also now wants code to be notarised, whereby apps are vetted by Apple before use. Notarisation is a new process, and releases prior to October 2019 are not notarised. Notarisation is not as simple as checking in with Apple, as it also requires a modernisation process called app hardening. The Interim release is notarised, and future releases will be, too. But we will not notarise any past releases of Inform for MacOS.
Gatekeeper should allow the Interim release to run without any security warnings, unless your Mac has been configured to run only App Store apps (in which case, of course, you can always get the App Store version of the app and run that instead). However, if for any reason Gatekeeper should give you trouble, you need only control-click (or left-click) on the app and choose “Open” from the drop-down menu. That should only need to be done once, and after that, Gatekeeper will consider the app friend rather than foe.