Skip to content

Releases: MobileNativeFoundation/rules_xcodeproj

1.11.0

20 Sep 15:03
1.11.0
ae29c44

Choose a tag to compare

What’s Changed

New

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

1.10.1...1.11.0

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()

1.10.1

06 Sep 18:17
1.10.1
fe32813

Choose a tag to compare

What’s Changed

Since 1.10.0

  • Removed generated .proto.bin files from target's Compile Sources: #2538
  • Specified path to sort: #2540
  • Reduced macOS requirement for legacy generator to 12.0: #2545
  • Changed sorting of build action in schemes: #2546

Below are the changes that were in 1.10.0.

⚠️ Breaking Changes ⚠️

  • Added a dependency on bazel_features: #2490
    • If you don't use Bzlmod (i.e. use a WORKSPACE file), see the updated snippet at the end of the release notes.

New

  • Added initial support for swift_proto_library and swift_grpc_library: #2484 and #2515
  • Added support for codesign_inputs and improved support for codesignopts: #2535

Adjusted

  • Some intermediate params files are no longer unnecessarily created: #2468 and #2469
  • Generated .swift files are now downloaded when using BwtB: #2473
  • Improved target merging: #2471, #2482, #2487
  • Starlark performance improvements: #2518, #2519, #2536, and #2537
  • CLANG_ENABLE_MODULES is no longer set: #2528
  • Removed support for WatchKit 1: #2527
  • We now count precompiled_apple_resource_bundle as a resource bundle target: #2523

Fixed

  • Fixed -ivfsoverlay for mixed-language targets: #2478
  • -oso_prefix is now filtered from link.params: #2505
  • Fixed a Starlark performance improvement when using bzlmod: #2510 and #2530
  • Fixed a BwX mode Xcode 15 cyclic dependency error: #2483
  • Fixed inherited build settings: #2531
  • Fixed running BwB unit tests on device: #2534

Ruleset Development Changes

  • Bumped minimum macOS for tools to 13.0: #2475

Full Changelog

1.9.1...1.10.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-vIsa4Ga3MzoVH9Op6+4NUdd3mIa/uM+fxuD51sEQ/IM=

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 = "bc8b1ae066b7333a151fd3a9ebee0d51d7779886bfb8cf9fc6e0f9d6c110fc83",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.10.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.10.0

31 Aug 17:28
1.10.0
d1f4ec6

Choose a tag to compare

What’s Changed

⚠️ Breaking Changes ⚠️

  • Added a dependency on bazel_features: #2490
    • If you don't use Bzlmod (i.e. use a WORKSPACE file), see the updated snippet at the end of the release notes.

New

  • Added initial support for swift_proto_library and swift_grpc_library: #2484 and #2515
  • Added support for codesign_inputs and improved support for codesignopts: #2535

Adjusted

  • Some intermediate params files are no longer unnecessarily created: #2468 and #2469
  • Generated .swift files are now downloaded when using BwtB: #2473
  • Improved target merging: #2471, #2482, #2487
  • Starlark performance improvements: #2518, #2519, #2536, and #2537
  • CLANG_ENABLE_MODULES is no longer set: #2528
  • Removed support for WatchKit 1: #2527
  • We now count precompiled_apple_resource_bundle as a resource bundle target: #2523

Fixed

  • Fixed -ivfsoverlay for mixed-language targets: #2478
  • -oso_prefix is now filtered from link.params: #2505
  • Fixed a Starlark performance improvement when using bzlmod: #2510 and #2530
  • Fixed a BwX mode Xcode 15 cyclic dependency error: #2483
  • Fixed inherited build settings: #2531
  • Fixed running BwB unit tests on device: #2534

Ruleset Development Changes

  • Bumped minimum macOS for tools to 13.0: #2475

Full Changelog

1.9.1...1.10.0

Contributors

Bzlmod Snippet

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

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

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

1.9.1

14 Aug 18:09
1.9.1
50b7c54

Choose a tag to compare

What’s Changed

Since 1.9.0

  • Bundle name, instead of module name, is now used in target disambiguation: #2459
  • Changed how host output groups are set in fallback case: #2461
  • Fixed quoting of flags in SWIFT_OTHER_FLAGS: #2454
  • Fixed rules_ios .xccurrentversion collection: #2457 and #2465
  • Fixed BwX tesource bundle Info.plist regression: 2466

Below are the changes that were in 1.9.0.

Adjusted

  • GENERATE_INFOPLIST_FILE is not longer set: #2379
  • Added an error message when target_ids_list is missing: #2396
  • Changed “Command Line Tool” disambiguation to “Tool”: #2434
  • Library module names are now preferred for target name disambiguation: #2407

Fixed

  • Fixed handling of conditional bundle_name: #2368 and #2375
  • Fixed Xcode set LD_LIBRARY_PATH and SDKROOT influencing bazel build: #2373
  • Fixed handling of conditionally empty build setting values: #2380
  • Fixed handling of generated .xccurrentversion files: #2389
  • Fixed multiple target name disambiguation bugs: #2415, #2416, #2414, #2418, #2419, #2420, #2429, #2425, #2432, and #2435
  • Fixed wrong execution root being used in Index Build indexstore importing: #2422 and #2431
  • Fixed more cases of SourceKit (indexing) caching issues: #2264 and #2443
  • Fixed Swift generated header not being downloaded in BwB mode: #2440

Full Changelog

1.8.1...1.9.1

Contributors

Bzlmod Snippet

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

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

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 = "5baccdd6a2734a0adeb9cb6175691d0609f8bdbd7c5f516e828d0df744ee9f6c",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.9.1/release.tar.gz",
)

load(
    "@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()

1.9.0

04 Aug 18:32
1.9.0
09effbb

Choose a tag to compare

What’s Changed

Adjusted

  • GENERATE_INFOPLIST_FILE is not longer set: #2379
  • Added an error message when target_ids_list is missing: #2396
  • Changed “Command Line Tool” disambiguation to “Tool”: #2434
  • Library module names are now preferred for target name disambiguation: #2407

Fixed

  • Fixed handling of conditional bundle_name: #2368 and #2375
  • Fixed Xcode set LD_LIBRARY_PATH and SDKROOT influencing bazel build: #2373
  • Fixed handling of conditionally empty build setting values: #2380
  • Fixed handling of generated .xccurrentversion files: #2389
  • Fixed multiple target name disambiguation bugs: #2415, #2416, #2414, #2418, #2419, #2420, #2429, #2425, #2432, and #2435
  • Fixed wrong execution root being used in Index Build indexstore importing: #2422 and #2431
  • Fixed more cases of SourceKit (indexing) caching issues: #2264 and #2443
  • Fixed Swift generated header not being downloaded in BwB mode: #2440

Full Changelog

1.8.1...1.9.0

Contributors

Bzlmod Snippet

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

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

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 = "2c57b2ec8622a5fc6f9661f9e554d415c30f8b91410e2023e5239c045494875f",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.9.0/release.tar.gz",
)

load(
    "@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()

1.8.1

14 Jul 16:04
1.8.1
f23dd39

Choose a tag to compare

What’s Changed

Since 1.8.0

  • Fixed BwX not generating some Bazel generated files: #2361
  • Fixed some transitive modulemaps not being generated: #2362
  • Fixed swift_debug_settings.py not including testing search paths: #2363 and #2364
  • Fixed tool overrides still being set in BwB Index Build: #2365

Below are the changes that were in 1.8.0

Adjusted

  • Updated index-import to 5.8.0.1: #2319 and #2332
  • Renamed two build phases for consistency: #2328
  • Added support for /PLACEHOLDER_DEVELOPER_DIR remapping: #2331
  • The DEVELOPER_DIR regex is now restricted to the start of the line: #2337
  • Adjusted .pbxproj formatting to match the way Xcode formats things: #2339, #2340, and #2344
  • Indexes are now imported in Index Builds as well: #2283
  • Project Format now supports Xcode 15: #2343
  • BAZELISK_SKIP_WRAPPER is now captured in bazel_env: #2357

Fixed

  • PBXProj.objectVersion is now correctly set for Xcode 14+: #2341
  • Fixed libtool version check in Xcode 15: #2359
  • Tool overrides are now unset in the in BazelDependencies target: #2358

Full Changelog

1.7.1...1.8.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-JK7QvGz0Ey9i4I1LgWVhB+qNeATJ9/V8+5rL0Jkrp1s=

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 = "24aed0bc6cf4132f62e08d4b81656107ea8d7804c9f7f57cfb9acbd0992ba75b",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.8.1/release.tar.gz",
)

load(
    "@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()

1.8.0

13 Jul 15:39
1.8.0
74fda97

Choose a tag to compare

What’s Changed

Adjusted

  • Updated index-import to 5.8.0.1: #2319 and #2332
  • Renamed two build phases for consistency: #2328
  • Added support for /PLACEHOLDER_DEVELOPER_DIR remapping: #2331
  • The DEVELOPER_DIR regex is now restricted to the start of the line: #2337
  • Adjusted .pbxproj formatting to match the way Xcode formats things: #2339, #2340, and #2344
  • Indexes are now imported in Index Builds as well: #2283
  • Project Format now supports Xcode 15: #2343
  • BAZELISK_SKIP_WRAPPER is now captured in bazel_env: #2357

Fixed

  • PBXProj.objectVersion is now correctly set for Xcode 14+: #2341
  • Fixed libtool version check in Xcode 15: #2359
  • Tool overrides are now unset in the in BazelDependencies target: #2358

Full Changelog

1.7.1...1.8.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-I0J0daE9Wgfb0yBxrD+vnC3sQVaiuRUniBmZxJ3Dm5g=

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 = "23427475a13d5a07dbd32071ac3faf9c2dec4156a2b91527881999c49dc39b98",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.8.0/release.tar.gz",
)

load(
    "@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()

1.7.1

20 Jun 13:31
1.7.1
35d7b56

Choose a tag to compare

What’s Changed

Since 1.7.0

  • Fixed replacement label handling when wrapped in a macro: #2291
  • Fixed BwX Swift testing search paths: #2295
  • Fixed possible bazel build output truncation: #2282
  • Fixed indexing of Swift macros: #2292
  • Fixed Swift macros in BwX mode: #2294
  • Added a usual error message when no diagnostics are parsed: #2286
  • Added support for swift_compiler_plugin targets: #2293
  • We now set --repo_env=XCODE_VERSION: #2287

Below are the changes that were in 1.7.0

Adjusted

  • All clang flag processing has been moved into the execution phase: #2212
  • Application schemes are now sorted before other auto generated schemes: #2211
  • Removed special handling for -strict-concurrency: #2214
  • Removed special handling for -enable-testing: #2215
  • Removed special handling for SWIFT_OPTIMIZATION_LEVEL: #2227
  • Removed special handling of ENABLE_STRICT_OBJC_MSGSEND: #2233
  • Moved generator package directory to /var/tmp: #2252
  • The non-= version of -working-directory is now used: #2254
  • SWIFT_INCLUDE_PATHS is no longer set in BwB mode: #2245 and #2277
  • -I, -explicit-swift-module-map-file, and -vfsoverlay are now set in OTHER_SWIFT_FLAGS: #2256
  • -F is now set in OTHER_SWIFT_FLAGS: #2258 and #2263
  • PROJECT_DIR is now used instead of CURRENT_EXECUTION_ROOT: #2259
  • $(BAZEL_OUT) is now used to reference compile params files: #2260
  • Paths are now always absolute in swift.compile.params and OTHER_SWIFT_FLAGS: #2261, #2265, #2267, and #2269
  • swiftc_stub now errors out instead of warning: #2278
  • Removed unnecessary dependencies from release archive: #2279

Fixed

  • __BAZEL_ variables ar now replaced in swift_debug_sttings.py: #2213
  • Development region is now properly set in PBXProject.knownRegions: #2228
  • Fixed tests in custom schemes when ios_unit_test.bundle_name is used: #2248
  • Fixed test_suite label creation if using bzlmod: #2249
  • Fixed quoting of string defines in {c,cxx}.compile.params: #2262
  • Builds now properly error out when using an .xcworkspace: #2273
  • Fixed swiftc_stub with Xcode 15: #2276
  • Fixed handling of build configuration in custom schemes: #2274

Full Changelog

1.6.0...1.7.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-+DbSpRapEdwKzkSx9RqldWE/FJqTT0vh571VGlSWcv8=

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 = "f836d2a516a911dc0ace44b1f51aa575613f149a934f4be1e7bd551a549672ff",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.7.1/release.tar.gz",
)

load(
    "@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()

1.7.0: Xcode 15 Beta 1 support

07 Jun 12:56
1.7.0
d8b5e74

Choose a tag to compare

What’s Changed

Adjusted

  • All clang flag processing has been moved into the execution phase: #2212
  • Application schemes are now sorted before other auto generated schemes: #2211
  • Removed special handling for -strict-concurrency: #2214
  • Removed special handling for -enable-testing: #2215
  • Removed special handling for SWIFT_OPTIMIZATION_LEVEL: #2227
  • Removed special handling of ENABLE_STRICT_OBJC_MSGSEND: #2233
  • Moved generator package directory to /var/tmp: #2252
  • The non-= version of -working-directory is now used: #2254
  • SWIFT_INCLUDE_PATHS is no longer set in BwB mode: #2245 and #2277
  • -I, -explicit-swift-module-map-file, and -vfsoverlay are now set in OTHER_SWIFT_FLAGS: #2256
  • -F is now set in OTHER_SWIFT_FLAGS: #2258 and #2263
  • PROJECT_DIR is now used instead of CURRENT_EXECUTION_ROOT: #2259
  • $(BAZEL_OUT) is now used to reference compile params files: #2260
  • Paths are now always absolute in swift.compile.params and OTHER_SWIFT_FLAGS: #2261, #2265, #2267, and #2269
  • swiftc_stub now errors out instead of warning: #2278
  • Removed unnecessary dependencies from release archive: #2279

Fixed

  • __BAZEL_ variables ar now replaced in swift_debug_sttings.py: #2213
  • Development region is now properly set in PBXProject.knownRegions: #2228
  • Fixed tests in custom schemes when ios_unit_test.bundle_name is used: #2248
  • Fixed test_suite label creation if using bzlmod: #2249
  • Fixed quoting of string defines in {c,cxx}.compile.params: #2262
  • Builds now properly error out when using an .xcworkspace: #2273
  • Fixed swiftc_stub with Xcode 15: #2276
  • Fixed handling of build configuration in custom schemes: #2274

Full Changelog

1.6.0...1.7.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-ZypXUqFtT9uD2HL/4oWfG28vKAZVjqAYU3ZzgXntQh0=

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 = "672a5752a16d4fdb83d872ffe2859f1b6f2f2806558ea0185376738179ed421d",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.7.0/release.tar.gz",
)

load(
    "@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()

1.6.0: Mixed language target merging and `test_suite` support

18 May 18:17
1.6.0
c59ed2a

Choose a tag to compare

What’s Changed

New

  • test_suite targets can now be specified in xcodeproj.top_level_targets: #2184
  • ios_*_test_suite targets can now be specified in xcodeproj.top_level_targets: #2196
  • Added a bzl_library target for xcodeproj files: #2204

Adjusted

  • Optimized project generation: #2129, #2130, #2134, #2138, #2136, #2137, #2174, and #2208
  • Swift and Objective-C targets can now merge into the same terminal target: #2131, #2146, and #2150
  • All symlinks are now resolved to their target file: #2147
  • Schemes are now sorted: #2151
  • The Bazel Build script is now consistently named and structured: #2164 and #2177
  • App extensions can no longer be specified in xcodeproj.top_level_targets: #2183

Fixed

  • Fixed a target consolidation crash: #2195
  • Fixed xcodeproj.xcode_configurations not supporting Starlark build settings with bzlmod enabled: #2191
  • {resource_,}filegroups not belonging to focused targets are now properly excluded from the generated project: #2159

Full Changelog

1.5.1...1.6.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-zpK4eE/lJd1CBCL7CeqOHy3+6J5BukAdM+OmaHGZp9A=⏎

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 = "ce92b8784fe525dd420422fb09ea8e1f2dfee89e41ba401d33e3a6687199a7d0",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.6.0/release.tar.gz",
)

load(
    "@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()