Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This changes the golioth_coap_blockwise_get to be non-blocking, with block write callbacks executed on the coap client thread. Users are responsible for ensuring that they do not block the client thread unduly.
A second commit in this PR also reworks and simplifies the way that block retries are executed in the fw_update module. This simplifies program flow, removes a
while(1)
loop, and reduces the amount of state that has to be moved between the callback and the thread. One of the consequences is that we no longer report to the OTA state service when we retry a block download. I think that's acceptable and even desirable because: