Releases: MobileNativeFoundation/rules_xcodeproj
3.0.0: Removed support for legacy generator
What’s Changed
⚠️ Breaking changes ⚠️
- Removed the legacy generator mode and other related deprecated things: #3192 and #3193
- rules_swift 3.0+ is required: #3187
New
- Public APIs are now in their own files, deprecating
defs.bzl
: #3194
Adjusted
- Added support for rules_swift 3.0: #3187
Fixed
- Fixed
_allow_remote_write_target_build_settings
typo: #3191
Ruleset Development Changes
- Added rules_shell dev dependency: #3196
- Added protobuf dep to
examples/integration
: #3197 - We set
--incompatible_use_default_test_toolchain=no
for now: #3199
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "3.0.0")
release.tar.gz
’s integrity
: sha256-6GMyNUePjjzAJXYY5zX0dCeus1IcN6+6ngoXGdJbCHc=
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-6GMyNUePjjzAJXYY5zX0dCeus1IcN6+6ngoXGdJbCHc=",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/3.0.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.12.1
TBD: Allows use of homebrew rsync to work around macOS rsync bugs.
2.12.0: More fixes
What’s Changed
Adjusted
- We now use BCR for
kylef/PathKit
andtuist/xcodeproj
deps: #3153 - We now skip targets without
compiles
output group incompile_only
aspect: #3172
Fixed
- Fixed more
rsync
permission issues: #3175 - Fixed argument length error for
WriteSwiftDebugSettings
: #3173 - Adopted latest
index-import version
(v6.1.0.1) to fix issue withlibzstd.1.dylib
: #3174
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "2.12.0")
release.tar.gz
’s integrity
: sha256-qhSXqABDypMW8e+wcMiF7zmMqpke2/CBMyz3iewWrpA=
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-qhSXqABDypMW8e+wcMiF7zmMqpke2/CBMyz3iewWrpA=",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/2.12.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.11.2: More macOS 15.4 fixes
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
toen_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
orDEVELOPER_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
What’s Changed
Since 2.11.0
Below are the changes that were in 2.11.0.
Adjusted
- We now default
LANG
toen_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
orDEVELOPER_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
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
What’s Changed
Adjusted
- We now default
LANG
toen_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
orDEVELOPER_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
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
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
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
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
Fixed
- Fixed handling of
mixed_language_library
when both targets are unfocused: #3104
Full Changelog
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
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
andApp Region
scheme test action options: #3105
Fixed
- Fixed handling of
mixed_language_library
when both targets are unfocused: #3104
Full Changelog
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
What’s Changed
New
- Added support for
App Language
andApp Region
scheme test action options: #3105
Fixed
- Fixed handling of
mixed_language_library
when both targets are unfocused: #3104
Full Changelog
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()