Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic docs for testing local changes on Firefox for iOS. #2697

Merged
merged 1 commit into from
Feb 25, 2020
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ you work on app-services projects. We have:
* [How to set up your local android build environment](./howtos/setup-android-build-environment.md)
* [How to try out local changes in Fenix](./howtos/locally-published-components-in-fenix.md)
* [How to try out local changes in the Reference Browser](./howtos/working-with-reference-browser.md)
* [How to try out local changes in Firefox for iOS](./howtos/locally-published-components-in-ios.md)
* [How to access logs for debugging](./logging.md)
* Process guidelines:
* [How to cut a new release](./howtos/cut-a-new-release.md)
Expand Down
18 changes: 18 additions & 0 deletions docs/howtos/locally-published-components-in-ios.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Using locally-published components in Firefox for iOS

It's often important to test work-in-progress changes to this repo against a real-world
consumer project. Here are our current best-practices for approaching this on iOS:

1. Make a local build of the application-services framework using `./build-carthage.sh`.
1. Checkout and `carthage bootstrap` the consuming app (for example using [these instructions with Firefox for
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool 1. trick 👍

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I learned about this very recently and have been busily applying it everywhere!

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oooh. TIL

iOS](https://github.com/mozilla-mobile/firefox-ios#building-the-code)).
1. In the consuming app, replace the application-services framework with a symlink to your local build. For example:

```
rm -rf Carthage/Build/iOS/MozillaAppServices.framework
ln -s path/to/application-services/Carthage/Build/iOS/Static/MozillaAppServices.framework Carthage/Build/iOS
```
1. Open the consuming app project in XCode and build it from there.

After making changes to application-services code, re-run `./build-carthage.sh` and then rebuild
the consuming app. You may need to clear the XCode cache using Cmd+k if the app doesn't seem to pick up your changes.