Skip to content

1.6.0: Mixed language target merging and `test_suite` support

Compare
Choose a tag to compare
@brentleyjones brentleyjones released this 18 May 18:17
· 713 commits to main since this release
1.6.0
c59ed2a

What’s Changed

New

  • test_suite targets can now be specified in xcodeproj.top_level_targets: #2184
  • ios_*_test_suite targets can now be specified in xcodeproj.top_level_targets: #2196
  • Added a bzl_library target for xcodeproj files: #2204

Adjusted

  • Optimized project generation: #2129, #2130, #2134, #2138, #2136, #2137, #2174, and #2208
  • Swift and Objective-C targets can now merge into the same terminal target: #2131, #2146, and #2150
  • All symlinks are now resolved to their target file: #2147
  • Schemes are now sorted: #2151
  • The Bazel Build script is now consistently named and structured: #2164 and #2177
  • App extensions can no longer be specified in xcodeproj.top_level_targets: #2183

Fixed

  • Fixed a target consolidation crash: #2195
  • Fixed xcodeproj.xcode_configurations not supporting Starlark build settings with bzlmod enabled: #2191
  • {resource_,}filegroups not belonging to focused targets are now properly excluded from the generated project: #2159

Full Changelog

1.5.1...1.6.0

Contributors

Bzlmod Snippet

bazel_dep(name = "rules_xcodeproj", version = "1.6.0")

release.tar.gz’s integrity: sha256-zpK4eE/lJd1CBCL7CeqOHy3+6J5BukAdM+OmaHGZp9A=⏎

Workspace Snippet

Please use the release asset (release.tar.gz) from your Bazel WORKSPACE instead of GitHub's source asset to reduce download size and improve reproducibility.

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

http_archive(
    name = "rules_xcodeproj",
    sha256 = "ce92b8784fe525dd420422fb09ea8e1f2dfee89e41ba401d33e3a6687199a7d0",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.6.0/release.tar.gz",
)

load(
    "@rules_xcodeproj//xcodeproj:repositories.bzl",
    "xcodeproj_rules_dependencies",
)

xcodeproj_rules_dependencies()

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()