Skip to content

Commit 31725ba

Browse files
authored
Merge branch 'main' into nix-fixes
2 parents 1af73ca + cd450a8 commit 31725ba

File tree

602 files changed

+3313
-151617
lines changed

Some content is hidden

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

602 files changed

+3313
-151617
lines changed

.bcr/metadata.template.json

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,6 @@
66
"github": "brentleyjones",
77
"name": "Brentley Jones"
88
},
9-
{
10-
"email": "me@patrickbalestra.com",
11-
"github": "BalestraPatrick",
12-
"name": "Patrick Balestra"
13-
},
149
{
1510
"email": "heyluispadron@gmail.com",
1611
"github": "luispadron",

.gitattributes

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +0,0 @@
1-
# Mark fixtures as generated
2-
test/fixtures/*/*.xcodeproj/** linguist-generated
3-
test/fixtures/*/*_custom_xcode_schemes.json linguist-generated
4-
test/fixtures/*/*_spec.json linguist-generated
5-
test/fixtures/*/generated/** linguist-generated
6-
examples/*/test/fixtures/*.xcodeproj/** linguist-generated
7-
examples/*/test/fixtures/*_custom_xcode_schemes.json linguist-generated
8-
examples/*/test/fixtures/*_spec.json linguist-generated
9-
examples/*/test/fixtures/generated/** linguist-generated

BUILD

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,9 +42,7 @@ filegroup(
4242
_BUILDIFIER_EXCLUDE_PATTERNS = [
4343
"./.git/*",
4444
"./xcodeproj/internal/templates/*",
45-
"./test/fixtures/**/generated/*",
4645
"**/bazel-output-base/*",
47-
"**/test/fixtures/generated/*",
4846
"**/.rules_xcodeproj/*",
4947
"**/*.xcodeproj/*",
5048
]

CHANGELOG.md

Lines changed: 1804 additions & 0 deletions
Large diffs are not rendered by default.

CONTRIBUTING.md

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,20 @@
1-
## Pull Requests
1+
# Contributing guide
2+
3+
## Pull requests
24

35
All changes, no matter how trivial, must be done via pull request. Commits
46
should never be made directly on the `main` branch. Prefer rebasing over
5-
merging `main` into your PR branch to update it and resolve conflicts.
7+
merging `main` into your pull request branch to update it and resolve conflicts.
68

7-
## Building And Running Locally
9+
## Building and running locally
810

911
1. `git clone https://github.com/MobileNativeFoundation/rules_xcodeproj.git`
10-
1. `cd rules_xcodeproj`
11-
1. `bazel run //tools/generators/legacy:xcodeproj` to generate an Xcode project
12-
and develop in Xcode, or just open the directory in your favourite text
13-
editor.
14-
1. Build with Xcode:
15-
1. Select the `generator` scheme to compile the executable.
16-
1. Select the `tests` scheme to run the tests.
17-
1. Build with Bazel:
18-
1. `bazel build //tools/generators/legacy:generator` to compile the executable.
19-
1. `bazel test //tools/generators/legacy/test/...` to run the tests.
12+
2. `cd rules_xcodeproj`
13+
3. `bazel run //tools:xcodeproj` to generate an Xcode project and develop in
14+
Xcode, or just open the directory in your favorite text editor.
15+
4. Building locally:
16+
* `bazel build //tools/...` to compile the tools.
17+
* `bazel test //tools/...` to run the tests.
2018

2119
## Developing
2220

@@ -32,38 +30,41 @@ into the directory if the example app is in a separate `WORKSPACE` with
3230
`cd examples/integration; bazel run //:xcodeproj`.
3331

3432
You can run the internal tests as well:
35-
`bazel test //test/internal/xcschemes:all`
33+
34+
```
35+
bazel test //test/internal/xcschemes:all
36+
```
3637

3738
You can even test your changes in a separate project living outside this
38-
repo by overriding the module or repository in your `.bazelrc`.
39+
repo by overriding the module or repository in your `.bazelrc`:
40+
3941
```
4042
# With bzlmod:
4143
build --override_module=rules_xcodeproj=/path/to/rules_xcodeproj
4244
# Without bzlmod:
4345
build --override_repository=rules_xcodeproj=/path/to/rules_xcodeproj
4446
```
47+
4548
It's important to add it to the `.bazelrc` instead of passing it as a
4649
flag to ensure all invocations will use the same configuration.
4750

48-
## Test fixtures
49-
50-
While developing, you might need to regenerate the test fixtures.
51-
You can do so with `./test/update_all_fixtures.sh`.
52-
53-
All of the test fixture projects aren't buildable, because we use empty files in
54-
place of things that are the same in every project. If you need to verify
55-
anything in those projects, regenerate them locally.
56-
5751
## Updating docs
5852

59-
Run `./docs/update_docs.sh` to generate to documentation based on the comments.
53+
Run `docs/update_docs.sh` to generate to documentation based on the comments.
6054

6155
## Linting and formatting
6256

63-
Before submitting your PR you should run the linter and formatter to
64-
make sure everything if formatted properly in your bazel files
57+
Before submitting your pull request you should run the linter and formatter to
58+
make sure everything if formatted properly in your bazel files:
6559

66-
`bazel run //:buildifier.fix`
60+
```
61+
bazel run //:buildifier.fix
62+
```
6763

68-
you can run `bazel run //:buildifier.check` to make sure your formatting
64+
You can run `bazel run //:buildifier.check` to make sure your formatting
6965
is correct.
66+
67+
## Changelog
68+
69+
If warranted, add an entry to `CHANGELOG.md`. Try to predict the pull request
70+
number, or adjust it after opening the pull request.

MODULE.bazel

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
module(
22
name = "rules_xcodeproj",
33
version = "0.0.0",
4-
bazel_compatibility = [">=6.3.0"],
4+
bazel_compatibility = [">=7.0.0"],
55
compatibility_level = 1,
66
repo_name = "rules_xcodeproj",
77
)
@@ -10,13 +10,12 @@ bazel_dep(name = "bazel_features", version = "1.3.0")
1010
bazel_dep(name = "bazel_skylib", version = "1.3.0")
1111
bazel_dep(
1212
name = "rules_swift",
13-
version = "2.8.0",
14-
max_compatibility_level = 2,
13+
version = "3.1.1",
1514
repo_name = "build_bazel_rules_swift",
1615
)
1716
bazel_dep(
1817
name = "rules_apple",
19-
version = "3.16.1",
18+
version = "4.0.1",
2019
repo_name = "build_bazel_rules_apple",
2120
)
2221
bazel_dep(name = "rules_python", version = "0.27.1")
@@ -49,6 +48,11 @@ bazel_dep(
4948
version = "1.0.1",
5049
dev_dependency = True,
5150
)
51+
bazel_dep(
52+
name = "rules_shell",
53+
version = "0.5.0",
54+
dev_dependency = True,
55+
)
5256
bazel_dep(
5357
name = "stardoc",
5458
version = "0.6.1",
@@ -73,12 +77,9 @@ use_repo(
7377
non_module_deps,
7478
"com_github_apple_swift_argument_parser",
7579
"com_github_apple_swift_collections",
76-
"com_github_kylef_pathkit",
7780
"com_github_michaeleisel_jjliso8601dateformatter",
7881
"com_github_michaeleisel_zippyjson",
7982
"com_github_michaeleisel_zippyjsoncfamily",
80-
"com_github_tadija_aexml",
81-
"com_github_tuist_xcodeproj",
8283
)
8384

8485
dev_non_module_deps = use_extension(

README.md

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,13 @@ on it, or [file a new issue][file-an-issue]!
3030
- Debugging
3131
- Runtime sanitizers
3232
- Inline warnings and errors
33-
- Fix-its (currently only in BwX mode)
3433
- Test selection and running
3534
- Embedded Targets (App Clips, App Extensions, and Watch Apps)
3635
- Dynamic frameworks
3736
- Xcode Previews
3837
- Focused Projects
3938
- Include a subset of your targets in Xcode
4039
- Unfocused targets are built with Bazel
41-
- Works in BwX mode as well!
4240
- Comprehensive Bazel rules support
4341
- Core Bazel C/C++/Objective-C
4442
- rules_swift
@@ -80,7 +78,8 @@ to include it in the list above.
8078

8179
| rules_xcodeproj | Bazel | [rules_apple][1] | [rules_swift][2] | Xcode | macOS | Supporting Branch |
8280
| :-------------: | :---: | :--------------: | :--------------: | :---: | :---: | :---------------: |
83-
| 2.10.0+ | 7.0-9.x | 3.16.1+ | 1.18.0+ | 13.3–15.x | 13–14.x | `main` |
81+
| 2.13.0+ | 7.0-9.x | 4.0.0+ | 3.0.2+ | 13.3–16.x | 13–15.x | `main` |
82+
| 2.10.0+ | 7.0-9.x | 3.16.1+ | 1.18.0+ | 13.3–16.x | 13–15.x | - |
8483
| 1.17.0+ | 6.3-7.x | 1.0.1–2.x | 1.x | 13.3–15.x | 13–14.x | - |
8584
| 1.16.0 | 6.3-7.x | 1.0.1–2.x | 1.x | 13.3–15.2 | 13–14.x | - |
8685
| 1.14.0-1.15.0 | 6.1-7.x | 1.0.1–2.x | 1.x | 13.3–15.2 | 13–14.x | - |

bazel_7.bazelrc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
11
common --incompatible_disallow_empty_glob
2+
3+
build:cache --experimental_remote_cache_async
4+
build:cache --experimental_remote_cache_compression

bazel_8.bazelrc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
build:cache --remote_cache_async
2+
build:cache --remote_cache_compression

bazel_9.bazelrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# TODO: Remove once rules_apple is updated to support the new test toolchain
2+
common --@bazel_tools//tools/test:incompatible_use_default_test_toolchain=no
3+
4+
build:cache --remote_cache_async
5+
build:cache --remote_cache_compression

0 commit comments

Comments
 (0)