Skip to content

1.15.0: Incremental generation mode fixes

Compare
Choose a tag to compare
@brentleyjones brentleyjones released this 08 Jan 20:00
· 239 commits to main since this release
1.15.0
94a7c3d

What’s Changed

New

  • cmake sources are now included in the Project navigator: #2847

Adjusted

  • The default --experimental_remote_download_regex flag set by rules_xcodeproj has been expanded to explicitly list file types needed for indexing: #2859
    • Incremental generation mode has been adjusted to not manually track generated files, resulting in lower CPU and memory usage
    • The targets for a scheme (e.g. .app, .xctest, .a) are now built in Index Build, similar to how Xcode does it
    • This should improve indexing of more complicated setups (e.g. ones that use VFS overlays or hmap files)
  • Added --experimental_use_cpp_compile_action_args_params_file to baseline xcodeproj.bazelrc: #2850
    • Fixes a long command-line issue in incremental generation mode

Fixed

  • Fixed build_targets in xcschemes to accept string labels: #2864
  • Fixed folder-type files (e.g. .xcassets) in incremental generation mode: #2841
  • Fixed generated input source file error in incremental generation mode: #2851
  • Fixed simulator UI test debugging in incremental generation mode: #2849
  • Fixed a potential hang in import_indexstores: #2858

Full Changelog

1.14.2...1.15.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-d3W+uh+d2zy84gnKHtDRF//ii5LYW/qOZZ+zwXatpWU=

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 = "7775beba1f9ddb3cbce209ca1ed0d117ffe28b92d85bfa8e659fb3c176ada565",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.15.0/release.tar.gz",
)

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

xcodeproj_rules_dependencies()

load("@bazel_features//:deps.bzl", "bazel_features_deps")

bazel_features_deps()

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