What’s Changed
⚠️ Breaking Changes ⚠️
- If you used the undocumented command-line API, it's been replaced by an official one (mentioned below). See the new section in the Usage Guide for more details.
New
- Added official command-line API: #1350 and #1371
- Added support for propagating env values from
*_test
rules: #1275 - Added
pre_post_actions
totest_action
: #1333
Fixes and Improvements
- Upgraded skylib to 1.3.0: #1236
- A separate output base is now used for building as well, reducing analysis cache invalidations: #1221 and #1264
- Optimized BwB build performance by removing most target dependencies and target embedding: #1238, #1262, #1271, #1272, #1273, #1274, #1276, #1277, #1278, #1285, #1288, #1311, and #1323
- Improved the baseline BwtB experience: #1239, #1242, #1300, and #1306
- Fixed scheme symlink creation: #1279, #1291, and #1301
- Refactored file path resolution: #1241,#1243, #1246, #1250, and #1347
- Fixed
-add_ast_path
for merged targets: #1245 - Changed
PROJECT_DIR
to Bazel's execution root: #1249, #1251, #1252, #1260, #1263, #1286, #1287, #1293, #1295, #1299, #1304, #1327, and #1329 - We now work around Bazel's handling of
DEVELOPER_DIR
: #1257, #1258, and #1259 - Fixed handling of top-level linkopts: #1248
- We now apply normal configuration segregation to
BUILD_DIR
: #1267 and #1305 - Fixed BwB Indexing handling of modulemaps: #1269
- Removed env variable filtering: #1280
- Removed use of output group maps: #1307
- Fixed and optimized
rsync
exclude files: #1309, #1355, #1357, #1358, #1362, and #1364 - We now set a pattern override for BuildBuddy, to improve the look of invocations: #1310
- Fixed BwX Swift generated header path for merged targets (i.e. frameworks): #1313
- Added
-emit-symbol-graph-dir
to filtered swiftcopts: #1316 - Fixed target dependency to merged target: #1315
- Added support for mixed language modules: #1317, #1318, #1319, and #1328
- Fixed
test_action.diagnostics
propagation: #1321 - Removed extra
bazel info
calls: #1326, #1345, #1346, and #1348 - We now symlink instead of copy BwB SwiftUI Previews framework dependencies: #1330 and #1363
- We now properly set
ENABLE_STRICT_OBJC_MSGSEND
: #1331 - Improved performance of project generation: #1335, #1337, #1338, #1339, #1341, and #1343
- Prevent
bazel clean
from affecting rules_xcodeproj's output base (use the new command-line API to clean it instead): #1353 - Fixed BwB debugging of framework targets: #1356
- Moved target merging into Starlark: #1366, #1367, #1368, #1369, and #1370
Full Changelog: 0.9.0...0.10.0
Contributors
First PRs
- @sebastianv1 made their first contribution in #1333
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 = "com_github_buildbuddy_io_rules_xcodeproj",
sha256 = "2f9638b7bae45c0ba6f53a66788a0ec17db6455f4db4df6abaf07017ee9a9419",
url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/0.10.0/release.tar.gz",
)
load(
"@com_github_buildbuddy_io_rules_xcodeproj//xcodeproj:repositories.bzl",
"xcodeproj_rules_dependencies",
)
xcodeproj_rules_dependencies()
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()