Skip to content

Releases: MobileNativeFoundation/rules_xcodeproj

2.11.2: More macOS 15.4 fixes

09 Apr 17:00
f4a8115
Compare
Choose a tag to compare

What’s Changed

Since 2.11.1

  • Fixed index-import to work on all Xcode 16.x versions: #3162

Below are the changes that were in 2.11.1.

Adjusted

  • We now default LANG to en_US.UTF-8 in project generation: #3143
  • Indexstore .filelist creation has been simplified: #3144
  • WriteTargetBuildSettings can now optionally use remote cache or RBE: #3149
  • We now use --action_env=TOOLCHAINS= instead of --define=SWIFT_CUSTOM_TOOLCHAIN=: #3123
  • Changed instances of --experimental_remote_download_regex to --remote_download_regex: #3125
  • Added compile_only aspect: #3156

Fixed

  • We now use md5sum when not on macOS: #3145
  • xcode-select or DEVELOPER_DIR are no longer required to generate a project: #3147
  • Fixed incremental_installer.sh when running on Linux: #3148
  • swift_compiler_plugin sources are now added to the generated project: #3142
  • Removed duplicate post/pre actions: #3122
  • Fixed rsync on macOS 15.4: #3157
  • Fixed comm on macOS 15.4: #3161

Full Changelog

https://github.com/buildbuddy-io/rules_xcodeproj/compare/2.10.0..2.11.2

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-PlVOapHq+fYXQarlVA0BLykDPHUTOlfAx5WuasIyMjY=

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",
    integrity = "sha256-PlVOapHq+fYXQarlVA0BLykDPHUTOlfAx5WuasIyMjY=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.11.2/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()

2.11.1: macOS 15.4 fixes

01 Apr 16:00
a369447
Compare
Choose a tag to compare

What’s Changed

Since 2.11.0

  • Fixed rsync on macOS 15.4: #3157
  • Fixed comm on macOS 15.4: #3161
  • Added compile_only aspect: #3156

Below are the changes that were in 2.11.0.

Adjusted

  • We now default LANG to en_US.UTF-8 in project generation: #3143
  • Indexstore .filelist creation has been simplified: #3144
  • WriteTargetBuildSettings can now optionally use remote cache or RBE: #3149
  • We now use --action_env=TOOLCHAINS= instead of --define=SWIFT_CUSTOM_TOOLCHAIN=: #3123
  • Changed instances of --experimental_remote_download_regex to --remote_download_regex: #3125

Fixed

  • We now use md5sum when not on macOS: #3145
  • xcode-select or DEVELOPER_DIR are no longer required to generate a project: #3147
  • Fixed incremental_installer.sh when running on Linux: #3148
  • swift_compiler_plugin sources are now added to the generated project: #3142
  • Removed duplicate post/pre actions: #3122

Full Changelog

2.10.0...2.11.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-PxChTZllvtBOebsfBN5tJOMk8QePQqxxugUIEpjeh7g=

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",
    integrity = "sha256-PxChTZllvtBOebsfBN5tJOMk8QePQqxxugUIEpjeh7g=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.11.1/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()

2.11.0: Partial Linux support

25 Mar 18:10
e14dc73
Compare
Choose a tag to compare

What’s Changed

Adjusted

  • We now default LANG to en_US.UTF-8 in project generation: #3143
  • Indexstore .filelist creation has been simplified: #3144
  • WriteTargetBuildSettings can now optionally use remote cache or RBE: #3149
  • We now use --action_env=TOOLCHAINS= instead of --define=SWIFT_CUSTOM_TOOLCHAIN=: #3123
  • Changed instances of --experimental_remote_download_regex to --remote_download_regex: #3125

Fixed

  • We now use md5sum when not on macOS: #3145
  • xcode-select or DEVELOPER_DIR are no longer required to generate a project: #3147
  • Fixed incremental_installer.sh when running on Linux: #3148
  • swift_compiler_plugin sources are now added to the generated project: #3142
  • Removed duplicate post/pre actions: #3122

Full Changelog

2.10.0...2.11.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-JH+sQkvoZyDlHMd9WpUYdq4natpb9x5u2+W3/1P9NpA=

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",
    integrity = "sha256-JH+sQkvoZyDlHMd9WpUYdq4natpb9x5u2+W3/1P9NpA=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.11.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()

2.10.0: Bazel 8 support

16 Dec 16:00
2.10.0
407cbab
Compare
Choose a tag to compare

What’s Changed

⚠️ Breaking changes ⚠️

  • “Make” variables are now expanded values in the env dictionary on test rules: #3088
  • Upgraded rules_apple to 3.16.1: #3114
    • Drops support for Bazel 6

New

  • Added ExtensionKit support: #3109

Fixed

  • Fixed support for Bazel 8 and 9: #3117

Ruleset Development Changes

  • Upgraded to Bazel 8.0.0: #3119

Full Changelog

2.9.2...2.10.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-hHsx77jVC7+ArceeTRIsc2Ym1oqDYiVNNakGW789Z/Q=

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",
    integrity = "sha256-hHsx77jVC7+ArceeTRIsc2Ym1oqDYiVNNakGW789Z/Q=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.10.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()

2.9.2

18 Nov 20:10
2.9.2
f4fa898
Compare
Choose a tag to compare

What’s Changed

Since 2.9.1

  • Fixed parsing of custom scheme test options: #3110

Below are the changes that were in 2.9.1.

New

  • Added support for App Language and App Region scheme test action options: #3105 and #3108

Fixed

  • Fixed handling of mixed_language_library when both targets are unfocused: #3104

Full Changelog

2.8.1...2.9.2

Contributors

  • TBD

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-GJAmZRiNMmN/CpGEjO20eMndARx4ByCrRJt4PyQ4BSc=

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",
    integrity = "sha256-GJAmZRiNMmN/CpGEjO20eMndARx4ByCrRJt4PyQ4BSc=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.9.2/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()

2.9.1

14 Nov 15:57
2.9.1
8f527c9
Compare
Choose a tag to compare

What’s Changed

Since 2.9.0

  • Fixed when xcschemes.autogeneration_config.test is not set: #3108

Below are the changes that were in 2.9.0.

New

  • Added support for App Language and App Region scheme test action options: #3105

Fixed

  • Fixed handling of mixed_language_library when both targets are unfocused: #3104

Full Changelog

2.8.1...2.9.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-4qeMrhA0uWI6QdI86qEX8qoPjjhtHpDdLZulJYToMYM=

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",
    integrity = "sha256-4qeMrhA0uWI6QdI86qEX8qoPjjhtHpDdLZulJYToMYM=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.9.1/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()

2.9.0

13 Nov 20:15
2.9.0
5ec1745
Compare
Choose a tag to compare

What’s Changed

New

  • Added support for App Language and App Region scheme test action options: #3105

Fixed

  • Fixed handling of mixed_language_library when both targets are unfocused: #3104

Full Changelog

2.8.1...2.9.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-AbMkBAiszem4tLkYEHzT1qPTnRvXROlBxdCI+x6Q4Y4=

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",
    integrity = "sha256-AbMkBAiszem4tLkYEHzT1qPTnRvXROlBxdCI+x6Q4Y4=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.9.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()

2.8.1

29 Oct 18:37
2.8.1
c8422cb
Compare
Choose a tag to compare

What’s Changed

Since 2.8.0

  • Fixed missing BUILD files in Project navigator: #3102

Below are the changes that were in 2.8.0.

New

  • Added thread checkers to xcscheme.diagnostics: #3096

Adjusted

  • Structured resources are now represented as files instead of folders in Xcode: #3098 and #3100

Fixed

  • Fixed "Generate Bazel Dependencies" target name typo Fix typo: #3091
  • Fixed handling of apple_precompiled_resource_bundle and similar rules: #3097 and #3099

Full Changelog

2.7.0...2.8.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-I3EVPca7ANRry6ozx41PVIikPUc3TUlYe408gKIuuRQ=

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",
    integrity = "sha256-I3EVPca7ANRry6ozx41PVIikPUc3TUlYe408gKIuuRQ=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.8.1/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()

2.8.0

28 Oct 20:14
2.8.0
caae410
Compare
Choose a tag to compare

What’s Changed

New

  • Added thread checkers to xcscheme.diagnostics: #3096

Adjusted

  • Structured resources are now represented as files instead of folders in Xcode: #3098 and #3100

Fixed

  • Fixed "Generate Bazel Dependencies" target name typo Fix typo: #3091
  • Fixed handling of apple_precompiled_resource_bundle and similar rules: #3097 and #3099

Full Changelog

2.7.0...2.8.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-HqJUyMPmiyhI12pk46r4lEi0fdPxsTmGHPMqU9lS12w=

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",
    integrity = "sha256-HqJUyMPmiyhI12pk46r4lEi0fdPxsTmGHPMqU9lS12w=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.8.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()

2.7.0: Merged Xcode Build and Index Build output bases

21 Aug 18:41
2.7.0
44b6f04
Compare
Choose a tag to compare

What’s Changed

⚠️ Breaking changes ⚠️

  • Environment variables are now filtered when building with Bazel: #3075, #3077, and #3081
    • This shouldn't break anyone, but if it does, xcodeproj.bazel_env is the suggested fix
  • Only the debug settings from the most-downstream Swift targets are used: #3073
    • For this to work best, the library target for a top-level target should be a swift_library, mixed_language_library, or equivalent. Using a non-Swift library can result in now-broken lldb debugging

Adjusted

  • Aligned the various --experimental_remote_download_regex flags: #3076
  • Less work is performed when not importing Index Build indexstores: #3078
  • The same output base is now used for Xcode Build and Index Build: #3074 and #3080

Fixed

  • Fixed target merging involving source-less library targets: #3079
  • Fixed unfocused framework target input files filtering: #3085
  • Fixed top-level targets merging with mixed_language_library: #3082
  • -const-gather-protocols-file is now skipped when calculating SWIFT_OTHER_FLAGS: #3084

Full Changelog

2.6.1...2.7.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-b+AKGo9kJFkcN52bTraVuIu6hKlTEe/Y+LAHkhXs29o=

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",
    integrity = "sha256-b+AKGo9kJFkcN52bTraVuIu6hKlTEe/Y+LAHkhXs29o=",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.7.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()