Avg Release Cycle
45 days ago
- 🔄 Changed the defaults for mimic_JSON to use 16 significant digits instead of the default 15.
- 🛠 Fixed bug where a subclass of Array would be serialized as if in object mode instead of compat when in compat mode.
- Changed the use_to_json option to still allow as_json even when set to false.
- 👻 Restricted strict dump to not dump NaN nor Infinity but instead raise an exception.
- Changed compat mode so that the :bigdecimal_as_decimal option over-rides the to_json method if the option is true. The default for mimic_JSON is to leave the option off.
- ➕ Added support for Module encoding in compat mode.
- 👌 Added ActiveSupportHelper so that require 'active_support_helper' will added a helper for serializing ActiveSupport::TimeWithZone.
- ➕ Added float_precision option to control the number of digits used for floats when dumping.
- 🛠 Fixed Range encoding in compat mode to not use the object mode encoding.
- 🛠 Fixed serialization problem with timestamps.
- 🛠 Fixed compat parser to accept NaN and Infinity.
- Using the xmlschema option with :object mode now saves time as a string and preserves the timezone.
- 🛠 Rational recursive loop caused by active support fixed.
- 💎 Time in mimic_JSON mode are now the ruby string representation of a date.
- 🛠 Fixed string corruption bug due to an uncommented assignment used for debugging.
- 🔄 Changed parse argument error to be a Ruby ArgError instead of a general Exception.
- Using an indent of less than zero will not place newline characters between JSON elements when using the string or stream writer.
- 📜 A new options callback method was added to the Simple Callback Parser. If defined the prepare_key() method will be called when an JSON object ket is first encountered. The return value is then used as the key in the key-value pair.
- Increased significants digits to 16 from 15. On occasion there may be unexpected round off results. Tou avoid those use the bigdecimal options.
- Missed a character map entry. / in ascii mode is now output as / and not \/
- 🛠 Fixed SC parser to not treat all IO that respond to fileno as a file. It not checks stat and asks if it is a file.
- 📜 Tightened object parsing of non-string hash keys so that just "#x" is parsed as a hash pair and not "~#x".
- 👻 Using echo to STDIN as an IO input works around the exception raised when asking the IO for it's position (IO.pos).
- 📜 Simple Callback Parser now uses the new stream parser for handling files and IO so that larger files are handled more efficiently and streams are read as data arrives instead of on close.
- 🖐 Handles file FIFO pipes correctly now.
- 🚀 Changed escaping back to previous release and added a new escape mode.
- 📜 Strict mode and compat mode no longer parse Infinity or NaN as a valid number. Both are valid in object mode still.