Commit graph

110 commits

Author SHA1 Message Date
Blake McAnally
bc77834a86
Merge branch '2.3.12_Working_Changes' into fetch-request-api 2024-06-28 11:49:24 -05:00
Blake McAnally
58da532d32 Extract the generated protobufs into its own Swift package
This change modifies the process for generating and integrating the Meshtastic protobufs into the client application.

* The generated Swift code is now in a local SPM package `MeshtasticProtobufs`
* An Xcode Workspace file `Meshtastic.xcworkspace` was created to more easily manage the new build targets.
* The code generation script for the protos was modified to generate the Swift code into the new location.
* The README.md was updated to reflect these changes.

NOTE: After merging this PR, do not open the project file `Meshtastic.xcodeproj`. You must use the workspace `Meshtastic.xcworkspace`

Extracting out the generated protobuf code into its own library enables several opportunities for the project. This is just a first step, but with some more modularization, a standalone Apple Watch app or other targets starts to become a little bit more achievable to implement.

After extracting the protobufs into a Swift package, I validate these changes by building and running the Meshtastic app to an iPhone 15 Pro Max, and tried changing some settings on a local node. I then messaged back and forth using two local nodes connected to two different iOS devices.
2024-06-28 11:11:01 -05:00
Blake McAnally
a58c5d894b Refactor fetch requests to use the EntityName.fetchRequest() API to prevent unnecessary branching 2024-06-28 09:04:24 -05:00
Garth Vander Houwen
512f6b8c9e assorted backup fixes 2024-06-26 15:12:24 -07:00
Garth Vander Houwen
a4546247a9 Clean up logs with privacy 2024-06-23 18:25:22 -07:00
Garth Vander Houwen
b73b3864ea Delete admin message list 2024-06-23 12:25:08 -07:00
Garth Vander Houwen
d456a7a6e6 translation strings for log headers, add device log setting to save 2024-06-23 08:23:05 -07:00
Garth Vander Houwen
847892d45d Log categories 2024-06-03 02:17:55 -07:00
Garth Vander Houwen
6c1e28d94a Core data updates 2024-06-02 09:45:56 -07:00
Blake McAnally
4c7cd0d923 Adopt OSLog for logging and replace the majority of calls to print() 2024-06-01 11:30:29 -05:00
Blake McAnally
4d547e48db This change fixes several lint errors throughout the project, and moves the SwiftLint build phase to before compilation.
After this change, a developer can now clone the project and run without the build failing due to lint errors! 😃

* I ran `swiftlint --fix` to resolve many auto-correctable issues (mostly whitespace)
* Excluded the `Meshtastic/Protobufs` directory from lint, since that code is automatically generated.
* Converted some single letter method parameters to lowercase.
* Converted several instances `force_cast` to instead use `guard` or `if let` to unwrap optional values. During this change, some of the SwiftUI views became "too complex to be solved in a reasonable time", so I broke up the views into distinct sub-expressions.

I was able to build and run the app on an iOS simulator.
2024-05-31 21:48:50 -05:00
Garth Vander Houwen
3911703f81 Bump version, add incomplete user icon 2024-05-29 12:52:35 -07:00
Garth Vander Houwen
0b855a08bf Check node num length before making a new node info or user core data object 2024-05-26 12:15:50 -07:00
Garth Vander Houwen
3aefd67d06 Check for last postion before sending phone location 2024-05-26 10:37:22 -07:00
Garth Vander Houwen
a4c1fc4fe6 Remove up and downlink from QR codes
Open node details view from new node notification
Fix speed
Simple deep linking structure
2024-05-14 22:39:07 -07:00
Garth Vander Houwen
61c4b23d49 Remove unnessary old hop count logic 2024-05-10 12:14:08 -07:00
Garth Vander Houwen
8bcf40f543 Deep Links
Updated position precision
2024-05-06 23:03:51 -07:00
Garth Vander Houwen
a3a5c4084b Try and fix a nil context crash, created shareed ble manager 2024-05-04 08:20:53 -07:00
Garth Vander Houwen
52c5adb7ec Merge changes 2024-05-01 19:39:32 -07:00
Garth Vander Houwen
5869a27369 Mute all channel message notifications 2024-04-26 18:06:23 -07:00
Garth Vander Houwen
d780f103ad Set provide location default to 30 seconds
Don't delete routes unless doing a factory reset
Close route recorder modal when finished
2024-04-21 20:36:29 -07:00
benjaminfaershtein
102bbf521e Added New Node Notification setting and notification 2024-04-09 16:59:34 -07:00
Garth Vander Houwen
8156777fea Timezone 2024-04-08 11:41:54 -07:00
Garth Vander Houwen
d64acccc3e Remove VIP, clean up add channel method 2024-04-01 10:51:06 -07:00
Garth Vander Houwen
5cd2b3342b Mqtt config updates 2024-03-26 13:26:23 -07:00
Garth Vander Houwen
457116657a Save favorite and hops away 2024-03-26 09:59:07 -07:00
Garth Vander Houwen
02cca19f26 Assorted updates 2024-03-23 09:01:44 -07:00
Garth Vander Houwen
550add228c Move node map into map content view
Dont change channel for node infos directed at other nodes
2024-03-14 23:05:05 -07:00
Garth Vander Houwen
d84f2ad91a Add power telemetry config. 2024-03-14 00:04:35 -07:00
Garth Vander Houwen
2ba208fa8e Bump version and protos 2024-03-09 20:07:12 -08:00
Garth Vander Houwen
0dcdca5e23 Fix messaging bug, fix bug where node would not create user 2024-02-29 21:26:17 -08:00
Garth Vander Houwen
cce30cd9f7 Fix logs for pax counter 2024-02-27 12:24:50 -08:00
Garth Vander Houwen
d3d16e206e Release Cleanup
Add back block range test functionaitly, hook it up to the device range test settings.
Delete messages when deleting a channel
Make pax counter clear work properly
2024-02-27 11:26:26 -08:00
Garth Vander Houwen
9ee3df519c Pax Counter Config 2024-02-25 11:24:01 -08:00
Garth Vander Houwen
5d9b25b0aa Polish up the reduced position accuracy 2024-02-25 00:36:03 -08:00
Garth Vander Houwen
e462055ad7 Reduced precision map circles for the node map 2024-02-24 16:25:08 -08:00
Austin Payne
a87d4fd3a6 feature: add power configuration 2024-02-21 00:07:17 -07:00
Garth Vander Houwen
a89490097f Add Singapore
Update store and forward logic
2024-02-10 17:21:31 -08:00
Garth Vander Houwen
029a820f76 Bump version, fix client hidden crash 2024-02-07 15:42:20 -08:00
Garth Vander Houwen
4d420a8008 Save GPS state 2024-02-06 11:11:03 -08:00
Garth Vander Houwen
b0272e0578 Via MQTT 2024-02-05 23:48:23 -08:00
Garth Vander Houwen
c3f4923531 Add via mqtt, does not seem to be working with the client proxy 2024-02-05 23:02:33 -08:00
Garth Vander Houwen
96d6987b10
Merge pull request #475 from Austinpayne/fix/offline-map-option
fix: offline map type option getting out of sync
2024-02-05 22:51:09 -07:00
Roger Pettett
2bb0a7342b
Update UpdateCoreData.swift 2024-01-31 15:04:33 +00:00
Garth Vander Houwen
1bec0dae66 Add ignoremqtt to mqttconfig upsert method 2024-01-26 17:42:13 -08:00
Garth Vander Houwen
7302dc3e35 Localize route recorder buttons
Actually record data with the route recorder
Add version number to about view
Make speed faster
2023-12-25 20:26:50 -08:00
Garth Vander Houwen
0dbc426c50 Set default GPS interval values 2023-12-22 19:08:32 -08:00
Garth Vander Houwen
668fe30806 Use locationshandler for GPS data on ios17 2023-12-22 06:31:27 -08:00
Garth Vander Houwen
a60228d119 Put GPS setting in the right place 2023-12-21 11:31:40 -08:00
Garth Vander Houwen
4eb18f66b8 Add useI2cAsBuzzer setting 2023-12-20 10:24:01 -08:00