Releases: MobileNativeFoundation/rules_xcodeproj
1.17.0
What’s Changed
New
- Added support for the new
swift_proto_library
rule: #2832
Adjusted
- Added support for argument lists in
swiftc_stub
: #2907 - We now log when the Bazel build is starting: #2895
- Upgraded WORKSPACE versions of rules_apple: #2912
- Removed incremental generation mode extra
CODE_SIGNING_ALLOWED
logic: #2921
Fixed
- Fixed duplicate
same_as_run
launch target pre/post actions: #2892 - Fixed frozen list issue with incremental generation: #2894
- Fixed more code signing issues of UI tests with incremental generation: #2919
- Fixed processing of folder-type uncategorized resources with incremental generation: #2918
- Fixed tree artifact
File
handling with incremental generation: #2905 - Fixed tvOS Xcode preview framework code signing with incremental generation: #2920
xcschemes
no longer errors when listing a merged target inlibrary_targets
: #2897
Ruleset Development Changes
- Upgraded development apple_support and rules_apple versions: #2912
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.17.0")
release.tar.gz
’s integrity
: sha256-iEDmJM4kKyWeTn6kwe83+nfu34XOai1rBg4he/8nNss=
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 = "8840e624ce242b259e4e7ea4c1ef37fa77eedf85ce6a2d6b060e217bff2736cb",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.17.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()
1.16.0
What’s Changed
New
- Added support for pre/post actions with
launch_path
: #2866
Adjusted
- Added a failure when
product.original_basename
isn’t set: #2879 - Improved performance of the
files_and_groups
incremental generator: #2870 - Upgraded
xcodeproj_rules_dependencies
rules_apple, rules_swift, and bazel_features: #2882 - Upgraded bazel_features to 1.3.0: #2883
- Removed bitcode support: #2887
Fixed
- Fixed macro expansion for test schemes without launch targets: #2868
- Fixed some args and env setting in incremental generation schemes: #2869
- Fixed SwiftUI Previews link command-line length issue with incremental generation mode: #2878
- Fixed Bazel 6 handling of
libSwiftProtobuf.a
: #2888 - Fixed the command-line API to support all Bazel commands via the
common
pseudo-command: #2889
Ruleset Development Changes
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.16.0")
release.tar.gz
’s integrity
: sha256-zMcZhRqZQsU7k1mYQQbp+lxcl9liGzRiQ7Y4sY7Al/k=
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 = "ccc719851a9942c53b9359984106e9fa5c5c97d9621b346243b638b18ec097f9",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.16.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()
1.15.0: Incremental generation mode fixes
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 baselinexcodeproj.bazelrc
: #2850- Fixes a long command-line issue in incremental generation mode
Fixed
- Fixed
build_targets
inxcschemes
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
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()
1.14.2
What’s Changed
Since 1.14.1
- Fix another incremental installer issue: #2826
Below are the changes that were in 1.14.1.
New
- Added a new incremental generation mode
- Incremental generation mode is a new way for rules_xcodeproj to generate your project. Unlike the Build Mode (BwB or BwX), this should only really affect the process by which rules_xcodeproj takes to generate the project, not how the project itself behaves (with some small caveats). Here are some of the benefits of using incremental generation mode over the current (a.k.a
"legacy"
) generation mode:- Much faster generation. Numbers from a large example project:
- Clean
- Analysis: 12% faster (62s vs 71s)
- Execution: 41% faster (72s vs 123s)
- Minimal incremental (add file to a top-level target)
- Analysis: 36% faster (13s vs 21s)
- Execution: 93% faster (8.5s vs 123s)
- Clean
- Lower Starlark memory usage (about 33% lower)
- Improved target consolidation and target merging
- Some targets can now consolidate better
- Libraries can merge into multiple top-level targets
- Mixed-language targets merge better
- Improved indexing
- All Swift compiler flags are now in the project, working around more SourceKit issues
- Improved debugging
- Improved handling of extra files (mainly around target focusing)
- Improved Xcode Previews support
- For maintainers, vastly improved maintainability (docs, tests, code structure, etc.)
- Much faster generation. Numbers from a large example project:
- This is currently opt in
- Set
xcodeproj.generation_mode
to"incremental"
to try it out - Use
xcodeproj.xcschemes
, instead ofxcodeproj.schemes
, if you define custom schemes - Note: Only BwB mode is supported
- Set
- Incremental generation mode is a new way for rules_xcodeproj to generate your project. Unlike the Build Mode (BwB or BwX), this should only really affect the process by which rules_xcodeproj takes to generate the project, not how the project itself behaves (with some small caveats). Here are some of the benefits of using incremental generation mode over the current (a.k.a
- Added a Bzlmod dependency on
rules_python
0.27.1
: #2793
Adjusted
- Added recognition of additional
deps
attributes for rules_ios bundle rules: #2750 - Archived bundles are now extracted with Bazel instead of in
copy_outputs.sh
: #2779 cc_common.merge_cc_infos
is now only called if needed: #2762- Disabled the
GenerateTAPI
Xcode action: #2724 - Improved handling of source-less library targets: #2714
- Optimized some Starlark CPU usage: #2760
- Optimized some Starlark retained memory usage: #2769 and #2777
- Upgraded bazel_features to 1.1.1: #2718
- Upgraded apple_support, rules_apple, and rules_swift in
WORKSPACE
macro: #2824 - Removed
--collect_specs
support: #2803 - Removed
DEPLOYMENT_LOCATION
hack when using BwB mode: #2790
Ruleset Development Changes
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.14.2")
release.tar.gz
’s integrity
: sha256-UnbmV2Q0XQqwBa6+dxdjH4j3uzUTDVnYostRWfGQ3Zw=
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 = "5276e65764345d0ab005aebe7717631f88f7bb35130d59d8a2cb5159f190dd9c",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.14.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()
1.14.1
What’s Changed
Since 1.14.0
- Fixed incremental installer: #2825
Below are the changes that were in 1.14.0.
New
- Added a new incremental generation mode
- Incremental generation mode is a new way for rules_xcodeproj to generate your project. Unlike the Build Mode (BwB or BwX), this should only really affect the process by which rules_xcodeproj takes to generate the project, not how the project itself behaves (with some small caveats). Here are some of the benefits of using incremental generation mode over the current (a.k.a
"legacy"
) generation mode:- Much faster generation. Numbers from a large example project:
- Clean
- Analysis: 12% faster (62s vs 71s)
- Execution: 41% faster (72s vs 123s)
- Minimal incremental (add file to a top-level target)
- Analysis: 36% faster (13s vs 21s)
- Execution: 93% faster (8.5s vs 123s)
- Clean
- Lower Starlark memory usage (about 33% lower)
- Improved target consolidation and target merging
- Some targets can now consolidate better
- Libraries can merge into multiple top-level targets
- Mixed-language targets merge better
- Improved indexing
- All Swift compiler flags are now in the project, working around more SourceKit issues
- Improved debugging
- Improved handling of extra files (mainly around target focusing)
- Improved Xcode Previews support
- For maintainers, vastly improved maintainability (docs, tests, code structure, etc.)
- Much faster generation. Numbers from a large example project:
- This is currently opt in
- Set
xcodeproj.generation_mode
to"incremental"
to try it out - Use
xcodeproj.xcschemes
, instead ofxcodeproj.schemes
, if you define custom schemes - Note: Only BwB mode is supported
- Set
- Incremental generation mode is a new way for rules_xcodeproj to generate your project. Unlike the Build Mode (BwB or BwX), this should only really affect the process by which rules_xcodeproj takes to generate the project, not how the project itself behaves (with some small caveats). Here are some of the benefits of using incremental generation mode over the current (a.k.a
- Added a Bzlmod dependency on
rules_python
0.27.1
: #2793
Adjusted
- Added recognition of additional
deps
attributes for rules_ios bundle rules: #2750 - Archived bundles are now extracted with Bazel instead of in
copy_outputs.sh
: #2779 cc_common.merge_cc_infos
is now only called if needed: #2762- Disabled the
GenerateTAPI
Xcode action: #2724 - Improved handling of source-less library targets: #2714
- Optimized some Starlark CPU usage: #2760
- Optimized some Starlark retained memory usage: #2769 and #2777
- Upgraded bazel_features to 1.1.1: #2718
- Upgraded apple_support, rules_apple, and rules_swift in
WORKSPACE
macro: #2824 - Removed
--collect_specs
support: #2803 - Removed
DEPLOYMENT_LOCATION
hack when using BwB mode: #2790
Ruleset Development Changes
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.14.1")
release.tar.gz
’s integrity
: sha256-Y3lwAEzeEmnSFNHC9Ol+geTWkBuuwI9Q4O6arJfBeHg=
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 = "637970004cde1269d214d1c2f4e97e81e4d6901baec08f50e0ee9aac97c17878",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.14.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()
1.14.0: Incremental generation mode
What’s Changed
New
- Added a new incremental generation mode
- Incremental generation mode is a new way for rules_xcodeproj to generate your project. Unlike the Build Mode (BwB or BwX), this should only really affect the process by which rules_xcodeproj takes to generate the project, not how the project itself behaves (with some small caveats). Here are some of the benefits of using incremental generation mode over the current (a.k.a
"legacy"
) generation mode:- Much faster generation. Numbers from a large example project:
- Clean
- Analysis: 12% faster (62s vs 71s)
- Execution: 41% faster (72s vs 123s)
- Minimal incremental (add file to a top-level target)
- Analysis: 36% faster (13s vs 21s)
- Execution: 93% faster (8.5s vs 123s)
- Clean
- Lower Starlark memory usage (about 33% lower)
- Improved target consolidation and target merging
- Some targets can now consolidate better
- Libraries can merge into multiple top-level targets
- Mixed-language targets merge better
- Improved indexing
- All Swift compiler flags are now in the project, working around more SourceKit issues
- Improved debugging
- Improved handling of extra files (mainly around target focusing)
- Improved Xcode Previews support
- For maintainers, vastly improved maintainability (docs, tests, code structure, etc.)
- Much faster generation. Numbers from a large example project:
- This is currently opt in
- Set
xcodeproj.generation_mode
to"incremental"
to try it out - Use
xcodeproj.xcschemes
, instead ofxcodeproj.schemes
, if you define custom schemes - Note: Only BwB mode is supported
- Set
- Incremental generation mode is a new way for rules_xcodeproj to generate your project. Unlike the Build Mode (BwB or BwX), this should only really affect the process by which rules_xcodeproj takes to generate the project, not how the project itself behaves (with some small caveats). Here are some of the benefits of using incremental generation mode over the current (a.k.a
- Added a Bzlmod dependency on
rules_python
0.27.1
: #2793
Adjusted
- Added recognition of additional
deps
attributes for rules_ios bundle rules: #2750 - Archived bundles are now extracted with Bazel instead of in
copy_outputs.sh
: #2779 cc_common.merge_cc_infos
is now only called if needed: #2762- Disabled the
GenerateTAPI
Xcode action: #2724 - Improved handling of source-less library targets: #2714
- Optimized some Starlark CPU usage: #2760
- Optimized some Starlark retained memory usage: #2769 and #2777
- Upgraded bazel_features to 1.1.1: #2718
- Upgraded apple_support, rules_apple, and rules_swift in
WORKSPACE
macro: #2824 - Removed
--collect_specs
support: #2803 - Removed
DEPLOYMENT_LOCATION
hack when using BwB mode: #2790
Ruleset Development Changes
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.14.0")
release.tar.gz
’s integrity
: sha256-y2mbkDHxAWbyeYf3BjE2LUpAbj+kIqAq4rwnX9APqh4=
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 = "cb699b9031f10166f27987f70631362d4a406e3fa422a02ae2bc275fd00faa1e",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.14.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()
1.13.0
What’s Changed
Adjusted
- Moved
import_indexstores.sh
early exit to before kill: #2670 - Added target label to
xcodeproj
macro warnings and errors: #2673 - Converted
import_indexstores.sh
into a Swift binary: #2671 indexstores
are now included as inputs toindexstore_filelist
: #2681- Improved error message when
XCBBuildService
gets stuck on stale data: #2688 - Moved
calculate_output_groups.py
JSON parsing error reporting: #2687 - Made the launchable target error more detailed: #2689
Fixed
- Fixed object path in Index Build imported unit files: #2669
- Made mutable copy of extensions when processing top-level target: #2698
- Non-Swift library targets now compile their code when building their scheme in Xcode: #2699
- We no longer delete
.xcodeproj/xcuserdata
: #2700
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.13.0")
release.tar.gz
’s integrity
: sha256-9cH0vqnwBzLvnVTTM9mBnVdN5wINvZ0IEHQjK5PBCyw=
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 = "f5c1f4bea9f00732ef9d54d333d9819d574de7020dbd9d081074232b93c10b2c",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.13.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()
1.12.1
What’s Changed
Since 1.12.0
- Fixed framework Xcode previews: #2663
Below are the changes that were in 1.12.0.
Adjusted
- Upgraded
xcodeproj_rules_dependencies
rules_swift and rules_apple: #2617 - Tests now sort after library targets in schemes: #2616
- We no longer set
dwarf-with-dsym
in an additional location: #2643 - We no longer copy over frameworks in BwB mode: #2644
- Xcode target names using label form now favor shorthand form: #2649
Fixed
- Fixed hanging
calculate_output_groups.py
: #2660
Ruleset Development Changes
- Changed
examples
to use release archive: #2614 - Upgraded dev apple_support, rules_swift, and rules_apple: #2622
- Upgraded swift-argument-parser to 1.2.3: #2632
- Added
AppleLipo
to--modify_execution_info
: #2657
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.12.1")
release.tar.gz
’s integrity
: sha256-0W3icQSABOon+Y1v78sCIUM3kgYXomePWOhFiYAkOl8=
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 = "d16de271048004ea27f98d6fefcb02214337920617a2678f58e8458980243a5f",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.12.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()
1.12.0
What’s Changed
Adjusted
- Upgraded
xcodeproj_rules_dependencies
rules_swift and rules_apple: #2617 - Tests now sort after library targets in schemes: #2616
- We no longer set
dwarf-with-dsym
in an additional location: #2643 - We no longer copy over frameworks in BwB mode: #2644
- Xcode target names using label form now favor shorthand form: #2649
Fixed
- Fixed hanging
calculate_output_groups.py
: #2660
Ruleset Development Changes
- Changed
examples
to use release archive: #2614 - Upgraded dev apple_support, rules_swift, and rules_apple: #2622
- Upgraded swift-argument-parser to 1.2.3: #2632
- Added
AppleLipo
to--modify_execution_info
: #2657
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.12.0")
release.tar.gz
’s integrity
: sha256-0lpq9iwLmteBqCT2wehm+BBlMQGct6FyvRfrnMgFpvc=
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 = "d25a6af62c0b9ad781a824f6c1e866f8106531019cb7a172bd17eb9cc805a6f7",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.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()
1.11.0
What’s Changed
New
- Added the
xcodeproj.target_name_mode
attribute: #2590
Adjusted
- Removed fallback output group calculation: #2541
- Upgraded
xcodeproj_rules_dependencies
rules_apple to 2.5.0: #2560 - Upgraded
xcodeproj_rules_dependencies
rules_swift to 1.11.0: #2561 ASSETCATALOG_COMPILER_GENERATE_ASSET_SYMBOLS = NO
is now set in BwB mode: #2569- Bazel generated
.objlist
files are now prevented from in the project: #2570 - Bazel sandboxing is now disabled by default: #2606
Fixed
- All transitive swiftmodules are now included in the
bc
output group when needed: #2571 - Fixed issues when using
--incompatible_fail_on_unknown_attributes
: #2573 and #2579 - Fixed using
sync
with command-line API: #2585 - Fixed default of
ENABLE_USER_SCRIPT_SANDBOXING
for Xcode 15: #2591 - Fixed processed build log paths: #2599
- Fixed nondeterministic product file identifier: #2602
- dSYMs are no longer generated by Xcode in BwB mode: #2605
Ruleset Development Changes
- Upgraded apple_support to 1.9.0: #2553
platform_mappings
are now used everywhere: #2555 and #2609- Upgraded development versions of rules_apple and rules_swift: #2562
- Dropped Bazel 5 dev files and cleaned up
platform_mappings
handling: #2565 - Removed
WORKSPACE
support for development: #2566 - Made
platform_mappings
bijective: #2588 - Bazel 6.4.0rc1 is now used for development: #2608
- The BLAKE3 digest function is now used for development: #2611
Full Changelog
Contributors
Bzlmod Snippet
bazel_dep(name = "rules_xcodeproj", version = "1.11.0")
release.tar.gz
’s integrity
: sha256-SIbRBWba3pBIoLI5/EPCHCm7C6A/thGpl/e3htboWbY=
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 = "4886d10566dade9048a0b239fc43c21c29bb0ba03fb611a997f7b786d6e859b6",
url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.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()