CHANGES.md in representable-2.0.4 vs CHANGES.md in representable-2.1.0

- old
+ new

@@ -1,4 +1,21 @@ +# 2.1.0 + +## Breaking Changes + +* None, unless you messed around with internals like `Binding`. + +## Changes + +* Added `:skip_parse` to skip deserialization of fragments. +* It's now `Binding#read_fragment -> Populator -> Deserializer`. Mostly, this got changed to allow better support for complex collection semantics when populating/deserializing as found in Object-HAL. +* Likewise, it is `Binding#write_fragment -> Serializer`, clearly separating format-specific and generic logic. +* Make `Definition#inspect` more readable by filtering out some instance variables like `@runtime_options`. +* Remove `Binding#write_fragment_for`. This is `#render_fragment` now. +* Almost 100% speedup for rendering and parsing by removing Ruby's delegation and `method_missing`. +* Bindings are now in the following naming format: `Representable::Hash::Binding[::Collection]`. The file name is `representable/hash/binding`. +* Move `Definition#skipable_empty_value?` and `Definition#default_for` to `Binding` as it is runtime-specific. + # 2.0.4 * Fix implicit rendering of JSON and XML collections where json/collection wasn't loaded properly, resulting in the native JSON's `#to_json` to be called. * Fix `:find_or_instantiate` parse strategy which wouldn't instantiate but raise an error. Thanks to @d4rky-pl.