Skip to content

v0.3.1 - Build on older Xcode

Latest

Choose a tag to compare

@glendonC glendonC released this 12 Jun 13:23
· 24 commits to main since this release

A small fix release. The headline: OpenNook no longer requires Xcode 26 to
build.

This is still 0.x: the public API is not frozen. Pin to a tag.

Fixed

  • The Liquid Glass surface style now builds on Xcode versions earlier than
    26.
    Its Glass / .glassEffect use is from the macOS 26 SDK, and
    @available is only a runtime gate - it still needs those symbols present in
    the SDK being compiled against, so an earlier Xcode failed with "cannot find
    'Glass' in scope". The real path is now compile-gated behind
    #if compiler(>=6.2): an earlier toolchain compiles the pre-Tahoe
    approximation instead, while building with the macOS 26 SDK keeps the real
    material (runtime-gated to macOS 26). A consumer on an older Xcode can now
    build the package.
  • Cleared a Swift 6 concurrency warning on NookFilePickerKey.defaultValue (a
    @MainActor-isolated value held in a nonisolated static) by giving the inert
    default picker a nonisolated init. No behavior change.

Install

.package(url: "https://github.com/glendonC/opennook", from: "0.3.1")

Requirements

  • macOS 15 or later (the Liquid Glass material itself needs macOS 26; every
    other surface style works on macOS 15+)
  • Swift 5.9+ to consume; building the real Liquid Glass material needs the
    macOS 26 SDK (Xcode 26+), otherwise the package builds the approximation

Migration

Nothing to do beyond bumping the dependency.