mirror of
https://github.com/ProtonMail/ios-mail.git
synced 2026-05-15 09:50:39 +00:00
ac062e361cd3931e419b74379b1b4441167e9316
Mail iOS App for the Engineering Transformation project
Copyright (c) 2024 Proton Technologies AG
Setup instructions
- Make sure you have access to the following repositories, if you don't ask the team:
- https://gitlab.protontech.ch/apple/inbox/mail
- https://gitlab.protontech.ch/apple/shared/et-protoncore
- https://gitlab.protontech.ch/apple/shared/ProtonUIFoundations
- Install Xcode (>=16.3)
- Clone the repository
- Add a
.envfile with necessary secrets. The file is stored in a shared Pass vault. Request access to the team. - Run
./scripts/setup.shto generate the xcodeproj file. - Open
ProtonMail.xcodeproj
Troubleshooting
- Once you open Xcode, if dependencies fail to resolve close Xcode and resolve them from the Terminal:
xcodebuild -resolvePackageDependencies -project ProtonMail.xcodeproj
UI Tests setup instructions
- Clone the mocks repository locally https://gitlab.protontech.ch/android/mail/mail-apps-network-mocks. It's recommended to clone the mocks repository into the same parent directory as this project.
- From the Mail iOS App project root, run
./scripts/uitests/setup-mock-network-assets.sh setup-local - Follow the instructions and regenerate the project with
xcodegen.
Debug helpers
How to Access the Rust-Core SQLite Databases in the Simulator
- Locate the simulator files by navigating to
~/Library/Developer/CoreSimulator/Devices/<simulator device id>. - If you're unsure about the device id, you can find it in the log or by accessing it through
Xcode > Window > Devices and Simulators. - Once in the device directory, conduct a recursive search for
session.dbwithin thedatadirectory. This will unveil theApplication Supportfolder housing all rust-core databases. - Use your preferred SQLite inspection tool to inspect the SQLite files.
Description
Languages
Swift
97.2%
HTML
2.1%
Objective-C
0.2%
JavaScript
0.2%
Python
0.1%
Other
0.1%