SQLite
File History
Not logged in

History of ext/misc/json1.c

2017-05-11
16:49
Cache the JSON parse used by json_extract(). (file: [dbe08661] check-in: [44ca6c2c] user: drh branch: auxdata-cache, size: 70930)
2017-04-14
14:50
Make USE_FULLWARN=1 the default for MSVC and fix harmless compiler warnings. (file: [bd3bbdef] check-in: [6bf67376] user: mistachkin branch: trunk, size: 69404)
2017-04-13
00:12
Fix a regression caused by the fix for ticket [6c9b5514077fed34551f98e64c09a1] - control characters allowed in JSON. (file: [e54799e8] check-in: [8e7b6118] user: drh branch: trunk, size: 69404)
2017-04-11
18:55
Limit the depth of recursion for valid JSON in the JSON1 extension in order to avoid using excess stack space in the recursive descent parser. Fix for ticket [981329adeef51011052667a9]. (file: [18d80526] check-in: [1f68c184] user: drh branch: trunk, size: 69369)
2017-04-10
12:25
Change the JSON extension so that it disallows control characters inside of strings. Fix for ticket [6c9b5514077fed34551f98e64c09a10dc2fc8e16]. (file: [70d49f69] check-in: [475d8f82] user: drh branch: trunk, size: 68826)
2017-04-08
18:18
Disallow leading zeros on numeric constants in JSON. Fix for ticket [b93be8729a895a528e2] (file: [312b4ddf] check-in: [204e72f0] user: drh branch: trunk, size: 68774)
2017-03-25
12:08
Fix two harmless compiler warnings. (file: [92b9e404] check-in: [32be9c3f] user: drh branch: trunk, size: 68925)
2017-03-24
19:45
Fix a harmless compiler warning in the JSON1 extension. (file: [f963c2b8] check-in: [c2c3dd84] user: drh branch: trunk, size: 68903)
12:35
Fix an error in the new json_patch() routine discovered by Ralf Junker. (file: [52f93b91] check-in: [9d535041] user: drh branch: trunk, size: 68903)
2017-03-23
20:33
Change the name of the json_merge_patch() function to just json_patch(). (file: [c065914b] check-in: [04d41004] user: drh branch: json_mergepatch, size: 68557)
12:56
Avoid redundant edits in the json_merge_patch() function. (file: [dbb168b0] check-in: [4a8e6437] user: drh branch: json_mergepatch, size: 68562)
00:46
Fix harmless compiler warnings in the new json_merge_patch() logic. (file: [bae7cfb4] check-in: [5d2cf5a2] user: drh branch: json_mergepatch, size: 68572)
00:13
Various fixes to the json_merge_patch() function. (file: [8a8ba23a] check-in: [f49fd255] user: drh branch: json_mergepatch, size: 68572)
2017-03-22
21:45
Change the name of the new function to "json_merge_patch()". (file: [be1032c5] check-in: [53bf70f3] user: drh branch: json_mergepatch, size: 68358)
21:24
Initial implementation of the json_mergepatch(A,B) SQL function. (file: [ca27a98c] check-in: [a2674440] user: drh branch: json_mergepatch, size: 68358)
2017-01-25
13:54
Fix SQLITEINT_H macro usage in two extensions. (file: [552a7d73] check-in: [0803390c] user: drh branch: trunk, size: 65222)
2016-11-23
20:31
Fix OOM error reporting in the json1_group_object() SQL function. Remove an unreachable branch from the JSON1 logic. (file: [f2ff73bb] check-in: [6492e57e] user: drh branch: branch-3.15, size: 65227)
2016-11-07
18:18
Fix OOM error reporting in the json1_group_object() SQL function. Remove an unreachable branch from the JSON1 logic. (file: [e0797ef1] check-in: [b5409849] user: drh branch: trunk, size: 65224)
15:15
Replace some unreachable branches from the JSON1 extension with assert(). (file: [b8aa1219] check-in: [145cd13e] user: drh branch: trunk, size: 65233)
13:37
Fix the JSON1 extension so that the JSON validator correctly rejects malformed backslash escapes within string literals. (file: [813a2ff1] check-in: [7a635391] user: drh branch: trunk, size: 65236)
2016-08-01
17:06
Fix other harmless compiler warnings. (file: [9799e425] check-in: [90d2c490] user: drh branch: trunk, size: 64761)
2016-06-17
13:01
Add the json_quote() function to the JSON1 extension. (file: [d51a764b] check-in: [2c3714ae] user: drh branch: json_quote, size: 64739)
2016-02-11
15:37
Add JSON1 and FTS5 to the set of extensions subject to close compiler warning analysis. Fix some warnings in each. More (harmless) warnings still exist in FTS5. (file: [b9c88d5c] check-in: [cfe2eb88] user: drh branch: trunk, size: 64197)
2016-02-05
01:55
Improvements to the way that OOM errors are processed. (file: [a27cf1ec] check-in: [c3ef0347] user: drh branch: oom-handling, size: 64038)
2016-02-04
10:28
Escape control characters in JSON. Fix for ticket [ad2559db380abf8]. (file: [8698ea0c] check-in: [4f1b5229] user: drh branch: trunk, size: 63998)
2016-01-01
00:15
Remove unreachable branches from the new JSON aggregate functions. (file: [7b1155f5] check-in: [6e30f8c6] user: drh branch: trunk, size: 63134)
2015-12-30
01:07
Add the json_group_array() and json_group_object() aggregate functions to the JSON1 extension. (file: [b7ed42db] check-in: [7f386a93] user: drh branch: trunk, size: 63178)
2015-10-16
15:35
Fix the JSON1 extension so that it does not depend on isdigit() and strtod() from the standard library when compiled into SQLite as part of the amalgamation. (file: [4f45afd9] check-in: [bc9a9a60] user: drh branch: trunk, size: 60015)
15:16
Form-feed is not valid whitespace for json. Fix for ticket [57eec374ae1d0a1d] (file: [d559a00d] check-in: [28957d63] user: drh branch: trunk, size: 59584)
2015-10-14
18:45
Avoid exporting sqlite3_json_init() from amalgamation builds. (file: [fed5b948] check-in: [8463f7e7] user: dan branch: dll-build-fix, size: 59584)
2015-10-12
22:20
Fix a couple harmless compiler warnings. (file: [d3102209] check-in: [7f896a97] user: mistachkin branch: trunk, size: 59557)
2015-10-10
14:00
Add some #ifdef-ery to json1.c to avoid a duplicate typedef when used in the amalgamation, since some compilers become upset over duplicate typedefs. (file: [e827cb31] check-in: [de28acd4] user: drh branch: trunk, size: 59557)
2015-10-09
20:40
The previous fix to JSON1 was not complete. A few more tweaks are needed for correct handling of all oversized integers. (file: [b169036e] check-in: [4a47f017] user: drh branch: trunk, size: 59395)
18:21
Fix the JSON1 extension so that it renders integers outside the range of -9223372036854775808 to +9223372036854775807 as floating-point numbers. (file: [2b26b004] check-in: [ae736e35] user: drh branch: trunk, size: 59317)
2015-10-08
19:29
First attempt to add json1 and fts5 to the amalgamation. This check-in does not compile. (file: [e1822098] check-in: [d820a1bd] user: drh branch: amalg-json1-fts5, size: 58680)
2015-09-26
17:44
Enable adding JSON1 by appending the json1.c source file to the amalgamation and compiling with -DSQLITE_ENABLE_JSON1 (file: [263cac02] check-in: [33404b20] user: drh branch: trunk, size: 58555)
2015-09-24
01:40
Another (smaller) performance optimization for the JSON parser. (file: [557d6b2d] check-in: [c43daa8c] user: drh branch: trunk, size: 58481)
01:06
Performance optimizations on the JSON parser. (file: [7d0000e3] check-in: [7dd4b07a] user: drh branch: trunk, size: 58450)
2015-09-23
01:10
Do not allow a comma at the end of a JSON array or object. (file: [7659013d] check-in: [7c7a3f3e] user: drh branch: trunk, size: 56505)
2015-09-22
01:15
Futher simplifications to json1.c. Also an obscure bug-fix in the initial output of json_tree() when using a path to an object contained within an array. (file: [8eefcbdc] check-in: [fcb1e327] user: drh branch: trunk, size: 56443)
00:21
Fix json_set() so that it can overwrite a value that was previously overwritten during the same call. (file: [c5e7018b] check-in: [0f160416] user: drh branch: trunk, size: 56494)
2015-09-21
22:53
Simplifications to the json1.c logic. (file: [54f067ea] check-in: [1646a2bd] user: drh branch: trunk, size: 56142)
2015-09-19
18:54
Fix a memory leak in json1.c that could occur after misuse of json_object(). (file: [a1f7dd9b] check-in: [394b81b1] user: drh branch: trunk, size: 56149)
11:57
Fix an off-by-one error (really off-by-2 in this case) in the buffer resize logic of json1. (file: [d96049b4] check-in: [d2a02737] user: drh branch: trunk, size: 56148)
2015-09-17
17:21
Avoid passing (signed char) values directly to isspace(), isalnum() or isdigit() in json1.c. Cast the value to (unsigned char) first. (file: [4b1048a7] check-in: [6713e35b] user: dan branch: trunk, size: 56116)
2015-09-11
18:05
Fix harmless compiler warnings. (file: [f35d00fb] check-in: [bfc7b84b] user: mistachkin branch: trunk, size: 55792)
00:06
Take out the goofy '$$' path syntax. Instead, use subtypes to communicate when a string is JSON. Add the json() function that validates and minifies the JSON and sets the appropriate subtype. (file: [96490b8e] check-in: [8a80d645] user: drh branch: subtypes, size: 55702)
2015-09-10
17:20
Create separate "path" and "root" columns in the json_each() and json_tree() virtual tables. "Root" is the 2nd parameter and is fixed. "Path" varies as json_tree() walks the hierarchy. (file: [4387d091] check-in: [127cce3e] user: drh branch: trunk, size: 56724)
03:29
Fix the json_tree() scan for the case when a path is supplied. Add new json1 test cases. (file: [46c2aff1] check-in: [6adc7de7] user: drh branch: trunk, size: 56598)
2015-08-29
19:41
Enhance the json_extract() function so that if given multiple PATH arguments it will return a JSON array with all of the answers. Also update comments within the json1 extension to reflect stricter interpretation of JSON and PATH arguments. (file: [bd51e8c1] check-in: [1da60c3d] user: drh branch: trunk, size: 56187)
17:22
Fix the build with -DSQLITE_OMIT_VIRTUALTABLE. (file: [5f39a87b] check-in: [752918de] user: drh branch: trunk, size: 55646)
16:02
Do not consider an empty string to be valid JSON. Add some additional JSON test cases. (file: [232a3125] check-in: [fd19ff02] user: drh branch: trunk, size: 55495)
00:54
Change the json1.c module so that it throws an error if any of the JSON selector paths are malformed. (file: [063bf62f] check-in: [3aa0855f] user: drh branch: trunk, size: 55494)
2015-08-28
20:07
Back out the json_check() routine. Instead, throw an error if the input to a json function (other than json_valid()) is not valid JSON. (file: [aa344845] check-in: [dc9ce7b1] user: drh branch: trunk, size: 52935)
03:48
Add the json_check() function, which returns its argument if the argument is well-formed JSON or which throws an error otherwise. (file: [0b2bf3f2] check-in: [64abb65d] user: drh branch: trunk, size: 53162)
03:33
Enhance the json_insert(), json_replace(), and json_set() functions with the ability to add JSON instead of text if the argument is text and if the PATH begins with '$$' instead of just '$'. (file: [e0aeaa8b] check-in: [44f103d8] user: drh branch: trunk, size: 52503)
2015-08-24
12:42
Improvements to JSON string dequoting. (file: [541004e4] check-in: [196d66d3] user: drh branch: trunk, size: 51818)
02:32
Fix corner-case problems in the type and atom columns of json_each() and json_tree(). (file: [443f8b54] check-in: [f0aba0e1] user: drh branch: trunk, size: 52050)
2015-08-23
20:44
Fix minor glitches in the json1.c extension, mostly having to do with OOM behavior. (file: [4b66d2ce] check-in: [cc520414] user: drh branch: trunk, size: 52030)
02:42
Fixes to json_each() and json_tree(). Improved json_parse() debugging output. (file: [31bc1bab] check-in: [fc1b24f3] user: drh branch: trunk, size: 51968)
2015-08-22
19:39
Add the json_valid() function to the json1.c extension. Fix various minor problems in the json1.c extension. (file: [88273dda] check-in: [380a9734] user: drh branch: trunk, size: 51939)
03:05
Fix a couple instances of OOM handling in the json extension. (file: [2eae688e] check-in: [213a6c5c] user: drh branch: trunk, size: 50300)
2015-08-21
20:37
Fixes for compiler warnings and errors in the makefiles. Rename the one test script to json101.test. (file: [f83f02ec] check-in: [9ff6ccde] user: drh branch: json, size: 50246)
20:12
Change the name of the json loadable extension to "json1.c", in anticipation of having future major changes to the interface. (file: [92bb4e5f] check-in: [d0d4bec9] user: drh branch: json, size: 49705) Renamed from ext/misc/json.c