This changelog tracks changes to rules_xcodeproj. It follows keepachangelog.com conventions — only user-facing changes are listed; internal refactors and cleanups are generally omitted. Breaking changes are marked with ⚠️. For a full list of releases and download links, see the GitHub Releases page.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/MobileNativeFoundation/rules_xcodeproj/llms.txt
Use this file to discover all available pages before exploring further.
Version 4.1.0 — 2026-05-07
Version 4.1.0 — 2026-05-07
New
- Added support for pre- and post-actions on autogenerated schemes, including explicit build post-action failure handling: #3307
- Added
run_build_post_actions_on_failureto custom schemexcschemes.run(...)configuration for explicit build post-action failure handling: #3307
Adjusted
bazel_envis now resolved earlier to reduce analysis cache invalidation when environment values are resolved dynamically: #3305- Integrated Samba rsync from BCR so that users no longer need to install it via Homebrew: #3265
Version 4.0.1 — 2026-04-09
Version 4.0.1 — 2026-04-09
Version 4.0.0 — 2026-03-25
Version 4.0.0 — 2026-03-25
Version 3.6.0 — 2026-02-09
Version 3.6.0 — 2026-02-09
Version 3.5.1 — 2025-12-10
Version 3.5.1 — 2025-12-10
New
- Support Code Coverage in Xcode schemes: #3111
- Display inline Code Coverage in the Xcode Source Editor: #3250
Code Coverage in Xcode requires apple_support 2.0.0 or later and rules_swift 3.4.1 or later.
Version 3.4.0 — 2025-11-19
Version 3.4.0 — 2025-11-19
New
- Added
--@rules_xcodeproj//xcodeproj:separate_index_build_output_baseflag to configure the generator to use a separate output base for index builds: #3243 - Added support for viewing and editing
.xcmappingmodelfiles: #3242 - Added support for StoreKit configuration files to
xcschemes.run, for use with StoreKit Testing: #3245
Fixed
- Fixed potential stale
--xcode_versioninrunner.sh: #3232
Version 3.3.0 — 2025-10-31
Version 3.3.0 — 2025-10-31
Version 3.2.0 — 2025-09-12
Version 3.2.0 — 2025-09-12
Version 3.1.0 — 2025-07-25
Version 3.1.0 — 2025-07-25
Adjusted
- Added
SIGINThandler forprocess_bazel_build_log.py: #3200 - Now uses
--@rules_swift//swift:coptinstead of--swiftcopt: #3206 - Removed
--experimental_action_cache_store_output_metadata: #3207 - Optimized out an extra regular expression substitution: #3208
Fixed
- Fixed build log parsing for
fatal error:diagnostics: #3204 - Fixed incorrect sha256 for rules_swift: #3210
- Added
Testing.frameworkto testing frameworks: #3211 - Added support for new convention for WMO module deps artifacts naming in Xcode 26 beta 3: #3212
- Fixed Metal toolchains in Xcode 26 betas: #3213
Version 3.0.0 — 2025-06-13
Version 3.0.0 — 2025-06-13
Version 2.12.0 — 2025-05-07
Version 2.12.0 — 2025-05-07
Version 2.11.1 — 2025-04-01
Version 2.11.1 — 2025-04-01
Version 2.11.0 — 2025-03-25
Version 2.11.0 — 2025-03-25
Adjusted
- Now defaults
LANGtoen_US.UTF-8in project generation: #3143 - Indexstore
.filelistcreation has been simplified: #3144 WriteTargetBuildSettingscan now optionally use remote cache or RBE: #3149- Now uses
--action_env=TOOLCHAINS=instead of--define=SWIFT_CUSTOM_TOOLCHAIN=: #3123 - Changed instances of
--experimental_remote_download_regexto--remote_download_regex: #3125
Fixed
- Now uses
md5sumwhen not on macOS: #3145 xcode-selectorDEVELOPER_DIRare no longer required to generate a project: #3147- Fixed
incremental_installer.shwhen running on Linux: #3148 swift_compiler_pluginsources are now added to the generated project: #3142- Removed duplicate post/pre actions: #3122
Version 2.10.0 — 2024-12-16
Version 2.10.0 — 2024-12-16
Version 2.0.0 — 2024-04-03
Version 2.0.0 — 2024-04-03
New
- Environment variables are now resolved in
bazel_env: #2983 additional_*_inputsare now collected as extra files in incremental generation mode: #2972swiftc_inputsare now collected as extra files in incremental generation mode: #2971
Adjusted
- Reduced work that incremental generation mode installer does for generated directories: #2956, #2965
- The adjusted
Info.plistis now used forextension_infoplistsin incremental generation mode: #2966 execconfiguration targets are no longer processed in incremental generation mode: #2968
Fixed
- Indentation-related
project_optionsare now applied in incremental generation mode: #2959 - Uncategorized files are no longer collected for unfocused targets in incremental generation mode: #2960, #2982
- The Swift generated header is now excluded from the project in incremental generation mode: #2961
- Fixed
build_modeto be set tobazelwhen passedNoneor"": #2987
This page shows a selection of notable releases. For the complete release history — including all versions back to 0.1.0 — see the CHANGELOG.md on GitHub or browse the GitHub Releases page.