Commit graph

15 commits

Author SHA1 Message Date
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
Garth Vander Houwen
6930d87275 Add device logging config, update protobufs 2024-06-23 07:36:03 -07:00
Garth Vander Houwen
fec8d546bd Bump version 2024-06-23 06:31:40 -07:00
Garth Vander Houwen
0cbcd9e7a3 try and revert 2024-06-23 06:20:22 -07:00
Garth Vander Houwen
b6797b0166 Move logger 2024-06-04 17:30:58 -07:00
Blake McAnally
0dedf94a98 General Project Cleanup
* Change SwiftLint from a "Run Script" build phase to a "Run Build Tool Plugins" build phase.
    * Developers no longer need to install and update SwiftLint manually. This can be useful when other projects are using different versions of SwiftLint.
    * [SwiftLint Docs](https://github.com/realm/SwiftLint?tab=readme-ov-file#xcode-projects)
    * [WWDC 22 - Meet Swift Package Plugins](https://developer.apple.com/videos/play/wwdc2022/110359/?time=162)
* Moved several scripts into a `.scripts` directory to keep the project root organized.
* Modified `.scripts/gen_protos.sh` to intelligently update git submodules and install `swift-protobuf` when it detects issues, reducing developer friction.
* Deleted the empty unit and UI testing targets. These can be added later as we write tests. someday 🙏
* Updated the README.md to reflect the above changes, and organized a few of the sections.
2024-06-03 19:58:18 -05:00
Garth Vander Houwen
eb27e7d999 Update channel proto 2024-05-01 19:58:57 -07:00
Garth Vander Houwen
9e13f0e3d3 Update protobufs 2024-05-01 19:46:56 -07:00
Garth Vander Houwen
52c52ae1e6 100 node limit on the node map, remove 2500 mile distance filter 2024-03-31 12:38:17 -07:00
Garth Vander Houwen
7ab8cba73a Bump sqlite version 2023-08-26 18:21:33 -07:00
Garth Vander Houwen
18685bad3b Update protobufs, add mqtt library for mqttclientproxy feature 2023-07-06 20:34:50 -07:00
Garth Vander Houwen
d765cb6411 Delete unused packages 2022-12-11 21:10:23 -08:00
Garth Vander Houwen
6081d8c30c * Add Libraries for OTA
* Refactor BLE Manager a bit
* Add signal strength indicator graphic to ble connect view
* Order BLE devices by name
2022-12-04 00:28:26 -08:00
Garth Vander Houwen
18d208a616 Update protobufs, add clear positions to position log 2022-10-03 16:52:00 -07:00
Garth Vander Houwen
e2dc8ed8ae Rename Project to satisfy app review 2022-06-24 08:00:18 -07:00