NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #798 most downloaded on crates.io
Rusty Object Notation
Last release 3 months ago
22 Jun 2026
Release timing varies
gaps range from 3 weeks to 12 months
Nearly every release is documented
notes for 33 of 34 stable releases
2 versions withdrawn
withdrawn after publishing
9 years old
38 releases · first in 2017
Add support for number ranges by @Ztry8 in #602
One column per quarter.
Link to std::Writer alternatives by @LeCyberDucky in #595
Full Changelog: v0.12.0...v0.12.1
#![type = "..."] and #![schema = "..."] attributes (#596)Further deprecate base64 byte strings by removing parsing support outside the error path by @juntyr in #566
ron-lsp to README by @jasonjmcghee in #589Full Changelog: v0.11.0...v0.12.0
ron::error::Error::Base64Error variant. (#566)into_inner() method to ron::ser::Serializer to retrieve the inner writer. (#588)base64 dependency. (#566)Add no_std Support by @bushrat011899 in #567
no_std Support by @bushrat011899 in #567Full Changelog: v0.10.1...v0.11.0
SpannedError now stores the full error span in span: Span { start: Position, end: Position }`, to facilitate, e.g., language server highlighting of syntax errors.no_std support via a new std feature (enabled by default). With default features disabled, you must enable the std feature to access de::from_reader, and the std::io operations on Options, such as from_reader, from_reader_seed, to_io_writer, and to_io_writer_pretty (#567)ron::value::Number to ensure it is non-exhaustive, to avoid breaking matches when feature unification enables more of its variants than expected (#568)file_read_write_vec.rs for reading and writing Vec<T> to/from files. (#573)This is a very small release to fix the potential breakage that the new Number enum could cause by having feature-dependent variants. Now the Number e
This is a very small release to fix the potential breakage that the new Number enum could cause by having feature-dependent variants. Now the Number enum is non-exhaustive. Please refer to https://docs.rs/ron/0.10.1/ron/value/enum.Number.html for further details.
Full Changelog: v0.9.0...v0.10.1
Nothing published for this version
Rusty byte strings in RON, deprecate base64 (byte) strings by @juntyr in #438
Value::Map IntoIter and extraneous item check for Value::Seq by @juntyr in #406escape_strings option to PrettyConfig by @juntyr in #426serde_derive separately for more compilation parallelism by @jakobhellermann in #441compact_maps and compact_structs options to PrettyConfig by @juntyr in #448Map::retain method by @marcospb19 in #460&[u8] de by @juntyr in #462Value::Number and allow +unsigned by @juntyr in #479Some around raw values by @juntyr in #494None, Some, true, or false by @juntyr in #499Value::from and full code lines coverage by @juntyr in #498deserialize_any identifier check by @juntyr in #506explicit_struct_names Extension by @sylv256 in #522base64 to 0.22 by @a1phyr in #529Cow<'static, str> in PrettyConfig by @Coca162 in #546flatten support disclaimer by @naseschwarz in #559Full Changelog: v0.8.1...v0.9.0
ron::value::RawValue helper type which can (de)serialize any valid RON (#407)escape_strings option to PrettyConfig to allow serialising with or without escaping (#426)compact_maps and compact_structs options to PrettyConfig to allow serialising maps and structs on a single line (#448)#[serde(flatten)] with roundtripping through RON maps (#455)#[serde(tag = "tag")], #[serde(tag = "tag", content = "content")], and #[serde(untagged)] enums (#451)value::Number enum to explicitly encode all possible number types (#479)number_suffixes option to PrettyConfig to allow serialising numbers with their explicit type suffix, e.g. 42i32 (#481)ron::value::RawValue to capture any whitespace to the left and right of a ron value (#487)Value::from impls (#498)explicit_struct_names which requires that struct names are included during deserialization (#522)PrettyConfig (#544)PrettyConfig so that new_line, indentor and separator are all Cow<'static, str> instead of String (#546)Some like a newtype variant with unwrap_variant_newtypes (#465)1u8 or -1f32 (#481)r as a self-describing struct or variant name (and not the start of a raw string) (#465)None inside a stack of nested Options with #![enable(implicit_some)] enabled (#465)A('/') into a ron::Value (#465)+unsigned as an unsigned int (#479)true, false, Some, None, inf[f32|f64], and Nan[f32|f64] (#487)ron::value::RawValue (#489)None, Some, true, or false (#499)serde_json::Values (#511)ron::ser::PrettyConfigs (#465)base64 dependency to version 0.22 (#529)Nothing published for this version
Nothing published for this version
Fix issues #277 and #405 with Value::Map IntoIter and extraneous item check for Value::Seq
Value::Map IntoIter and extraneous item check for Value::Seq (#406)Some (#412)base64 to 0.20 (#431)base64 to 0.21 (#433)serde_derive directly to potentially enable more compilation parallelism (#441)bitflags dependency to 2.0, changes serde impls of Extensions (#443)Map::retain method (#460)indexmap to 2.0 (#459)Thank you all for contributing!
Bump dependencies: bitflags to 1.3, indexmap to 1.9
bitflags to 1.3, indexmap to 1.9 (#399)integer128 feature that guards i128 and u128 (#304, #351)decimal_floats PrettyConfig option and unconditional decimals in floats (#363)ron::Error enum to distinguish serde errors like NoSuchEnumVariant and MissingStructField with error positioning (#394)Add struct_names option to PrettyConfig
struct_names option to PrettyConfig (#329)unwrap_newtypes extension during serialization (#333)unwrap_variant_newtypes extension during serialization (#336)compact_arrays (#299) and separator options to PrettyConfig (#349)Options builder to configure the RON serde roundtrip (#343)DeserializeSeed support (#360)FromStr-equivalent float EBNF and Error::FloatUnderscore (#371)Serializer::new (#382)Add unwrap_variant_newtypes extension
unwrap_variant_newtypes extension (#319)Fix serialization of raw identifiers
support serde renames that start with a digit
Nothing published for this version
- bump base64 dependency to 0.13
base64 dependency to 0.13Added decimal_floats PrettyConfig option, which always includes decimals in floats (1.0 vs 1)
Fix array formatting regression
Remove deprecated uses of Error::description
ser::Serializer to io::Write (#206)Error::description (#208)Increase source compability from Rust 1.34.0 to 1.31.0 by not relying on as _ imports
1.34.0 to 1.31.0 by not relying on as _ imports (#156)Don't insert new lines in empty arrays or maps
Add integer check for deserializer
Move sublime text syntax to separate repo
Handle tuple deserialization in deserialize_any properly
serde_bytes fields to be encoded using base64.
Allow whitespace in newtype variants
Allow more whitespace inside newtypes
Add support for \x?? and improve unicode escapes
Add support for hex, oct and bin numbers
f32 (#81)Remove ident variable from Sublime syntax
Allow creating a new serializer
impl deserialize_ignored_any for id
Removed indentation from tuple variant pretty encoder
Fix decoding of string literals
Be more permissive wrt whitespace decoding
Reorganize deserialization modules
Initial release
Initial release
Your coding agent can read these notes before it upgrades. Set up the MCP server →