Apologies for my evident frustration:
I tried rebuilding my app today after bringing it home from where it has been placed in service for about a week. First off, it wouldn't build anymore. The routine I had been using [mgos_net_add_event_handler()] is apparently not defined anymore. It appears that routine has been replaced with something else what takes different parameters. In any case, it was faster to delete the old call rather than dig through github change logs to figure out what had changed and how to deal with the change. Since it was not strictly necessary for the test I needed to try, I just deleted the old call. The app built after that, so that was good.
After loading the new firmware into my device, I noticed that the log messages from the app were showing me that the SNTP setting of the clock which always used to occur is not happening anymore. All my status messages are claiming to be from 1969. Not sure what changed there, but the SNTP clock setting has always been automatic to this point.
Then, I pushed my pushbutton to generate an MQTT message and publish it to Amazon via AWS, like I always do. It's a convenient on-demand way to perform a basic end-to-end test. The system coredumped. That is a new, consistent, and irritating behavior.
So yet another thing has changed underneath my app.
What is the official Mongoose OS methodology for how users should be managing changes to Mongoose? Maybe there is some way, but I have not seen it in any of the examples. Is there some way to tell the build system that I don't want the latest and greatest libraries? Right now, my mos.yml looks like this:
- origin: https://github.com/mongoose-os-libs/aws
- origin: https://github.com/mongoose-os-libs/ca-bundle
- origin: https://github.com/mongoose-os-libs/dash
- origin: https://github.com/mongoose-os-libs/dht
- origin: https://github.com/mongoose-os-libs/http-server
- origin: https://github.com/mongoose-os-libs/i2c
- origin: https://github.com/mongoose-os-libs/ota-shadow
- origin: https://github.com/mongoose-os-libs/ota-http-client
- origin: https://github.com/mongoose-os-libs/ota-http-server
- origin: https://github.com/mongoose-os-libs/rpc-service-config
- origin: https://github.com/mongoose-os-libs/rpc-service-fs
- origin: https://github.com/mongoose-os-libs/rpc-service-ota
- origin: https://github.com/mongoose-os-libs/rpc-uart
- origin: https://github.com/mongoose-os-libs/shadow
- origin: https://github.com/mongoose-os-libs/wifi
Hmmm. Actually, it doesn't look like that, but the code formatter markdown feature on this forum is really flakey. But in any case, it would appear to my untrained eye that the libraries are being fetched directly from github, so they probably reflect the latest, greatest, and potentially undocumented changes. Or is there some better method to allow users to manage incorporating the changes that occur to Mongoose?
Again, sorry for the frustration.