1 unstable release
0.1.0 | Apr 10, 2023 |
---|
#722 in Debugging
87KB
506 lines
DiffLogger
generates a log of changes for JSON values
Example
use diff_logger::DiffLogger;
use serde_json::json;
fn main() {
let logger = DiffLogger::new().set_header("timestamp", false);
let prev = json!({
"name": "David",
"age": 43,
"ver": {
"timestamp": "2023-04-07T11:17:50+00:00",
"value": "some text",
},
"state": {
"timestamp": "2023-04-07T11:17:50+00:00",
"removedField": "some text",
"valueChange": 45
},
"email": [
{ "num": "david1@email.com"},
]
});
let next = json!(
{
"name": "John",
"age": 35,
"state": {
"timestamp": "2023-04-07T12:17:50+00:00",
"newField": 4,
"valueChange": 42352
},
"ver": {
"timestamp": "2023-04-07T11:18:50+00:00",
"value": "some text",
},
"email": [
{ "num": "John@email.com"},
]
});
println!("----------------------\n");
logger.log_diff(&prev, &next);
println!("\n----------------------");
}
logs:
Dependencies
~1–12MB
~79K SLoC