Skip to content

inclavare-containers/canon-json-rs

 
 

Repository files navigation

RFC 8785 Canonical JSON serialization for Rust

docs.rs Crates.io

This crate provides a serde_json::Formatter to serialize data in canonical JSON form as defined by RFC 8785.

use canon_json::CanonicalFormatter;
use serde::Serialize;
use serde_json::json;
let value = json!({"b": 12, "a": "qwerty"});
let mut buf = Vec::new();
let mut ser = serde_json::Serializer::with_formatter(&mut buf, CanonicalFormatter::new());
value.serialize(&mut ser).unwrap();
assert_eq!(buf, br#"{"a":"qwerty","b":12}"#);

History

This repository was originally forked from https://github.com/engineerd/cjson as it is unmaintained. But it ended up being redesigned to use the "formatter" approach that is used by olpc-cjson.

About

Canonical JSON for Rust, compatible with the canonical implementations from Docker and TUF

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%