Hello iOS mobile-dev! As part of our going faster initiative, I've been working on cleaning up our Xcode project and scheme to better match our trains going forward. In getting our configurations setup for this I came across a variety of duplicated settings and unused schemes that we haven't maintained for a while. This morning I've landed the first chunk of work in getting our project building better by merging in the project settings clean up and refactor code in https://github.com/mozilla/firefox-ios/pull/1429.
Here are some things you can look forward to! * No more random warnings! When building/archiving the project, a variety of warnings were appearing for FxA and other targets. These warnings have been resolved with only a few appearing now for our Client target which are a lot more meaningful. * Easier configuration for personal/external team developers. Contributors before the patch were required to go through 10+ files and update strings in various build configurations. Now with the consolidated entitlement files and .xcconfig setup, contributors now only need to update the MOZ_BUNDLE_ID property in Fennec.xcconfig, select their team, and build! * Channel configuration now in one place. The old model of using a BaseConfig.xcconfig file which contained 'common' properties and seperate .xcconfig files for each target caused confusion because when viewing a configuration for particular channel, you weren't seeing all of the properties that were being set. BaseConfig.xcconfig has now been removed and each .xcconfig file contains all of the configurable information you need. * Cleaned up build settings for all targets. Before, many of the targets overrode the project settings with a duplicate version of the setting it was overriding. The targets have now been cleaned up and all duplicated settings have been refactored into Project level settings. This means that each target's custom build settings are now more relevant and the amount of setting noise has been significantly reduced. ** Renamed Client scheme to Fennec to fit more with our development terminology. The target is still named 'Client' since it reflects the client application but the application/scheme now matches the build name. Next steps: * Update our fastlane tooling to reflect the new channels that we can build along with allowing enterprise/production variants to be built. * Align the current l10n/FennecAurora builds with our release channel process to keep our branching/versioning in sync. Lastly, please let me know if you run into issues or regressions with building as well as any feedback. Updated documentation can be found here: https://github.com/mozilla/firefox-ios/blob/master/README.md https://github.com/mozilla/firefox-ios/blob/master/BUILDING.md Thanks!
_______________________________________________ mobile-firefox-dev mailing list mobile-firefox-dev@mozilla.org https://mail.mozilla.org/listinfo/mobile-firefox-dev