Releases: Javier-varez/Postform
Releases · Javier-varez/Postform
v0.5.0
libpostform changelog
- Added support for
%cformat specifier just like in printf. - Fail build when using the user defined literal
_internin GCC as it is not supported. - Now the RTT logger must have the control block injected in order to allow for user flexibility (i.e.: to use other rtt channels and control their layout).
- Minor changes and improvements
postform_decoder changelog
- Added support for
%cformat specifier just like in printf. - Minor changes and improvements
postform_rtt changelog
- Added cli option
-dto disable version check (Warning: only use if you are sure ABI is compatible between binary and host tool). - Added RTT channel selection.
- Fix: ensure reset vector jumps in Thumb mode.
- Minor changes and improvements
postform_persist changelog
- Added cli option
-dto disable version check (Warning: only use if you are sure ABI is compatible between binary and host tool). - Minor changes and improvements
postform_serial changelog
- Added cli option
-dto disable version check (Warning: only use if you are sure ABI is compatible between binary and host tool). - Minor changes and improvements
v0.4.0
libpostform changelog
- Fix format validation for pointer types. Now
cv-qualifiedpointer types should be accepted without any issues. - Added support for
armv6-mtargets with an external polyfill implementation of atomic operations. This should be valid for all targets as long as the memory is not shared with another processor. (Atomicity is implemented via critical sections, disabling interrupts). - Now
CMakeis supported as a build system for all C++ sources, including the test application. - Added
CMaketoolchain files to buildPostformfor botharmv7-mandarmv6-m. - Partially fixed string interning on
GCC. Support for user strings onGCChas been removed and the build warns the user. - Fixed build on
clang-12. It has been tested withclang-10,clang-11andclang-12. - Removed redundant element in the
Argumentstructure, reducing the stack storage requirements for each log argument. - Added
SerialLoggerwith support for a custom transport. This avoids having to reimplement RCOBS for every specific serial logger, potentially reusing this code for both aUARTlogger and aRTTlogger.
postform_decoder changelog
- Added
env-loggerfor easier debugging of user applications based on the postform_decoder library. - Added
SerialDecoderstruct to decode logs sent with aSerialLoggerimplementation. Automatically decodes theRCOBSbuffer and parses the log. - Moved some log printing functionality to
postform_decoderto consolidate it across the multiple applications. Users can still decide to implement their own printing functions if they required customized visualization. - Added
Windows 10andmacOSsupport.
postform_rtt changelog
- Fix a bug by which the program would not exit until another message is received after having pressed
<C-c>. - Now
postform_rttdisables theC_DEBUGENbit inCortex-MMCU's by default, making sure that other features like theDebug Monitor IRQcan be used in your program. - Expose an API to enable a concurrent
GDBserver along with theRTTconnection forPostform. - Add a command-line option to select the
probe. - Migrated decoder to use
RCOBS, a version of Consistent Overhead Byte Stuffing that is more performant on the MCU side. - Added
Windows 10andmacOSsupport. - Increased timeout waiting for the MCU to reach main.
This version of postform_rtt has not been published to Crates.io because it depends on an unreleased version of probe-rs If you want to install this release, please do it through the git repository with the following command:
cargo install --git https://github.com/Javier-varez/Postform --tag 0.4.0 postform_rttpostform_persist changelog
- No relevant changes. Main functionality remains the same.
- Added
Windows 10andmacOSsupport.
postform_serial changelog
- Added new binary to parse the logs from a serial port.
- Added
Windows 10andmacOSsupport.
v0.3.0
Features:
- Reduced template bloat.
- Faster execution.
- Smaller log memory footprint (using variable length integers)
v0.2.0
- Added custom compile-time format validator.
- Added support for numerous format specifiers:
- Unsigned numbers:
%hhu,%hu,%u,%lu,%llu - Signed numbers:
%hhd,%hd,%d,%ld,%lld - Octal numbers:
%hho,%ho,%o,%lo,%llo - Hex numbers:
%hhx,%hx,%x,%lx,%llx - Pointers:
%p - Interned strings:
%k - strings:
%s
- Unsigned numbers:
- Improved error handling for postform-decoder and postform-rtt.
- New
postform-persistbinary to display persistent logs from a file. - Added support to build
postformon the host computer. - Added support to attach to a running target through RTT.
- Logger code is now reentrant.
- Better version information in host code.
- Embedded version information into the target
ELFfile. - Verification of postform version when running postform decoder to ensure that the FW is compatible.
- Track platform sizes with custom
Postform::PlatformDescriptionstructure. Used by postform_decoder to appropriately decode the logs and derive argument size. - libpostform RTT now starts in nonblocking mode and it's set to blocking mode when
postform-rttattaches. Whenpostform-rttdetaches, it sets nonblocking mode again.
v0.1.0
Initial Postform release.
New features:
- Support for efficient logging through RTT using COBS framing.
- Support for
%d,%uand%sformat specifiers.
https://crates.io/crates/postform_decoder/0.1.0
https://docs.rs/postform_decoder/0.1.0/postform_decoder/