Carthage v0.34.0 Release Notes

Release Date: 2019-10-21 // over 4 years ago
  • 🍎 ⚠️ Carthage source only builds on Xcode 10.0+, thus requiring macOS High Sierra 10.13.6. ⚠️

    βž• Additional workarounds to enable Xcode 11.0, 11.1, and 11.2 betas have been added; see below.

    πŸ›  Fixed

    πŸ’₯ Breaking β€” For Apps Importing Carthage Kit

    βœ‚ Removed β€” as a library dependency β€” SwiftPM and llbuild and reinstated struct CarthageKit.SemanticVersion.

    πŸ“¦ A bug in the-tool-SwiftPM's package resolution resulted in disregard for the (crucial) β€˜resolved file’ when resolving branch-based dependencies.

    πŸ’… Which would put us in the position of needing any commit of apple/swift-package-manager that didn’t specify its dependency on apple/swift-llbuild in the branch-based style.

    Also criteria for the above, working Swift 4.2.X manifests and compilation and working Swift 5.X manifests and compilation.

    πŸ“¦ No such commit of apple/swift-package-manager could be found.

    In addition, some confusion around llbuild's sqlite3 linkage made criteria even more confusing.

    • Some initializers and methods on struct Carthage.SemanticVersion have differences from the previous incarnation found in v0.33.0.
    • βœ… Reinstate struct CarthageKit.SemanticVersion in all callsites in codebase and tests, removing SPMUtility.Version.
    • 🚚 No longer necessary to import struct Foundation.URL with the removed import of SPMUtility.
    • 🚚 Makefile removes complications which previously supported llbuild's sqlite3 linkage.
    • Working Swift 4.2.X compilation is necessary to support building for macOS High Sierra on Homebrew bottling infrastructure.

    Important

    ⚑️ Future updates will address Catalyst and building of XCFrameworks. Thank you for your patience.

    Thank you to @jdhealy, @sstadelman, @tmspzz, @giginet, @olejnjak, and @ikesyo for improvements to the codebase and the infrastructure.

    Thank you to @mdiep, @tmspzz, @giginet, and @ikesyo for reviewing pull requests!