summaryrefslogtreecommitdiffhomepage
path: root/ios
AgeCommit message (Collapse)AuthorFilesLines
2023-08-31Add buildscripts for CIEmīls1-28/+0
2023-08-30Remove temporarily Wireguard obfuscation options for test flight buildBug Magnet3-4/+40
2023-08-30Use swiftlint auto fix for trivial lint violationsBug Magnet32-55/+55
2023-08-29fix some linting violationsMojgan22-584/+575
2023-08-29Fix screenshot script and testplanJon Petersson7-23/+51
2023-08-29Move AnyTransportProvider under REST namespace for consistencyAndrej Mihajlov3-9/+11
2023-08-29REST: add executor testsAndrej Mihajlov6-2/+264
2023-08-29Introduce RESTRequestExecutor to support async flowsAndrej Mihajlov7-22/+150
2023-08-28Introduce Duration type that mimicks native iOS16 DurationJon Petersson33-199/+367
2023-08-28Update shadowsocks to 1.16Emīls2-5/+3
2023-08-25Add build phase to run swiftlintAndrej Mihajlov1-0/+40
2023-08-25Change CachedAddresses schema to invalidate cache when updating from 2023.2 ↵Andrej Mihajlov3-67/+48
to 2023.3 We had a couple of reports pointing at persistent timeouts and SSL errors in API communication using any transport. The user that happened to be using a broken bridge IP while on 2023.2 would keep using it indefinitely after update to 2023.3 because we used to move the currently used IP to the first position in the list. After update to 2023.3 we would only use that first IP.
2023-08-25AddressCache: use mutex lock in loadFromFile() and log all errors except ↵Andrej Mihajlov1-8/+15
when no file on disk
2023-08-24Return RESTTransport from TransportProviderAndrej Mihajlov12-81/+95
Ensures that RESTTransport returns consistent values throughout execution and solves the following issues: - Dynamic implementation of RESTTransport implemented by TransportProvider may yield different values (i.e RESTTransport.name) when accessed at different times during network operation execution - Current implementation of RESTTransport on TransportProvider yields "TransportProvider" before the first call to sendRequest() which is not correct behavior becuase we always log the name of transport that's being used before sending request. - When starting the app with network link conditioner blocking traffic, TransportProvider seems to print "TransportProvider" indefinitely even after the first call to sendRequest().
2023-08-24Eliminate force unwrap of HTTPURLResponseAndrej Mihajlov3-49/+32
2023-08-24Swiftformat: replace deprecated sortedImports with sortImportsAndrej Mihajlov1-1/+1
2023-08-23Introduce new Routing framework for high level router and coordinator codeJon Petersson37-154/+857
2023-08-23implement in-app purchase in new account flowMojgan36-337/+839
2023-08-22Fix void_function_in_ternary violationBug Magnet3-8/+20
2023-08-22Fix swiftlint mark violationBug Magnet1-1/+1
2023-08-21Fix nsobject_prefer_isequal swiftlint violationBug Magnet1-2/+3
2023-08-21Fix empty_enum_argument swiftlint violationBug Magnet1-1/+1
2023-08-21Fix computed_accessors_order swiftlint violationBug Magnet5-37/+37
2023-08-18Convert Xcode schemes to use test planAndrej Mihajlov11-27/+237
2023-08-18Enable APPLICATION_EXTENSION_API_ONLY for PacketTunnelCoreAndrej Mihajlov1-0/+2
2023-08-18Do not embed MullvadLogging into PacketTunnelCoreAndrej Mihajlov1-13/+0
2023-08-18Enable parallel testing for PacketTunnelCoreTestsAndrej Mihajlov2-0/+2
2023-08-18Run xcodebuild manually, pass output to xcbeautifyAndrej Mihajlov1-0/+8
- Disable: MullvadVPNScreenshots -- this is the target used by fastlane snapshot. This won't work on CI and needs further discussion - Add PacketTunnelCoreTests to test plan
2023-08-17PacketTunnel: refactor parsing of start optionsAndrej Mihajlov3-32/+74
2023-08-17Log reconnection attemptsAndrej Mihajlov1-1/+17
2023-08-17TunnelMonitor: add initial connection testAndrej Mihajlov8-2/+403
2023-08-17Extract router and break it down on smaller filesAndrej Mihajlov6-361/+419
2023-08-17Conforma to AppRouteProtocol and AppRouteGroupProtocol directlyAndrej Mihajlov1-5/+2
2023-08-17Add AppRouteGroupProtocol.modalLevel, add default impl of ComparableAndrej Mihajlov1-5/+19
2023-08-17Make router more genericAndrej Mihajlov2-69/+96
2023-08-16Ensure the app fetches account data whenever it enters the new account flow viewJon Petersson5-6/+91
2023-08-16Introduce PacketTunnelCore frameworkAndrej Mihajlov21-284/+939
- Move TunnelMonitor, Pinger, WgStats into new framework - Add TunnelMonitorProtocol, TunnelDeviceInfoProtocol, PingerProtocol protocols to improve testing/mocking - Rework TunnelMonitor and Pinger to use block-based event handler instead of delegate - Drop Objective-C bridging header from PacketTunnel - Add tests for Pinger
2023-08-16Remove comment that's about to become stale with upcoming refactoringAndrej Mihajlov1-5/+0
2023-08-16Add modalTransitionStyle in presentation configurationAndrej Mihajlov1-0/+5
2023-08-16Pass animated flag when presenting changelogAndrej Mihajlov1-3/+3
2023-08-16Promote changelog to modal routeAndrej Mihajlov3-69/+104
2023-08-11Silence swiftlint errors, for nowBug Magnet4-1/+11
2023-08-11Add a swiftlint configuration and a github action for running swiftlintBug Magnet1-0/+49
Use the same swiftlint version as on brew
2023-08-10Remove iOS 13 codeAndrej Mihajlov9-49/+13
2023-08-10Rework change log to be compliant with our designJon Petersson13-279/+161
2023-08-10Fix notification action button layout priority on iOS14Jon Petersson1-5/+2
2023-08-09Add an accessibilityCustomActionName to SettingsHeaderViewBug Magnet2-18/+29
2023-08-09Prevent deselection of rowsBug Magnet1-0/+4
2023-08-09Add a UI for wireguard obfuscation preferencesBug Magnet5-14/+191
2023-08-08PacketTunnel: fix missing call to completion handler in onSleep()Andrej Mihajlov2-4/+3