Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature(*): Introduce fully async library #58

Draft
wants to merge 29 commits into
base: master
Choose a base branch
from
Draft

Conversation

MathiasKoch
Copy link
Member

@MathiasKoch MathiasKoch commented May 31, 2024

Missing stuff:

  • (OTA): Request momentum
  • (OTA): HTTP data interface
  • (OTA): README
  • (Provision): Re-subscribe on None in subscriptions
  • (Shadows): integration test
  • (Shadows): Documentation overhaul
  • (Shadows): README
  • CI (Tests & clippy)

@MathiasKoch MathiasKoch changed the title Feature(*) Introduce fully async library Feature(*): Introduce fully async library May 31, 2024
MathiasKoch and others added 14 commits June 11, 2024 10:13
…o individual accepted and rejected topic for now
* Wip on rewriting shadows to async

* Further work on async shadows. Still working on compile errors

* Fix: Async shadow (#60)

* fix asyunc shadow

* renaming of handle message and some linting

* shadows error fix and handle delta should wait for connected

* fmt

* Add const generic SUBS to shadows

* Fix/async shadow (#61)

* fix asyunc shadow

* renaming of handle message and some linting

* shadows error fix and handle delta should wait for connected

* fmt

* subscribe to get shadow and do not overwrite desired state

* Get shadow should deserialize patchState

* wait for accepted and rejected for delete and update as well

* Make sure OTA job documents can be deserialized with no codesigning properties in the document (#62)

* Dont blindly copy serde attrs in ShadowPatch derive, but rather introduce patch attr that specifies attrs to copy

* Add skip_serializing_if none to all patchstate fields

* Shadows: Check client token on all request/response pairs

* Create initial shadow state, if dao read fails during getShadow operation

* remove some client token checks

* Fix not holding delta message across report call

* handle delta on get shadow

* Bump embedded-mqtt

* Fix all tests

* Allow reporting non-persisted shadows directly, through a report fn

* Bump embedded-mqtt

* Enhancement(async): Mutex shadow to borrow as immutable (#63)

* Use mutex to borrow shadow as immutable

* remove .git in embedded-mqtt dependency

---------

Co-authored-by: Kenneth Knudsen <[email protected]>
Co-authored-by: Kenneth Knudsen <[email protected]>
* Ensure only one sub on the same topic

* wait for mqtt connected in report

* Reduce request locks to one
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants