Changes in version 1.8.8 (2023-12-04) o Apply libyajl patches for CVE-2022-24795, CVE-2022-24795, CVE-2023-33460 o Fix printf warnings for cran Changes in version 1.8.7 (2023-06-29) o toJSON(digits = NA) once again prints 15 digits max o Fix getRversion type (requested by CRAN) Changes in version 1.8.6 o Add method [.json such that subsetting keeps json class Changes in version 1.8.5 (2023-06-05) o Max digits in toJSON() raised from 15 to 17 (see #412) o Remove online example from flaky httpbin server Changes in version 1.8.4 (2022-12-06) o Replace sprintf with snprintf for CRAN Changes in version 1.8.3 (2022-10-21) o Fix strict-prototypes warning Changes in version 1.8.2 (2022-10-02) o Also fix breaking change in base_r for as.character.Date Changes in version 1.8.1 (2022-10-01) o Use base::url instead of curl::curl for downloading URLs in fromJSON o Fix for breaking change 82904 in base-R (changed default as.character.POSIX behavior) Changes in version 1.8.0 (2022-02-22) o Remove all calls to setOldClass() for R >= 4.0 (#378) Changes in version 1.7.3 (2022-01-17) o Fix memory bug in toJSON(pretty=TRUE) for 0-length vectors (#366) o Ported rbind_pages() to use vctrs::vec_rbind (#352) o Fix error serializing S4 class extending SEXPTYPE for certain types (#364) o Fix citibike example in API vignette Changes in version 1.7.2 (2020-12-09) o Special case 'blob' vctrs to prevent boxing of base64 output strings o Fix a unit test for new stricter all.equal() for environments in base-R Changes in version 1.7.1 (2020-09-07) o Always rename the 'sf_column' column to 'geometry' in toJSON(sf = 'geojson') because that is what the spec says. o Add asJSON method for ITime. o Fix toJSON() for encoding strings in multibyte locale on Windows o serializeJSON() now supports S4 "pseudo-null" (i.e. empty slots) Changes in version 1.7.0 (2020-06-25) o Add support for 'sf' classes in toJSON() conform GeoJSON spec. o Fix a unit test due to a change in rgdal Changes in version 1.6.1 (2020-02-02) o Fix bug in C_collapse_array_pretty_inner declarationdetected by CRAN LTO o Better handing of NA in timestamps with POSIXt = 'mongo' o The 'raw' parameter in toJSON gains options 'int' and 'js' Changes in version 1.6 (2018-12-07) o Add parse_json() wrapper that does not guess if a string is actually a file/url o Fix a few rchk warnings (mostly false positives) o Add asJSON method for hms o Do not require is.vector() for unbox to support values with attributes e.g. factor or tzone o write_json now suppresses recoding of strings on windows, fixes #226 o Hide internal libyajl symbols from shlib o Remove C calls R connection API which are no longer allowed on CRAN. This may lead to about 5% performance decrease for parsing from connections. o Remove deprecated rbind.pages function Changes in version 1.5 (2017-06-01) o Workaround for #180. fromJSON() first checks for literal json, then filename o Rename rbind.pages to rbind_pages to fix warning in R-devel (requested by CRAN) Changes in version 1.4 (2017-04-08) o Properly escape control characters \x01 through \x1f in toJSON() o Support parsing JSON prefixed with a rfc7464 ASCII Record Separator (0x1E) o (un)serializeJSON and do not set 'attributes' and 'value' for NULL anymore o serializeJSON() sets class="json" on output value, consistent with toJSON() o Rewrite (un)serializeJSON() for S4 classes and added some unit tests o Fix for simplyfing datelists, needed for mongolite Changes in version 1.3 (2017-02-28) o The solidus '/' is now escaped when preceded by '<' for safe html embedding (#163) o Code for reading from connections is ported to C. o Code for escaping strings has been rewritten o toJSON gains internal argument no_dots for needed by mongolite o Better support for parsing extjson date strings Changes in version 1.2 (2016-12-30) o Add 'read_json' and 'write_json' convenience wrappers o Update modp_numtoa from upstream (fixes a rounding issue in #148) o Ensure asJSON.POSIXt does not use sci notation for negative values (#155, John Greeley) o Tweak num_to_char to properly print large negative numbers o Performance optimization for simplyfing data frames Changes in version 1.1 (2016-09-14) o stream_in now passes ... arguments to fromJSON as documented o Force ANSI_STDIO on Windows to fix -pedantic compiler warning o Close connection even if opening fails. Fixes #145 o validate() now includes an 'offset' attribute indicating at which byte the error occured o Refresh some example tokes for vignettes Changes in version 1.0 (2016-07-01) o Fix always_decimal for non-whole numbres which get rounded to whole numbers o Rename and export base64 encoder/decoder o Fix compiler warning on Windows: don't redefine isnan() and isinf() o Changed targed in Makevars to libstatyajl.a to prevent conflict with system libyajl o Bump to 1.0 because this package is basically done Changes in version 0.9.22 (2016-06-15) o Fix for side effects of 'always_decimal' on Date and POSIXt integer encoding o Fixed a small memory leak in the push parser (fromJSON.connection) o Cleaned up Makevars o Replace base64 encoder/decoder to be in-memory o Special case toJSON(NULL, null = "null") now returns "null" Changes in version 0.9.21 (2016-06-04) o Add 'always_decimal' argument in toJSON for real number notation in whole number doubles. Changes in version 0.9.20 (2016-05-10) o Performance optimization for toJSON on matrices and arrays o Tweak for unboxed POSIXt = "mongo" queries Changes in version 0.9.19 (2015-11-28) o Remove the View() workaround because it causes issues in RStudio and because the bug in utils::View has been fixed in R-patched. Changes in version 0.9.18 (2015-11-25) o Removed support for the archived int64 package. Use bit64 instead. o The stream_in function now skips over blank lines o Remove workaround for View() in rstudio o fromJSON now sets an 'Accept' request header for URLs. Changes in version 0.9.17 (2015-09-06) o Fix for 1 dimensional array objects o Fix for unnamed data frame o Fix for duplicate _row fields o The 'unbox' function now accepts classed scalars such as dates o Ignore BOM with warning in push parser Changes in version 0.9.16 (2015-04-11) o Performance optimizations in asJSON.data.frame by avoiding apply() o Prettifying is now done by default in R (thanks to Yihui Xie) o Add json_verbatim option to insert verbatim json o Improve verbose output of streaming functions Changes in version 0.9.15 (2015-03-26) o Replaced RCurl dependency with the new curl package. o Added push parser for more efficient parsing from connection interfaces (e.g. files or urls). o The toMongo function has been removed. Use stream_out instead. o The `View` function will not be exposed in recent versions of rstudio that supported nested data natively. o Add hidden bigint_as_char argument in fromJSON o Fixed a memory leak in fromJSON. o I() forces boxing of a scalar when 'auto_unbox = TRUE' for RJSONIO compatibility. o toJSON now supports 'keep_vec_names=TRUE' will mimic RJSONIO legacy behavior. o toJSON now supports 'time_format' argument to customize formatting of POSIXt strings. Changes in version 0.9.14 (2014-12-01) o Change license to MIT (for GPL2 compatibility). o Add support for digits = I(n) to use significant precision. o When 'pretty' in toJSON is numeric, it specifies the number of spaces to indent. o Bug fix in validate() related to ScalarLogical o Add support for dataframe = "values" o Byte-order-marks are now ignored as suggested by rfc7159 o Add support for integer64 class (bit64 package) Changes in version 0.9.13 (2014-10-21) o Ported some number formatting to C o Fix when http server gives no content-type header o Prevent auto unboxing within a matrix o Assume UTF8 but fall back on native encoding for files and urls in fromJSON o Fix for 32 bit windows XP. Changes in version 0.9.12 (2014-09-27) o New JSON parser based on yajl. Some changes: * smaller and faster than libjson * better error messages * automatic validation * native \uXXXX unicode parsing * integer parsing * uses spaces intead of tabs for prettify o Other functions ported to C: collapse_object, null_to_na, is_recordlist, is_scalarlist o Expose 'flatten' function o Row names are encoded as "_row" instead of "$row" o Start with streaming functions o Some internal changes to support BSON/MongoDB Changes in version 0.9.11 (2014-09-05) o Added toJSON null argument o Fix bug in prettify object name escaping o Use C code for escaping and collapsing vectors o Several performance enhancements in fromJSON/simplify code o The auto_unbox argument is ignored for dataframes when dataframe="column" Changes in version 0.9.10 (2014-08-03) o Add support for escaped (hexadecimal) unicode characters in fromJSON(unicode = TRUE) o Exporting a wrapper for View() that flattens nested data frames o Add print method for scalar (unbox) Changes in version 0.9.9 (2014-07-22) o Fix bug where 'flatten' argument wasn't passed down o Make asJSON automatically unname any named lists within a data frame o fromJSON(url) now sets Accept header o Increase default to digits=4 in toJSON Changes in version 0.9.8 (2014-06-02) o Remove whitespace from default output of toJSON o Split vignette in 3 documents o Add support for simplifyMatrix within a data frame o Add class "json" output of toJSON, simplify, minify o Add print method for json o Cleaned up unit tests o Workaround for SSL handshake issues in https downloads o Raise warnings for SSL or Content-Type abnormalities Changes in version 0.9.7 (2014-04-18) o formally expose 'force' argument in toJSON o formally expose 'flatten' argument in fromJSON o fix bug in simplifyDataframe o fix in rlibjson code that converted empty array to AsIs object o auto coerse mongo type dates in fromJSON Changes in version 0.9.6 (2014-04-05) o toJSON gains argument auto_unbox o Minor fixes Changes in version 0.9.5 (2014-03-27) o Never raise error in toJSON when force=true o Fix typo in line 2 of JSONDefs/GNU_C.h (GUN -> GNU) o Run unit tests during R CMD check o Update vignette Changes in version 0.9.4 (2014-03-01) o Added minify function o Added unbox function o Fixed bug where toJSON 'force' argument wasn't passed down o Removed -DJSON_VALIDATE -DJSON_STREAM=1 from Makevars.in (already in JSONoptions.h) Changes in version 0.9.3 (2014-01-02) o Changes by Prof Ripley for Solaris/CRAN Changes in version 0.9.2 o Update libjson to 7.6.1 (fixes bug in the validator) o Generalized toJSON method 'matrix' to 'array' to work for higher dimensions. o Add option to encode matrix either row-major or column-major. o Set default SSL version to 3 for fromJSON("https://...") Changes in version 0.9.1 (2013-12-12) o Major performance improvements for toJSON.data.frame Changes in version 0.9.0 (2013-12-03) o Initial release