Skip to content

Releases: MobileNativeFoundation/rules_xcodeproj

1.7.1

20 Jun 13:31
1.7.1
35d7b56
Compare
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
Compare
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
Compare
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()

1.5.1

26 Apr 18:23
1.5.1
d941c80
Compare
Choose a tag to compare

What’s Changed

Since 1.5.0

Below are the changes that were in 1.5.0

Adjusted

Fixed

  • Fixed output base when using --config=indexbuild with the command-line API: #2027
  • Fixed create_lldbinit.sh not appending content to a new line: #2036
  • Fixed import_indexstores.sh when using swift.remap_xcode_path: 2064
  • Fixed space handling linkopts: #2062 and #2069
  • Fixed space handling in target.swift-extra-clang-flags: #2070
  • Fixed custom bundle extension handling: #2093

Full Changelog

1.4.0...1.5.1

Contributors

Bzlmod Snippet

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

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

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 = "54cee524abd72db950482ded168dd44397369077b734d4cf4b06f734e10a3e80",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.5.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.5.0: Lots of optimizations

25 Apr 19:07
1.5.0
1b64583
Compare
Choose a tag to compare

What’s Changed

Adjusted

Fixed

  • Fixed output base when using --config=indexbuild with the command-line API: #2027
  • Fixed create_lldbinit.sh not appending content to a new line: #2036
  • Fixed import_indexstores.sh when using swift.remap_xcode_path: 2064
  • Fixed space handling linkopts: #2062 and #2069
  • Fixed space handling in target.swift-extra-clang-flags: #2070
  • Fixed custom bundle extension handling: #2093

Full Changelog

1.4.0...1.5.0

Contributors

Bzlmod Snippet

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

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

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 = "3d6123ae2c1c3181a0c55083f6f1815c9b9bd56cd83da75175320f40966f1cde",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.5.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.4.0

12 Apr 20:09
1.4.0
afceb6b
Compare
Choose a tag to compare

What’s Changed

New

Adjusted

Fixed

  • Fixed Xcode 14.3 support: #1937 and #1981
  • Generating multiple targets in the same workspace now works correctly: #1992, #2000, and #2012
  • Fixed some focused targets issues: #1923, #1930, #1983, #1994, #1995, and #1997
  • Fixed handling of bzlmod external targets: #1926
  • Fixed handling of --force_pic: #1939
  • Fixed CC optimization level flag calculations: #2017
  • Fixed command-line API to work with the dump and shutdown commands: #2019
  • Fixed specs collection: #1966
  • Fixed BwB test action env variables for custom schemes without launch actions: #1955
  • Fixed BwX swift_debug_settings.py generation: #1971

Full Changelog

1.3.3...1.4.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-UP5yA3vVEW4vpTnIo3T//hIEmbylKflRWcmtTyaFWw8=

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 = "50fe72037bd5116e2fa539c8a374fffe120499bca529f95159c9ad4f26855b0f",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.4.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.3.3: Fixes for multiple Xcode configurations

24 Mar 19:04
1.3.3
c5deefc
Compare
Choose a tag to compare

What’s Changed

Since 1.3.2

  • Upgraded rules_swift to 1.7.1 when not using Bzlmod: #1914
  • Upgraded rules_apple to 2.2.0 when not using Bzlmod: #1916
  • Fixed linux builds: #1896
  • Fixed target focusing in less than Bazel 6: #1913
  • Logs are now colorized: #1907
  • Adjusted target merging to account for targets that are present in Xcode: #1903
  • Illegal characters are now removed from custom scheme names: #1915
  • --output_base set on command-line is now respected: #1917

Below are the changes that were in 1.3.0–1.3.2

New

Adjusted

  • Moved generated generators to an external repository: #1876, #1886, and #1887
    • The .rules_xcodeproj directory isn't created anymore, and you can remove it from ignore lists
    • You'll need to change your visibility/package_groups to mention the @rules_xcodeproj//xcodeproj:generated package_group
  • Changed the default name of the repo to @rules_xcodeproj: #1814
    • You should do this as well
    • First change the repo name from com_github_buildbuddy_io_rules_xcodeproj to rules_xcodeproj in your MODULE.bazel or WORKSPACE file
    • Then run this buildifier command: buildozer 'substitute_load com_github_buildbuddy_io_rules_xcodeproj rules_xcodeproj' '//...:*'
  • Optimized project generation to be faster: #1788, #1825, #1826, #1827, #1829, #1830, #1831, #1832, #1833, #1834, #1836, #1838, #1839, #1840, #1841, #1842, #1843, #1845, #1844, #1848, and #1850
  • Bazel targets with conditional dependencies will consolidate to few targets now: #1805
  • User compiler flags are now processed by the cc_toolchain: #1810
  • Improved handling of dSYMs: #1856 and #1767
  • Removed resource files from conditional source files in BwB mode: #1863
  • Some small scheme generation improvements: #1816, #1817, and #1818
  • Improved the efficiency of various Stalark code: #1866, #1867, #1868, #1869, #1871, #1872, #1873, #1874, #1879, #1882, #1884, #1883, and #1885

Fixed

  • Fixed handling of multiline xcodeproj.{pre,post}_build values: #1892
  • Fixed visibility with bzlmod: #1895
    • You should change your visibility/package_groups to mention the @rules_xcodeproj//xcodeproj:generated package_group
  • Fixed extra_files logic for merged targets when using focused targets: #1782
  • Stale files in .xcodeproj/rules_xcodeproj/bazel are now properly deleted: #1803
  • Fixed CC copts tokenization: #1811
  • Fixed bazelisk invoking in runner.sh: #1849
  • Fixed handling of large number of linker flags: #1862
  • Fixed handling of -Xcc -iquote -Xcc path type flags: #1875
  • Fixed handling of some quoted paths in link_params_processor.py: #1877
  • Fixed device-only project generation: #1880

Full Changelog

1.2.0...1.3.3

Contributors

Bzlmod Snippet

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

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

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 = "7967b372bd1777214ce65c87a82ac0630150b7504b443de0315ea52e45758e0c",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.3.3/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.3.2: Fixes for multiple Xcode configurations

17 Mar 18:07
1.3.2
82daf8c
Compare
Choose a tag to compare

What’s Changed

Since 1.3.1

  • Fixed handling of multiline xcodeproj.{pre,post}_build values: #1892
  • Fixed visibility with bzlmod: #1895
    • You should change your visibility/package_groups to mention the @rules_xcodeproj//xcodeproj:generated package_group

Below are the changes that were in 1.3.0–1.3.1

New

Adjusted

  • Moved generated generators to an external repository: #1876, #1886, and #1887
    • The .rules_xcodeproj directory isn't created anymore, and you can remove it from ignore lists
    • You'll need to change your visibility/package_groups to mention the @rules_xcodeproj//xcodeproj:generated package_group
  • Changed the default name of the repo to @rules_xcodeproj: #1814
    • You should do this as well
    • First change the repo name from com_github_buildbuddy_io_rules_xcodeproj to rules_xcodeproj in your MODULE.bazel or WORKSPACE file
    • Then run this buildifier command: buildozer 'substitute_load com_github_buildbuddy_io_rules_xcodeproj rules_xcodeproj' '//...:*'
  • Optimized project generation to be faster: #1788, #1825, #1826, #1827, #1829, #1830, #1831, #1832, #1833, #1834, #1836, #1838, #1839, #1840, #1841, #1842, #1843, #1845, #1844, #1848, and #1850
  • Bazel targets with conditional dependencies will consolidate to few targets now: #1805
  • User compiler flags are now processed by the cc_toolchain: #1810
  • Improved handling of dSYMs: #1856 and #1767
  • Removed resource files from conditional source files in BwB mode: #1863
  • Some small scheme generation improvements: #1816, #1817, and #1818
  • Improved the efficiency of various Stalark code: #1866, #1867, #1868, #1869, #1871, #1872, #1873, #1874, #1879, #1882, #1884, #1883, and #1885

Fixed

  • Fixed extra_files logic for merged targets when using focused targets: #1782
  • Stale files in .xcodeproj/rules_xcodeproj/bazel are now properly deleted: #1803
  • Fixed CC copts tokenization: #1811
  • Fixed bazelisk invoking in runner.sh: #1849
  • Fixed handling of large number of linker flags: #1862
  • Fixed handling of -Xcc -iquote -Xcc path type flags: #1875
  • Fixed handling of some quoted paths in link_params_processor.py: #1877
  • Fixed device-only project generation: #1880

Full Changelog

1.2.0...1.3.2

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-PsKoHe9RqsWd5JJzz2+OPxUalbxPS0iRdQr6dQpVlzs=

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 = "3ec2a81def51aac59de49273cf6f8e3f151a95bc4f4b4891750afa750a55973b",
    url = "https://github.com/MobileNativeFoundation/rules_xcodeproj/releases/download/1.3.2/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.3.1: Multiple Xcode configurations, removed `.rules_xcodeproj/` temporary directory

16 Mar 22:35
1.3.1
24891cf
Compare
Choose a tag to compare

What’s Changed

Since 1.3.0

  • Moved generated generators to an external repository: #1876, #1886, and #1887
    • The .rules_xcodeproj directory isn't created anymore, and you can remove it from ignore lists
    • You'll need to change your visibility/package_groups to mention @rules_xcodeproj_generated//:__subpackages__
  • Improved the efficency of various Stalark code: #1866, #1867, #1868, #1869, #1871, #1872, #1873, #1874, #1879, #1882, #1884, #1883, and #1885
  • Fixed handling of -Xcc -iquote -Xcc path type flags: #1875
  • Fixed handling of some quoted paths in link_params_processor.py: #1877
  • Fixed device-only project generation: #1880

Below are the changes that were in the 1.3.0.

New

Adjusted

  • Changed the default name of the repo to @rules_xcodeproj: #1814
    • You should do this as well
    • First change the repo name from com_github_buildbuddy_io_rules_xcodeproj to rules_xcodeproj in your MODULE.bazel or WORKSPACE file
    • Then run this buildifier command: buildozer 'substitute_load com_github_buildbuddy_io_rules_xcodeproj rules_xcodeproj' '//...:*'
  • Optimized project generation to be faster: #1788, #1825, #1826, #1827, #1829, #1830, #1831, #1832, #1833, #1834, #1836, #1838, #1839, #1840, #1841, #1842, #1843, #1845, #1844, #1848, and #1850
  • Bazel targets with conditional dependencies will consolidate to few targets now: #1805
  • User compiler flags are now processed by the cc_toolchain: #1810
  • Improved handling of dSYMs: #1856 and #1767
  • Removed resource files from conditional source files in BwB mode: #1863
  • Some small scheme generation improvements: #1816, #1817, and #1818

Fixed

  • Fixed extra_files logic for merged targets when using focused targets: #1782
  • Stale files in .xcodeproj/rules_xcodeproj/bazel are now properly deleted: #1803
  • Fixed CC copts tokenization: #1811
  • Fixed bazelisk invoking in runner.sh: #1849
  • Fixed handling of large number of linker flags: #1862

Full Changelog

1.2.0...1.3.1

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-73CgdKdLtet9Sh8XqJ03VdZL5xU8PrQeHW/dIYRP/NQ=

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 = "ef70a074a74bb5eb7d4a1f17a89d3755d64be7153c3eb41e1d6fdd21844ffcd4",
    url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/1.3.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.3.0: Multiple Xcode configurations

15 Mar 18:49
1.3.0
6bc835f
Compare
Choose a tag to compare

What’s Changed

New

Adjusted

  • Changed the default name of the repo to @rules_xcodeproj: #1814
    • You should do this as well
    • First change the repo name from com_github_buildbuddy_io_rules_xcodeproj to rules_xcodeproj in your MODULE.bazel or WORKSPACE file
    • Then run this buildifier command: buildozer 'substitute_load com_github_buildbuddy_io_rules_xcodeproj rules_xcodeproj' '//...:*'
  • Optimized project generation to be faster: #1788, #1825, #1826, #1827, #1829, #1830, #1831, #1832, #1833, #1834, #1836, #1838, #1839, #1840, #1841, #1842, #1843, #1845, #1844, #1848, and #1850
  • Bazel targets with conditional dependencies will consolidate to few targets now: #1805
  • User compiler flags are now processed by the cc_toolchain: #1810
  • Improved handling of dSYMs: #1856 and #1767
  • Removed resource files from conditional source files in BwB mode: #1863
  • Some small scheme generation improvements: #1816, #1817, and #1818

Fixed

  • Fixed extra_files logic for merged targets when using focused targets: #1782
  • Stale files in .xcodeproj/rules_xcodeproj/bazel are now properly deleted: #1803
  • Fixed CC copts tokenization: #1811
  • Fixed bazelisk invoking in runner.sh: #1849
  • Fixed handling of large number of linker flags: #1862

Full Changelog

1.2.0...1.3.0

Contributors

Bzlmod Snippet

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

release.tar.gz’s integrity: sha256-L242QEaWy4wv8o/xeIy7hcHA/ncJyOQRzC9ri6+1DwI=

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 = "2f6e36404696cb8c2ff28ff1788cbb85c1c0fe7709c8e411cc2f6b8bafb50f02",
    url = "https://github.com/buildbuddy-io/rules_xcodeproj/releases/download/1.3.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()