Skip to content

Commit

Permalink
Fix/transaction crashes 240 (#243)
Browse files Browse the repository at this point in the history
* Added note

Signed-off-by: kcw-grunt <[email protected]>

* fix: invalid data and incorrect subscripting in .

* refactor:  function inside WalletCoordinator

* fix:  tableview called in the background thread

* auto linter changes

Updated the timer intervals to allow more time for CPU to process

Signed-off-by: kcw-grunt <[email protected]>

* version bump

Signed-off-by: kcw-grunt <[email protected]>

* added privacy nutrition label

version bump

Signed-off-by: kcw-grunt <[email protected]>

* Refactors

- Added enum Error for throws
- Reset the PartnerData plist code
- reset tags

Signed-off-by: kcw-grunt <[email protected]>

---------

Signed-off-by: kcw-grunt <[email protected]>
Co-authored-by: Hassan Ashraf <[email protected]>
  • Loading branch information
kcw-grunt and hassanashraf92 committed May 11, 2024
1 parent 9038d6e commit 28cd0d5
Show file tree
Hide file tree
Showing 139 changed files with 6,006 additions and 779 deletions.
104 changes: 104 additions & 0 deletions PrivacyInfo.xcprivacy
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypes</key>
<array>
<dict>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeOtherDiagnosticData</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypePerformanceData</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeOtherUsageData</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeDeviceID</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeProductInteraction</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeCrashData</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string></string>
</array>
</dict>
</array>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>CA92.1</string>
</array>
</dict>
</array>
</dict>
</plist>
5,303 changes: 5,303 additions & 0 deletions litewallet.xcodeproj/project.pbxproj

Large diffs are not rendered by default.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>
3 changes: 1 addition & 2 deletions litewallet/AddressFieldView.swift
Original file line number Diff line number Diff line change
Expand Up @@ -53,8 +53,7 @@ struct AddressFieldView: UIViewRepresentable {
parent = textField
}

func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool
{
func textField(_ textField: UITextField, shouldChangeCharactersIn range: NSRange, replacementString string: String) -> Bool {
if let currentValue = textField.text as NSString? {
let proposedValue = currentValue.replacingCharacters(in: range, with: string) as String
parent.text = proposedValue
Expand Down
9 changes: 3 additions & 6 deletions litewallet/AppDelegate.swift
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate {

var resourceRequest: NSBundleResourceRequest?

func application(_ application: UIApplication, didFinishLaunchingWithOptions _: [UIApplication.LaunchOptionsKey: Any]?) -> Bool
{
func application(_ application: UIApplication, didFinishLaunchingWithOptions _: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
requestResourceWith(tag: ["initial-resources", "speakTag"]) { [self] in
// Ops
let startDate = Partner.partnerKeyPath(name: .litewalletStart)
Expand Down Expand Up @@ -77,13 +76,11 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
applicationController.didEnterBackground()
}

func application(_: UIApplication, shouldAllowExtensionPointIdentifier _: UIApplication.ExtensionPointIdentifier) -> Bool
{
func application(_: UIApplication, shouldAllowExtensionPointIdentifier _: UIApplication.ExtensionPointIdentifier) -> Bool {
return false // disable extensions such as custom keyboards for security purposes
}

func application(_: UIApplication, open url: URL, options _: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool
{
func application(_: UIApplication, open url: URL, options _: [UIApplication.OpenURLOptionsKey: Any] = [:]) -> Bool {
return applicationController.open(url: url)
}

Expand Down
3 changes: 1 addition & 2 deletions litewallet/ApplicationController.swift
Original file line number Diff line number Diff line change
Expand Up @@ -273,8 +273,7 @@ class ApplicationController: Subscriber, Trackable {
func performBackgroundFetch() {
saveEvent("appController.performBackgroundFetch")
let group = DispatchGroup()
if let peerManager = walletManager?.peerManager, peerManager.syncProgress(fromStartHeight: peerManager.lastBlockHeight) < 1.0
{
if let peerManager = walletManager?.peerManager, peerManager.syncProgress(fromStartHeight: peerManager.lastBlockHeight) < 1.0 {
group.enter()
LWAnalytics.logEventWithParameters(itemName: ._20200111_DEDG)

Expand Down
1 change: 1 addition & 0 deletions litewallet/ArticleIds.swift
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import Foundation

enum ArticleIds {
static let nothing = "nothing"
}
6 changes: 2 additions & 4 deletions litewallet/AssociatedObject.swift
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import Foundation

func associatedObject<T: AnyObject>(_ base: AnyObject, key: UnsafePointer<UInt8>, initialiser: () -> T) -> T
{
func associatedObject<T: AnyObject>(_ base: AnyObject, key: UnsafePointer<UInt8>, initialiser: () -> T) -> T {
if let associated = objc_getAssociatedObject(base, key) as? T {
return associated
}
Expand All @@ -10,8 +9,7 @@ func associatedObject<T: AnyObject>(_ base: AnyObject, key: UnsafePointer<UInt8>
return associated
}

func lazyAssociatedObject<T: AnyObject>(_ base: AnyObject, key: UnsafePointer<UInt8>, initialiser: () -> T?) -> T?
{
func lazyAssociatedObject<T: AnyObject>(_ base: AnyObject, key: UnsafePointer<UInt8>, initialiser: () -> T?) -> T? {
if let associated = objc_getAssociatedObject(base, key) as? T {
return associated
}
Expand Down
13 changes: 6 additions & 7 deletions litewallet/BRAPIClient+Events.swift
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ private var emKey: UInt8 = 1
extension BRAPIClient {
var events: EventManager? {
return lazyAssociatedObject(self, key: &emKey) {
return EventManager(adaptor: self)
EventManager(adaptor: self)
}
}

Expand Down Expand Up @@ -90,10 +90,10 @@ class EventManager {
defer { isSubscribed = true }

// slurp up app lifecycle events and save them as events
eventToNotifications.forEach { key, value in
for (key, value) in eventToNotifications {
NotificationCenter.default.addObserver(forName: value,
object: nil,
queue: self.queue,
queue: queue,
using: { [weak self] note in
self?.saveEvent(key)
if note.name == UIScene.didEnterBackgroundNotification {
Expand Down Expand Up @@ -121,7 +121,7 @@ class EventManager {

func down() {
guard isSubscribed else { return }
eventToNotifications.forEach { _, value in
for (_, value) in eventToNotifications {
NotificationCenter.default.removeObserver(self, name: value, object: nil)
}
}
Expand Down Expand Up @@ -163,8 +163,7 @@ class EventManager {
let dataToSerialize = myself.buffer.map { $0.dictionary }
guard JSONSerialization.isValidJSONObject(dataToSerialize) else { print("Invalid json"); return }
var error: NSError?
if JSONSerialization.writeJSONObject(dataToSerialize, to: outputStream, options: [], error: &error) == 0
{
if JSONSerialization.writeJSONObject(dataToSerialize, to: outputStream, options: [], error: &error) == 0 {
print("[EventManager] Unable to write JSON for events file: \(String(describing: error))")
} else {
print("[EventManager] saved \(myself.buffer.count) events to disk")
Expand All @@ -178,7 +177,7 @@ class EventManager {
queue.addOperation { [weak self] in
guard let myself = self else { return }
guard let files = try? FileManager.default.contentsOfDirectory(atPath: myself.unsentDataDirectory) else { return }
files.forEach { baseName in
for baseName in files {
let fileName = NSString(string: myself.unsentDataDirectory).appendingPathComponent("/\(baseName)")
do {
try FileManager.default.removeItem(atPath: fileName)
Expand Down
Loading

0 comments on commit 28cd0d5

Please sign in to comment.