github bazelbuild/rules_apple 4.0.0

latest releases: 4.1.2, 4.1.1, 4.1.0...
3 months ago

What's changed

Breaking changes

  • .swiftinterface files are no longer provided by default unless the underlying swift_library uses features = ["swift.emit_swiftinterface"] or library_evolution = True.
  • Removed experimental_mixed_language_library rule, users should use rules_swift's mixed_language_library rule instead.

Fixed

  • Fix to only generate Swift interfaces if a build graph for an XCFramework rule is found to contain non-system Swift modules. by @luispadron in #2715
  • Fix issue with codesign not supporting bundles that have spaces by @adincebic in #2732

Removed

Added

  • Add a new series of boundary checks to keep users informed of how to resolve issues with 3P static library SDK rules (such as apple_static_xcframework) caused by making avoid_deps too all-encompassing. by @luispadron in #2716
  • Utilize TEST_PREMATURE_EXIT_FILE by @brentleyjones in #2725
  • Ability to explicitly specify output files in apple_core_data_model rule by @daltonclaybrook in #2727
  • Support latest rules_swift by @luispadron in #2729

Changed

  • *_build_test: Don't allow targets to be empty. by @luispadron in #2719
  • Disable include scanning to work around issue with GrepIncludes actions by @luispadron in #2720
  • Mark the output bundle's root folder permissions as 0o755 as the user when tree artifact bundling is active, for parity with the output bundle generated by legacy bundling. by @luispadron in #2721
  • Mark provisioning_profiles_repository_extension as reproducible by @fmeum in #2731

New Contributors

Full Changelog: 3.22.0...4.0.0

This release is compatible with Bazel 7.x LTS and 8.x LTS releases

MODULE.bazel Snippet

bazel_dep(name = "rules_apple", version = "4.0.0", repo_name = "build_bazel_rules_apple")

Workspace Snippet

load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "build_bazel_rules_apple",
    sha256 = "70b0fb2aec1055c978109199bf58ccb5008aba8e242f3305194045c271ca3cae",
    url = "https://github.com/bazelbuild/rules_apple/releases/download/4.0.0/rules_apple.4.0.0.tar.gz",
)

load(
    "@build_bazel_rules_apple//apple:repositories.bzl",
    "apple_rules_dependencies",
)

apple_rules_dependencies()

load(
    "@build_bazel_rules_swift//swift:repositories.bzl",
    "swift_rules_dependencies",
)

swift_rules_dependencies()

load(
    "@build_bazel_rules_swift//swift:extras.bzl",
    "swift_rules_extra_dependencies",
)

swift_rules_extra_dependencies()

load(
    "@build_bazel_apple_support//lib:repositories.bzl",
    "apple_support_dependencies",
)

apple_support_dependencies()

Don't miss a new rules_apple release

NewReleases is sending notifications on new releases.