log: mw_log_fmt implementation#13
Conversation
License Check Results🚀 The license check job ran with the Bazel command: bazel run //:license-checkStatus: Click to expand output |
|
The created documentation from the pull request is available at: docu-html |
b0d0746 to
1c72c62
Compare
eaef04f to
fedc045
Compare
330bfe7 to
ef0ca2f
Compare
pawelrutkaq
left a comment
There was a problem hiding this comment.
Link also appropriate issue from #15
awillenbuecher-xq-tec
left a comment
There was a problem hiding this comment.
Okay from my side, once Pawel's comments have been addressed.
ef0ca2f to
4e00a73
Compare
There was a problem hiding this comment.
Pull request overview
This PR introduces the mw_log_fmt implementation as a replacement for core::fmt, providing a custom formatting library for non-text-based message frames. It includes partial implementations of common types, ScoreDebug trait and helper builders, along with comprehensive unit tests.
Key changes:
- Implementation of custom formatting infrastructure (
ScoreWrite,ScoreDebug, builders) - Support for primitive types and common Rust types (slices, arrays,
Vec,Rc,Arc) - Helper builders for structured debug output (
DebugStruct,DebugTuple,DebugList,DebugSet,DebugMap)
Reviewed changes
Copilot reviewed 18 out of 19 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| src/log/src/lib.rs | Removed placeholder library code |
| src/log/Cargo.toml | Removed placeholder Cargo manifest |
| src/log/BUILD | Removed placeholder build configuration |
| src/log/mw_log_fmt/lib.rs | Main library module defining the public API and module structure |
| src/log/mw_log_fmt/Cargo.toml | Cargo manifest for the new formatting library |
| src/log/mw_log_fmt/BUILD | Bazel build configuration for the library and tests |
| src/log/mw_log_fmt/fmt.rs | Core formatting traits and types (ScoreWrite, ScoreDebug, Error, Arguments) |
| src/log/mw_log_fmt/fmt_spec.rs | Format specification types and enums for controlling output formatting |
| src/log/mw_log_fmt/fmt_impl.rs | ScoreDebug implementations for primitive and common Rust types |
| src/log/mw_log_fmt/fmt_impl_qm.rs | Feature-gated ScoreDebug implementations for non-ASIL-B certified types |
| src/log/mw_log_fmt/builders.rs | Helper builders for structured debug output formatting |
| src/log/mw_log_fmt/macros.rs | Formatting macros (score_write!, score_writeln!) |
| src/log/mw_log_fmt/test_utils.rs | Testing utilities including StringWriter and common_test_debug |
| Cargo.toml | Updated workspace members to include new library |
| .vscode/settings.json | Added "qm" feature to rust-analyzer configuration |
| docs/module/log/detailed_design/_assets/log_op.puml | Updated diagram to remove ScoreDisplay references |
| docs/module/log/detailed_design/_assets/class_diagram.puml | Updated class diagram to reflect API changes |
| docs/module/log/architecture/_assets/interface.puml | Updated architecture diagram to remove ScoreDisplay |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Replacement for `core::fmt`. - Partial implementation of common types. - `ScoreDebug` implementation helpers. - Unit tests.
4e00a73 to
e25ec9f
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 18 out of 19 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
core::fmt.ScoreDebugimplementation helpers.Notes for Reviewer
Pre-Review Checklist for the PR Author
Checklist for the PR Reviewer
Post-review Checklist for the PR Author
References
Closes #