Swift HTML JavaScript CSS Objective-C Python Other
Permalink
Failed to load latest commit information.
Account Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
AccountTests Updated README and version number for 7.0/8.0 Feb 21, 2017
Client.xcodeproj Bug 1342993 Migrate L10N Snapshot Tests to Swift 3.0 (#2469) Feb 27, 2017
Client Bug 1331970 - Cleaned up use of explicit unwraps in MenuAnimator (#2459 Feb 27, 2017
ClientTests Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
Docs Migrates codebase to Swift 3.0 Feb 13, 2017
Extensions Bug 1277500 - Deployment was fixed by removal of key from Info.plist.… Feb 24, 2017
FxA Migrates codebase to Swift 3.0 Feb 13, 2017
L10nSnapshotTests Bug 1342993 Migrate L10N Snapshot Tests to Swift 3.0 (#2469) Feb 27, 2017
MarketingUITests No Bug - Enforce the MPL on every single swift file. Feb 21, 2017
Providers Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
ReadingList Updated README and version number for 7.0/8.0 Feb 21, 2017
ReadingListTests Updated README and version number for 7.0/8.0 Feb 21, 2017
Shared Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
SharedTests Updated README and version number for 7.0/8.0 Feb 21, 2017
Storage Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
StoragePerfTests Updated README and version number for 7.0/8.0 Feb 21, 2017
StorageTests Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
Sync Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
SyncTests Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
Telemetry No Bug - Configure all non-development builds to use production Ping … Feb 16, 2017
ThirdParty Migrates codebase to Swift 3.0 Feb 13, 2017
UITests Updated README and version number for 7.0/8.0 Feb 21, 2017
XCUITests No Bug – Regularize graph declaration, to make it easier to contribut… Feb 26, 2017
docs No Bug - General Repo Cleaning (#2293) Jan 9, 2017
fastlane Bug 1342993 Migrate L10N Snapshot Tests to Swift 3.0 (#2469) Feb 27, 2017
.gitattributes No Bug - Exclude Thirdparty files from github language stats. (#2132) Sep 29, 2016
.gitignore Bug 1247633 - add fastlane/README.md to .gitignore Feb 15, 2016
.swiftlint.yml No Bug - Enforce the MPL on every single swift file. Feb 21, 2017
AUTHORS No bug - Add Boris Dušek as an author because he's awesome. Mar 23, 2016
Cartfile Migrates codebase to Swift 3.0 Feb 13, 2017
Cartfile.resolved Migrates codebase to Swift 3.0 Feb 13, 2017
Client-Bridging-Header.h Bug 1307441 - Optionally links in BuddyBuild SDK for Fennec/FennecEnt… Dec 1, 2016
Dangerfile Bug 1293468 - Add Dangerfile to warn about linting errors in Github PRs. Oct 6, 2016
Gemfile Bug 1293468 - Add Dangerfile to warn about linting errors in Github PRs. Oct 6, 2016
ISSUE_TEMPLATE.md No bug - Add an issue template encouraging people to create a bugzill… Jul 23, 2016
L10nSnapshotTests-Info.plist Bug 1247624 - Reset snapshot test schemes so that they run properly u… Feb 16, 2016
LICENSE Initial import Nov 4, 2014
Mocking.swift Bug 1324557 - Collect stats for sync engines for telemetry (excluding… Feb 27, 2017
README.md Updated README and version number for 7.0/8.0 Feb 21, 2017
bootstrap.sh No bug - Fix for bootstrap.sh not dealing well with empty Carthage di… May 5, 2016
buddybuild_postclone.sh Swiftlint has a lot of new rules. Make sure to update swiftlint befor… Feb 18, 2017
l10n-screenshots.sh Bug 1342993 Migrate L10N Snapshot Tests to Swift 3.0 (#2469) Feb 27, 2017
setup_build_tools.sh Add setup_build_tools.sh to root of repo so we can setup build tools … Jan 13, 2016
shipping_locales.txt Set up shipping_locales on master channel (#2267) Dec 7, 2016

README.md

Firefox for iOS codebeat badge BuddyBuild

Download on the App Store.

This branch

This branch is for mainline development that will ship in v8.0.

This branch works with Xcode 8.2.1, and supports iOS 9.x and 10.

This branch is written in Swift 3.0.

Please make sure you aim your pull requests in the right direction.

For bug fixes and features for the upcoming v7.0 release, please see the v7.x branch.

Getting involved

We encourage you to participate in this open source project. We love Pull Requests, Bug Reports, ideas, (security) code reviews or any kind of positive contribution. Please read the Community Participation Guidelines.

Want to contribute but don't know where to start? Here is a list of Good First Bugs.

Likewise, the design and UX is still in flux. Don't get attached to them. They will change tomorrow! https://mozilla.invisionapp.com/share/HA254M642#/screens/63057282?maintainScrollPosition=false

GitHub issues are enabled on this repository, but we encourage you to file a bug (see above). We'll accept issues to track work items that don't yet have a pull request, and also as an early funnel for bug reports, but Bugzilla is the source of truth for lots of good reasons — issues will be shifted into Bugzilla, and pull requests need a bug number.

Building the code

As of Sept. 16, 2016, this project requires Xcode 8.

  1. Install the latest Xcode developer tools from Apple.
  2. Install Carthage

    brew update
    brew install carthage
  3. Clone the repository:

    git clone https://github.com/mozilla-mobile/firefox-ios
  4. Pull in the project dependencies:

    cd firefox-ios
    sh ./bootstrap.sh
  5. Open Client.xcodeproj in Xcode.

  6. Build the Fennec scheme in Xcode.

It is possible to use App Code instead of Xcode, but you will still require the Xcode developer tools.

Contributor guidelines

Creating a pull request

  • All pull requests must be associated with a specific bug in Bugzilla.
    • If a bug corresponding to the fix does not yet exist, please file it.
    • You'll need to be logged in to create/update bugs, but note that Bugzilla allows you to sign in with your GitHub account.
  • Use the bug number/title as the name of pull request. For example, a pull request for bug 1135920 would be titled "Bug 1135920 - Create a top sites panel".
  • Finally, upload an attachment to the bug pointing to the GitHub pull request.
    1. Click Add an attachment.
    2. Next to File, click Paste text as attachment.
    3. Paste the URL of the GitHub pull request.
    4. Enter "Pull request" as the description.
    5. Finally, flag the pull request for review. Set the review field to "?", then enter the name of the person you'd like to review your patch. If you don't know whom to add as the reviewer, click suggested reviewers and select a name from the dropdown list.

Pro tip: To simplify the attachment step, install the Github Bugzilla Tweaks addon. This will add a button that takes care of the first four attachment steps for you.

Swift style

Whitespace

  • New code should not contain any trailing whitespace.
  • We recommend enabling both the "Automatically trim trailing whitespace" and "Including whitespace-only lines" preferences in Xcode (under Text Editing).
  • git rebase --whitespace=fix can also be used to remove whitespace from your commits before issuing a pull request.

Commits

  • Each commit should have a single clear purpose. If a commit contains multiple unrelated changes, those changes should be split into separate commits.
  • If a commit requires another commit to build properly, those commits should be squashed.
  • Follow-up commits for any review comments should be squashed. Do not include "Fixed PR comments", merge commits, or other "temporary" commits in pull requests.