- Fix placeholders not being replaced in certain circular circumstances
- Add
BigInt
support
- Optimize speed by always setting the
root
property - Optimize speed by removing the class member initializers
- Optimize the clone methods
- Store driers & undriers in a map instead of an object
- Rewrite serialization & parser logic
- Store any value that is referred to more than once in a separate root property
- Make
Dry.parse()
add the current path being revived to possible errors
- Added
whenDone
function parameter to theunDry
&unDryFunction
function calls - Fixed infinite loop issue when using
Dry.clone()
that relies onunDry
methods
- Simple version boost to fix NPM publish issue
- Split up
dryReplacer
function, addedreplaceObject
function - Don't assign regenerated value if it's exactly the same, prevents HTMLCollection errors
- Fix throwing an error when serializing an invalid date
- Add extra constructor checks before drying values with a
Date
orRegExp
class name - Fix some recursive issues in the
clone()
method - Fix values not being undried when it's a child of another undried object
- Fix
retrieveFromPath
throwing an error when the array contains a number
- Also export the
walk
function - Use
Namespace.getClassForUndry()
methods if available
- Fix reviving nested undried classes
- The
unDry
static method will receive a second argument: false if used for regular unserializing or true/custom_method_name if used for cloning.
- Fix registered undriers without a drypath again by reviving the values immediately
- Fix registered undriers not being called on dried values without a drypath property
- Remove dead code
- Add
findClass
to the exported functions - Enable registering classes with a
namespace
property
- Fix circular references that were incorrectly passed to an undrier
- Fix certain references not being regenerated correctly because key iteration happens out-of-order
- Fix objects being passed to
unDry
functions without being fully regenerated
- Fix reference paths being replaced with paths of equal or even longer size
- Rewrite code, take over new features from the
protoblast
package WeakMap
is now used instead of multipleArray
objects- A
clone
method has been added
- Register seen objects under their constructor name when stringifying for speed improvements
- Rewrite the retrieveFromPath function to be more readable and error-safe
- Fix generation of wrong paths when objects are empty
- Add support for infinity
- Fix null object bug
- Path exporting functions
- Fork circular-json
- Initial release