Skip to content

Commit 0a5d081

Browse files
authored
Remove support for xcodeproj rules (#883)
This PR removes the xcodeproj rules and related code and tests. These have been marked legacy for over a year and are no longer being maintained. To simplify the codebase and contributing we are removing these rules and recommending folks to use rules_xcodeproj.
1 parent 28d97a9 commit 0a5d081

235 files changed

Lines changed: 3 additions & 23302 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.bazelrc

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,15 @@ common --enable_bzlmod
44
# Spawn strategy required for some tests
55
build --spawn_strategy=standalone
66

7-
# Setup Xcode configuration for xcodeproj tests
7+
# Setup Xcode configuration.
88
build --xcode_version_config=//:host_xcodes
99

1010
build --experimental_strict_conflict_checks
1111

1212
build --verbose_failures # Print the full command line for commands that failed
1313
build --test_output=errors # Prints log file output to the console on failure
1414

15-
# Enable dbg compilation mode in this repo, so we can test xcodeproj-built
16-
# binaries contain debug symbol tables.
15+
# Enable dbg compilation mode in this repo.
1716
build --compilation_mode=dbg
1817

1918
# Use 'worker' strategy for swift compilation

.gitattributes

Lines changed: 0 additions & 1 deletion
This file was deleted.

.github/workflows/tests.yml

Lines changed: 0 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -132,57 +132,6 @@ jobs:
132132
name: bazel-testlogs
133133
path: bazel-testlogs
134134

135-
xcodeproj_tests:
136-
name: Legacy xcodeproj tests (Bazel ${{ matrix.bazel_version }} / Xcode ${{ matrix.xcode_version }})
137-
runs-on: macos-14
138-
strategy:
139-
fail-fast: false
140-
matrix:
141-
bazel_version: [6.5.0] # Only test on a single Bazel version as fixtures require updates across Bazel verisons
142-
xcode_version: [15.2]
143-
env:
144-
XCODE_VERSION: ${{ matrix.xcode_version }}
145-
USE_BAZEL_VERSION: ${{ matrix.bazel_version }}
146-
steps:
147-
- uses: actions/checkout@v4
148-
- name: Preflight Env
149-
run: .github/workflows/preflight_env.sh --no-bzlmod
150-
- name: Run tests
151-
run: ./tests/xcodeproj-tests.sh --run && ./tests/test-tests.sh
152-
- uses: actions/upload-artifact@v4
153-
if: failure()
154-
with:
155-
name: bazel-testlogs
156-
path: bazel-testlogs
157-
158-
lldb_ios_tests_xcode:
159-
name: LLDB tests (Bazel ${{ matrix.bazel_version }} / Xcode ${{ matrix.xcode_version }})
160-
runs-on: macos-14
161-
strategy:
162-
fail-fast: false
163-
matrix:
164-
bazel_version: [6.5.0, 7.1.0]
165-
xcode_version: [15.2]
166-
env:
167-
XCODE_VERSION: ${{ matrix.xcode_version }}
168-
USE_BAZEL_VERSION: ${{ matrix.bazel_version }}
169-
steps:
170-
- uses: actions/checkout@v4
171-
- name: Preflight Env
172-
run: .github/workflows/preflight_env.sh
173-
- name: Run tests
174-
run: |
175-
bazelisk test \
176-
--config=ios_lldb_test \
177-
-- \
178-
tests/ios/lldb/app:objc_app_po_test \
179-
tests/ios/lldb/app:objc_app_variable_test
180-
- uses: actions/upload-artifact@v4
181-
if: failure()
182-
with:
183-
name: bazel-testlogs
184-
path: bazel-testlogs
185-
186135
multi_arch_support:
187136
# i386 was removed on rules_apple 3.x.x - this test case needs reworking
188137
# to exemplify fat binaries on the latest version

.gitignore

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,6 @@
11
/MODULE.bazel.lock
22
bazel-*
33
.idea
4-
tests/macos/xcodeproj/**/xcuserdata
5-
tests/ios/xcodeproj/**/xcuserdata
6-
**/*.xcodeproj/bazelinstallers/index-import
74
/tests/ios/Index/
85
/tests/macos/Index/
96
/tests/index-import.pid

MODULE.bazel

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,6 @@ non_module_deps = use_extension("//rules:module_extensions.bzl", "non_module_dep
6363
use_repo(
6464
non_module_deps,
6565
"arm64-to-sim",
66-
"com_github_yonaskolb_xcodegen",
6766
"tart",
6867
)
6968

README.md

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -133,23 +133,7 @@ ios_application(
133133

134134
### Xcode project generation
135135

136-
There are currently two options to generate Xcode projects that build with Bazel.
137-
138-
`rules_ios` has its own project generator that is considered stable and ready to be used in production. Here's a minimal example of how to load it in your `BUILD` file:
139-
140-
```python
141-
load("@build_bazel_rules_ios//rules:xcodeproj.bzl", "xcodeproj")
142-
143-
xcodeproj(
144-
name = "MyXcode",
145-
bazel_path = "bazelisk",
146-
deps = [ ":iOS-App"]
147-
)
148-
```
149-
150-
Checkout [legacy_xcodeproj.bzl](https://github.com/bazel-ios/rules_ios/blob/master/rules/legacy_xcodeproj.bzl) for available attributes.
151-
152-
Alternatively, [rules_xcodeproj](https://github.com/MobileNativeFoundation/rules_xcodeproj) is another great generator and we're working with them to better integrate it with `rules_ios`. Checkout [examples/rules_ios](https://github.com/MobileNativeFoundation/rules_xcodeproj/tree/main/examples/rules_ios) for examples of how to use it with `rules_ios`.
136+
See [rules_xcodeproj](https://github.com/MobileNativeFoundation/rules_xcodeproj).
153137

154138
### Frameworks
155139

docs/index_while_building.md

Lines changed: 0 additions & 140 deletions
This file was deleted.

0 commit comments

Comments
 (0)