The original GA had to run lcov multiple times to remove sources from the report even though it could have just been run a single time. This also makes it so that the results are only printed once.
The lcov-cop GitHub Action is deprecated. This change updates the "Check coverage" step to use bash logic instead of the GitHub Action for checking coverage compliance for both line and branch coverage.
This follows changes from FreeRTOS/FreeRTOS@398abba. The const qualifier is removed from send/recv because there are transport implementations that require a member of the network context to be modified such as in the case of mbedtls.
This updates the coreMQTT library so as to resend a PUBACK and PUBREC for an incoming duplicate publish packet, irrespective of the broker setting the DUP flag.
* Update submodules to not be auto cloned
* Update README about submoduling CMock
* Attempt to fix ci.yml
* Fix submodule init issue
* Add --recursive flags to submodule clone command
* Add section link in README
Removed MQTT_INCLUDE_PRIVATE_DIRS from the CMake config files
because there are no header files in there and files in that directory are
not referenced in any #include in any library source, tests, or demos.
This commit updates the template starter kit and modifies the proofs and
Makefiles so that they conform to the latest standard. In particular,
this PR introduces the PROOF_UID variable to give each proof a unique
name.
This commit adds some comments that explain how the run-cbmc-proofs.py
script diverges from similar scripts that we use for other projects. The
comments begin with "# PROJECT SPECIFIC".
This commit makes Litani run make with the EXTERNAL_SAT_SOLVER variable
set. The template Makefile uses the value of this variable to determine
which external SAT solver CBMC should call out to. We're using Kissat
because the default SAT solver takes too long on two of the proofs,
MQTT_SerializeConnect and MQTT_Connect.
* Set publish payload to NULL when zero length
* Add unit test for zero length payload
* Fix unit tests for deserialize publish
* Rename setupWillInfo to setupPublishInfo
* Remove void * from memset
* Update code sizes after adding verison number
* Round as much as possible when multiplying by 1024
* Add code size when no optimisation is used
* Update totals
* Change MQTT RC1 to coreMQTT
* Add link to gcc arm toolchain
* Update link
* Use english spellings
Co-authored-by: Gary Wicker <14828980+gkwicker@users.noreply.github.com>
* Add version numbers
* Add missing @file tags
* Update lexicon.txt
* Update @brief tag for MQTT cbmc state
Co-authored-by: Gary Wicker <14828980+gkwicker@users.noreply.github.com>