aboutsummaryrefslogtreecommitdiff
path: root/src/json.c
Commit message (Collapse)AuthorAge
...
* Fix harmless compiler warnings in JSON and FTS5.drh2023-12-14
| | | FossilOrigin-Name: 90135efccfeb1046f002bfcbd8dfec9a1a3b40cbe1b5c714ae065b06368e354f
* Bug fix in the JSONB validator.drh2023-12-13
| | | | | dbsqlfuzz ac6fa521a08609a642198e7decf64180e750b3c4 FossilOrigin-Name: 3e940a6a08b0a0434650cd3d8dd286e09ad8ab805b0a4d515e57bba5d3608577
* Improvements to UTF8 handling, and especially the handling of invalid UTF8,drh2023-12-13
| | | | | in the JSON routines. FossilOrigin-Name: 1b229c1101d6c384a30f343c5e47b471ab084b2d8e81170eb8f642afc1c67e3b
* Fix the JSON object label comparison object so that it works correctly evendrh2023-12-12
| | | | | if the label ends with escaped whitespace. FossilOrigin-Name: 4d5353cadd7b7c5f105bc197f3ec739e2d041472d6b3e939654c9f9cfc2749ae
* Add NEVER to two unreachable branches in JSON.drh2023-12-12
| | | FossilOrigin-Name: c96ebb086feb89341565cc52b970ae7799ce1327fe1ad4fc790f1b0dcaa6e229
* Improvements to JSONB validation - catch more cases where the input doesdrh2023-12-12
| | | | | not conform to spec. FossilOrigin-Name: be1864eac4eb75cc30bf98f73092c8608467f4bd956240df6a0cbea9f1e09e85
* Validity checking of text nodes in JSONB.drh2023-12-12
| | | FossilOrigin-Name: fa5160687c2f970d407e8af73c246f7cd806bb4ce35f29a79ac534a8646a6c8e
* The json_error_position() function now reports an approximate byte offsetdrh2023-12-11
| | | | | to the problem in a JSONB if there is a problem. FossilOrigin-Name: 80d5d94dff6a2d2557039be3d7d47c1a6003c4b98defe0bd411acfeb963ad5dd
* json_error_position() now uses jsonValidityCheck() to find the approximatedrh2023-12-11
| | | | | position of an error in a JSONB blob. FossilOrigin-Name: c3d60cf7028a333b825d5b89516945a73e0c158ac81d8bcc117d21bfd98602c8
* json_valid(*,8) allows minus-signs on hexadecimal literals.drh2023-12-11
| | | FossilOrigin-Name: c0d7f4520d839a268b3fd2474d0897a9832aa608bd6238b3e287fabecf07a350
* Rename the new test-control to SQLITE_TESTCTRL_JSON_SELFCHECK. Make it sodrh2023-12-11
| | | | | that the current value of the setting can be interrogated. FossilOrigin-Name: 7aff1d9a4cb17ecd5abab21ab032f35a78741dd641ddd8cbcc85fc4a81a0707d
* Add SQLITE_TESTCTRL_VALIDATE_JSONB, which if enabled under SQLITE_DEBUG causesdrh2023-12-11
| | | | | cross-checking of generate JSONB. FossilOrigin-Name: b410a4db74a650003539ffaaea18519d5159b504daac47db6a4874b730f40ac8
* Work toward enhanced functionality for json_valid() with deep checkingdrh2023-12-11
| | | | | of the JSONB (second argument has bit 0x08). FossilOrigin-Name: c370d573198b151767f04e91bf8baa4ae0076751ae468c5709742a0b0ed16770
* Fix a potential use of uninitialized value in json_valid() with 2nddrh2023-12-11
| | | | | argument of 8. FossilOrigin-Name: fa102036fe46eeb71b7df3e265be1935ae5c78e0b939b08841bcfb8abadbc77a
* Fix a harmless UBSAN warning.drh2023-12-08
| | | FossilOrigin-Name: 1503cba6d17e9bade7a5c103ddd23241ff4741f9a2e3032ffe2987af243dae65
* Fix a potential problem RCStr access on a JsonString object that is notdrh2023-12-08
| | | | | really and RCStr. Fuzzer/UBSAN find. FossilOrigin-Name: d2f2174ce2cc89606034e158149a2d05fc3627ec4d5cdb772add7a2250f29d78
* Rework the jsonEachPathLength() routine in json_tree() so that it isdrh2023-12-07
| | | | | less susceptible to problems due to goofy object labels. FossilOrigin-Name: 858b76a00e8ff55215f7a2e6a4cd77fc4d4f98dea7224cd90488744f5ce246a4
* Improved detection of corrupt JSONB in the jsonReturnFromBlob() function.drh2023-12-07
| | | FossilOrigin-Name: b014736c1f80ccc46fb4b24ac04310a6ce5cb5b6653665efff366cb3bc742257
* Do correct comparisons between object labels in JSON even when the two labelsdrh2023-12-06
|\ | | | | | | | | contain different JSON escapes. FossilOrigin-Name: bda2e30cc22e180b19a7a05824dd345880eb402ae5450b2d2dd954946c3ae135
| * Fix the routine that determines the json_tree.path value for the first rowdrh2023-12-06
| | | | | | | | | | | | so that it correctly takes into account escape sequences in the path argument. FossilOrigin-Name: b9243ee8a37c62eb8848e765bd4af83bc1b3d3eb24fb4268a1357ad1f8b2e1fb
| * The rule for the RHS of the ->> and -> operators when the RHS does not begindrh2023-12-06
| | | | | | | | | | | | with $ is that it must be (1) all digits, or (2) all alphanumerics, or (3) contained within [..] or else it will become a quoted label. FossilOrigin-Name: 0e059a546ec11fa5c6d007bd65c249ee2422f1facbdb2792c53e0bc0ccc97e14
| * Increased rigor in comparisons between object labels in JSON.drh2023-12-06
| | | | | | FossilOrigin-Name: 2bc86d145fccc07107b7753cb1a69122676d4096fe59c454497bd81a6142d45e
* | Correctly handle 8-byte sizes in the JSONB format.drh2023-12-06
|/ | | | | [forum:/forumpost/283daf08e91183fc|Forum post 283daf08e91183fc]. FossilOrigin-Name: 73d390f39c0bbbc017e01544e4d43c76761f2599bd57f900131c706270dfd202
* Use extra assert() statement to silence harmless static analyzer warnings.drh2023-12-05
| | | FossilOrigin-Name: 174c2b2eef5fecd96a5fc89b81032fe81f7801f12097cea10e7e7f0a02114813
* Miscellaneous comment cleanup and typo fixes.drh2023-12-05
| | | FossilOrigin-Name: 59446dc0bd0091572122a3c8b4653d7a2dc867d16c4a5919f79b81bc3a673ce3
* Use strspn() to accelerate whitespace bypass in the JSON parser.drh2023-12-05
| | | FossilOrigin-Name: 843197df08352bdff4b87be91d160e574572aded0d0c66142fd960000c0b4701
* Small performance gain by unwinding the string literal delimiter searchdrh2023-12-05
| | | | | loop in the JSON parser by one more level. FossilOrigin-Name: 4c587feac153e8ebe526559ec3d254f545f81e8d1ed3126f91a5ff25ec4aa72e
* Use an assert() to fix a harmless static analyzer warning.drh2023-12-05
| | | FossilOrigin-Name: a249ca657e624028bc6b3d2c2bcedd7162d118addb7d62ce519920cecebf1860
* Fix OOM and corrupt JSONB handling in json_patch().drh2023-12-05
| | | FossilOrigin-Name: 1910feb0b7d5cc2b810c3322f6cca281d8730182d30d162bd7bb56800979ea91
* Rename the internal routine jsonMergePatchBlob() to just jsonMergePatch().drh2023-12-04
| | | FossilOrigin-Name: ebf667b616235bb64b83832008342ba5e7b10b2c170d7cebc431f040fef7ecfb
* Fixes to error handling in json_array_length().drh2023-12-04
| | | FossilOrigin-Name: aa85df2d26b74c171c55bde19ef17c4f11f40b8af7181bbf7162f87cdea7e88b
* Do not make the input JSONB editable in json_remove() if there are no PATHdrh2023-12-04
| | | | | argument. FossilOrigin-Name: 66594544f3ba9977475a3e3f74404eb2b2fb845053b28bd24c2b52c7df94e9d7
* Fix errors in rendering JSON5 escape sequences embedded in JSONB.drh2023-12-04
| | | FossilOrigin-Name: f1a51ae3863557526a51c6e98e71fcdf4f1ed14a36212b3c90f7408f926345e4
* Continuing simplifications and code cleanup.drh2023-12-04
| | | FossilOrigin-Name: ddf92b5059a9106753fd18b82ba8daa269a62af947561c460790107b83416f0b
* Remove reachable ALWAYS and NEVER macros.drh2023-12-04
| | | FossilOrigin-Name: f601de3eeabd85993c1f5ee96b62de6fdabbeae2fe8950e00d08feb48d42c498
* Two new NEVER macros.drh2023-12-04
| | | FossilOrigin-Name: 52632c92cb06faf0e804654b3490fd6c199521107bd30c8fcbc3a2a5a488098f
* Repair issues and inefficiencies found during testing.drh2023-12-04
| | | FossilOrigin-Name: ae973cb1515f9d76409c92a2ca2ffd6b71f32b0b490a4886770e7c1b90f12611
* Better pre-scan size estimations for objects in the JSON parser resultingdrh2023-12-04
| | | | | in fewer reallocations and memmove operations. FossilOrigin-Name: 526b27f90897f5e35dfff7257daf6c4ce4798d649b09b8aecfb02df0449e3c51
* Back off on the use of strlen() for situations where sqlite3_value_bytes()drh2023-12-04
| | | | | will work as well, for performance. FossilOrigin-Name: 79fb54fbb8b9c30f47cdbd437d24a21542716241e822749e5e28c9fbc449bfa8
* Remove dead code. Improved reporting of errors in JSON inputs.drh2023-12-03
| | | FossilOrigin-Name: 2eaa738e6b5c1b67b3e57c868d9c3a30eea38a0b3b8b02482f06d57a45b10921
* Avoid problems when the path argument to json_tree() contains embedded U+0000drh2023-12-03
| | | | | characters. FossilOrigin-Name: 9f055091af01a5dddba1a7e9868ad030c8f206237e1569215cb161e53e54aa71
* Ensure that OOM conditions in the generation of the "bad JSON path" errordrh2023-12-03
| | | | | message result in an SQLITE_NOMEM error. FossilOrigin-Name: aa0e02b5c26a2ef3d6216a0ed8bc01382be43173485f898cb63f2a8c559f2e74
* Enable incorrect JSONB to be rendered into text without hitting andrh2023-12-03
| | | | | assertion for a bad whitespace escape in a string. FossilOrigin-Name: 4d6a9a217df6792b41766b774fb0c0553b45f9104c26a0955bf4a30862d7d7bf
* Do not let bad hexadecimal digits in malformed JSONB cause an assertion fault.drh2023-12-03
| | | FossilOrigin-Name: 8dec1ba1e5076ff596756e00c1e2ada0245f168a503dd1cadadf848331acfac3
* Minor code changes for consistency and to simplify testing.drh2023-12-03
| | | FossilOrigin-Name: df272bd837910ad9e03e222716a1201a601399664365f1dcf73d5932372518ed
* Implement strict JSONB checking in the json_valid() function.drh2023-12-02
| | | FossilOrigin-Name: 0f26d38880fcbc207abcc94dbc170a7428bab1b4f0b7731aaf5bee0224000994
* Fix harmless compiler warnings reported by MSVC.drh2023-12-02
| | | FossilOrigin-Name: 419652c0c82980bd043584dcd2976f91dfff7b926b216d597698299850b855c0
* Code and comment cleanup. Everything should work the same.drh2023-12-02
| | | FossilOrigin-Name: c640754df0d3ffdad994745f0d0e10c8f19f424b87f6a6e6e269491a0350b950
* Fix harmless compiler warnings. Refactor some identifier names fordrh2023-12-02
| | | | | clearer presentation. FossilOrigin-Name: 7e3941502789c5afaf19b08112f464abf5e3cba7f92fc9290af2a0f96127ad9a
* Take extra care to ensure that JSONB values that are in cache are actuallydrh2023-12-02
| | | | | | owned by the JSON subsystem, and that ownership of such values is not handed back to the bytecode engine. FossilOrigin-Name: 1304534001e9ef66c6b12752b69d790bfa3427cc803f87cc48ca22ae12df0fdf