Skip to content

Commit 7177a0a

Browse files
maiosgithub-actions[bot]
authored andcommitted
[maps-ios] Update development doc (#5039)
cc @mapbox/maps-ios GitOrigin-RevId: e85f3579797c6ab07f5dcf5c7c87f7cfc42da7df
1 parent 6144aae commit 7177a0a

File tree

1 file changed

+10
-30
lines changed

1 file changed

+10
-30
lines changed

DEVELOPING.md

Lines changed: 10 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ This guide contains the steps required to contribute to the development of this
44

55
* [Setting Up a Development Environment](#setting-up-a-development-environment)
66
* [Updating Dependency Versions](#updating-dependency-versions)
7-
* [Configuring CircleCI](#configuring-circleci)
87
* [Running Unit Tests On Devices](#running-unit-tests-on-devices)
98
* [Running Integration Tests](#running-integration-tests)
109
* [Making an Example](#making-an-example)
@@ -19,8 +18,8 @@ running the test app in simulators:
1918

2019
This project:
2120

22-
1. requires [a valid ~/.netrc file](https://docs.mapbox.com/ios/maps/guides/install/#configure-credentials)
23-
to fetch dependencies.
21+
1. requires a valid ~/.netrc file with a Mapbox [**secret token**](https://docs.mapbox.com/help/dive-deeper/access-tokens/#secret-tokens) to download binary dependencies.
22+
**Note**: A public token (pk.*) is not sufficient for downloading binary dependencies.
2423

2524
2. reads a Mapbox access token from a [file at `~/mapbox`](https://docs.mapbox.com/help/troubleshooting/private-access-token-android-and-ios/#ios)
2625
to enable tests and apps to access Mapbox APIs.
@@ -33,15 +32,17 @@ This project:
3332
to manage dependencies for development. CocoaPods is supported for *consuming*
3433
the SDK.
3534

36-
5. Install pre-commit hooks
35+
5. uses [Carthage](https://github.com/Carthage/Carthage) to manage binary dependencies that are automatically downloaded when running xcodegen.
36+
37+
6. Install pre-commit hooks
3738
```bash
38-
brew install xcodegen swiftlint
39+
brew install xcodegen swiftlint carthage
3940
pip install pre-commit
4041

4142
pre-commit install # Installs the pre-commit hooks
4243
```
4344

44-
6. uses CircleCI and Firebase Test Lab for continuous integration.
45+
7. uses CircleCI and Firebase Test Lab for continuous integration.
4546

4647
### Accessing the Maps SDK's Source
4748

@@ -71,36 +72,15 @@ In order to use the debug app, run the `DebugApp` scheme.
7172
* Update the dependency versions in `MapboxMaps.podspec`
7273
* Update the dependency versions in `scripts/release/packager/versions.json`
7374

74-
## Configuring CircleCI
75-
76-
You can run `make validate` to ensure you've formatted the changes to the
77-
CircleCI config file correctly. This make target will install the
78-
[CircleCI command line interface](https://circleci.com/docs/2.0/local-cli/) to
79-
validate `.circleci/config.yml`, and run `circleci config validate`.
80-
81-
## Running Unit Tests On Devices
82-
83-
To run unit tests on an iOS device there are two options:
75+
## Running Unit Tests On Devices locally
8476

85-
1. Run locally:
86-
87-
* Install [xcodegen](https://github.com/yonaskolb/XcodeGen).
88-
* Run `$ xcodegen` in the root of the repo.
89-
* Open the resulting `MapboxMaps.xcodeproj`.
77+
* Follow the [Building the Maps SDK](#building-the-maps-sdk) steps above.
9078
* Test the `MapboxTestHost` scheme.
9179

92-
2. Run in CI:
93-
94-
* Open the optional-tests workflow for your branch in CircleCI
95-
* Approve the `run-tests?` job to trigger running unit tests on
96-
Firebase Test Lab
97-
* Approve the `run-examples-tests?` job to trigger running examples tests on
98-
Firebase Test Lab
99-
10080
## Running Integration Tests
10181

10282
Integration tests typically require a Metal device, so these tests can only run
103-
locally and on Firebase Test Lab. They are skipped when running on CircleCI
83+
locally and on Firebase Test Lab. They are skipped when running on CI
10484
inside of a VM and when running on simulators < iOS 13 (iOS 13+ has a simulated
10585
Metal device.)
10686

0 commit comments

Comments
 (0)