Commit Graph

  • c44b0262bc Merge pull request 'schemagen: reject absent additionalProperties' (#58) from weaselbot/weaseljson:weaselbot/issue-55 into main main andrew 2026-07-20 18:06:53 +00:00
  • 814b24efba Merge pull request 'Fix schemagen integer parser rejecting zero with negative exponents' (#57) from weaselbot/weaseljson:weaselbot/issue-56 into main andrew 2026-07-20 18:00:36 +00:00
  • 86b58e83cb schemagen: reject absent additionalProperties weaselbot 2026-07-19 22:06:23 -04:00
  • cdff634057 Fix schemagen integer parser rejecting zero with negative exponents weaselbot 2026-07-19 22:00:15 -04:00
  • 16f5d3cd9d Merge pull request 'Handle null parser in WeaselJsonParser_parse' (#54) from null-parser into main andrew 2026-07-15 22:03:59 +00:00
  • 6beb538b61 Add missing status enum to weaseljson.py andrew 2026-07-15 17:55:22 -04:00
  • 6520039dc2 Address review feedback andrew 2026-07-15 14:12:41 -04:00
  • 93203b14f5 Add missing unlikely annotation andrew 2026-07-15 12:30:11 -04:00
  • 09c0fb72ca Handle null parser in WeaselJsonParser_parse andrew 2026-07-15 12:30:05 -04:00
  • 70bb33eeaf Merge pull request 'make WeaselJson_OVERFLOW a terminal state like WeaselJson_REJECT' (#53) from weaselbot/weaseljson:weaselbot/issue-52 into main andrew 2026-07-13 20:58:14 +00:00
  • 42d37d1fd7 Don't list all terminal statuses for weaseljson andrew 2026-07-13 16:49:16 -04:00
  • 5e462f1477 make WeaselJson_OVERFLOW a terminal state like WeaselJson_REJECT weaselbot 2026-07-13 11:45:58 -04:00
  • f5ceb392c2 Merge pull request 'schemagen: add regression test for nullable cyclic $ref targets' (#50) from weaselbot/weaseljson:weaselbot/issue-14 into main andrew 2026-06-30 16:50:07 +00:00
  • be92755cbf schemagen: add regression test for nullable cyclic $ref targets (issue #14) weaselbot 2026-06-30 12:42:03 -04:00
  • d281c35811 Merge pull request 'schemagen: reject self-referential array $ref cycles instead of crashing' (#49) from weaselbot/weaseljson:weaselbot/issue-33 into main andrew 2026-06-30 16:37:02 +00:00
  • f6617a1558 Merge pull request 'schemagen: escape control characters in generated C++ string literals' (#48) from weaselbot/weaseljson:weaselbot/issue-35 into main andrew 2026-06-30 16:30:21 +00:00
  • ababd3a8fd schemagen: reject self-referential array $ref cycles instead of crashing weaselbot 2026-06-30 12:29:37 -04:00
  • 681892107f schemagen: escape control characters in generated C++ string literals weaselbot 2026-06-30 12:26:10 -04:00
  • e22bc039ae Merge pull request 'schemagen: fix quadratic leading-zero strip in integer fallback' (#47) from weaselbot/weaseljson:weaselbot/issue-34 into main andrew 2026-06-30 16:16:44 +00:00
  • ceb16e5405 schemagen: fix quadratic leading-zero strip in integer fallback weaselbot 2026-06-30 12:09:26 -04:00
  • 241c29073b Merge pull request 'schemagen: handle WeaselJsonParser_create failure in RootBuilder' (#46) from weaselbot/weaseljson:weaselbot/issue-36 into main andrew 2026-06-30 15:35:20 +00:00
  • abeaae7ed7 schemagen: handle WeaselJsonParser_create failure in RootBuilder weaselbot 2026-06-30 11:26:59 -04:00
  • 4bd1088018 Merge pull request 'Include <cstdint> in json_value.h for uint8_t' (#45) from weaselbot/weaseljson:weaselbot/issue-37 into main andrew 2026-06-29 18:57:40 +00:00
  • 82bdc8a080 Merge pull request 'python: raise OSError when shared library is missing' (#44) from weaselbot/weaseljson:weaselbot/issue-38 into main andrew 2026-06-29 18:53:49 +00:00
  • 6508616edc Merge pull request 'Handle null parser in WeaselJsonParser_reset and _destroy' (#42) from weaselbot/weaseljson:weaselbot/issue-41 into main andrew 2026-06-29 18:26:48 +00:00
  • e5c970a605 Include <cstdint> in json_value.h for uint8_t weaselbot 2026-06-29 14:04:04 -04:00
  • 96f61665bf python: raise OSError when shared library is missing weaselbot 2026-06-29 14:03:03 -04:00
  • 34fc22a7c2 Handle null parser in WeaselJsonParser_reset and _destroy weaselbot 2026-06-29 13:53:31 -04:00
  • 08b864d31b Reject invalid UTF-16 surrogate pairs and lone low surrogates for clarity andrew 2026-06-29 13:37:03 -04:00
  • 4ce2002663 Merge pull request 'schemagen: reject scalar root values when root schema is object/array' (#32) from weaselbot/weaseljson:weaselbot/issue-16 into main andrew 2026-06-24 19:34:06 +00:00
  • df693ef4c9 schemagen: reject scalar root values when root schema is object/array weaselbot 2026-06-24 14:30:36 -04:00
  • e5cbaac401 Merge pull request 'schemagen: cache non-object $defs entries to avoid duplicate types' (#31) from weaselbot/weaseljson:weaselbot/issue-17 into main andrew 2026-06-24 17:02:38 +00:00
  • e155e0bbf4 schemagen: restore nullable tuple return for object schemas weaselbot 2026-06-24 09:51:19 -04:00
  • 717f30099f schemagen: cache non-object $defs entries to avoid duplicate types weaselbot 2026-06-23 22:16:34 -04:00
  • 1404ebdfbd Merge pull request 'fix schemagen integer parsing boundary bugs' (#30) from weaselbot/weaseljson:weaselbot/issue-19 into main andrew 2026-06-24 00:40:09 +00:00
  • 38079cc278 schemagen: parse integer fallback exactly for decimal/exponent forms weaselbot 2026-06-23 18:35:00 -04:00
  • ceb4bc1041 Merge pull request 'schemagen: drop support for additionalProperties: true' (#28) from weaselbot/weaseljson:weaselbot/issue-20 into main andrew 2026-06-23 20:56:58 +00:00
  • 16f13c241c schemagen: drop support for additionalProperties: true weaselbot 2026-06-23 14:07:41 -04:00
  • ab95fefb09 schemagen: reject duplicate unknown keys in non-strict objects weaselbot 2026-06-23 12:27:05 -04:00
  • e8830e27e9 Merge pull request 'schemagen: reserve generated Root/Skip/RootScalar and avoid Kind/ArrN collisions' (#27) from weaselbot/weaseljson:weaselbot/issue-21 into main andrew 2026-06-23 17:48:57 +00:00
  • 5427db4b3d Merge pull request 'schemagen: fix nullable root types (#13)' (#29) from weaselbot/weaseljson:weaselbot/issue-13 into main andrew 2026-06-23 17:43:19 +00:00
  • b5491afb38 schemagen: fix nullable root types (#13) weaselbot 2026-06-23 12:58:28 -04:00
  • 46ff8e2164 schemagen: reserve generated Root/Skip/RootScalar and avoid Kind/ArrN collisions weaselbot 2026-06-23 12:23:09 -04:00
  • 8d37b9b602 Merge pull request 'Reject negative lengths in WeaselJsonParser_parse' (#25) from weaselbot/weaseljson:weaselbot/issue-24 into main andrew 2026-06-22 18:53:20 +00:00
  • 3d7dc97471 Merge pull request 'check WeaselJsonParser_create return value in Python bindings' (#26) from weaselbot/weaseljson:weaselbot/issue-23 into main andrew 2026-06-22 18:52:46 +00:00
  • a26e101191 check WeaselJsonParser_create return value in Python bindings weaselbot 2026-06-22 02:29:13 -04:00
  • 43e3c9904f Reject negative lengths in WeaselJsonParser_parse weaselbot 2026-06-22 02:26:30 -04:00
  • 5e18347e35 Merge pull request 'schemagen: add C++20 keywords to the C++ keyword allow-list' (#22) from weaselbot/weaseljson:weaselbot/issue-18 into main andrew 2026-06-22 00:54:04 +00:00
  • 9cd74631b6 schemagen: add C++20 keywords to the C++ keyword allow-list weaselbot 2026-06-21 12:52:07 -04:00
  • 05185eb3ee Merge pull request 'Make parser reject state sticky after WeaselJson_REJECT' (#15) from weaselbot/weaseljson:weaselbot/issue-12 into main andrew 2026-06-19 17:17:10 +00:00
  • 9839104635 Make parser reject state sticky after WeaselJson_REJECT weaselbot 2026-06-19 13:08:28 -04:00
  • b641489a59 Merge pull request 'schemagen: support objects with >32 properties' (#9) from weaselbot/weaseljson:weaselbot/issue-3 into main andrew 2026-06-18 22:23:52 +00:00
  • 2ad15708eb ci: register schemagen regression tests with ctest weaselbot 2026-06-18 10:31:27 -04:00
  • ca474e3f99 schemagen: support objects with more than 32 properties weaselbot 2026-06-18 10:30:58 -04:00
  • 7c1c18fe6f Merge pull request 'Reset transient parser state in Parser3::reset' (#10) from weaselbot/weaseljson:weaselbot/issue-2 into main andrew 2026-06-18 20:09:32 +00:00
  • 3d9772357d Merge pull request 'schemagen: keep null elements in arrays with nullable item types' (#8) from weaselbot/weaseljson:weaselbot/issue-5 into main andrew 2026-06-18 20:07:48 +00:00
  • 644d244990 Merge pull request 'schemagen: deduplicate enum constants that collide after sanitization' (#11) from weaselbot/weaseljson:weaselbot/issue-4 into main andrew 2026-06-18 20:01:08 +00:00
  • 859fa41ecb schemagen: move test configuration into contrib/schemagen/CMakeLists.txt weaselbot 2026-06-18 15:26:55 -04:00
  • 359f4f4bb6 schemagen: deduplicate enum constants that collide after sanitization weaselbot 2026-06-18 10:22:19 -04:00
  • 7a8e5f84f2 Python bindings: add missing on_key_data callback (#7) weaselbotandandrew 2026-06-18 15:01:55 +00:00
  • 919b89c842 Parser3::reset: clear inKey and other per-parse transient state weaselbot 2026-06-18 10:34:43 -04:00
  • 47f1077100 schemagen: keep null elements in arrays with nullable item types weaselbot 2026-06-18 10:18:11 -04:00
  • db759a9333 schemagen: accept integral exponent/decimal numbers for integer slots andrew 2026-06-15 00:57:30 -04:00
  • 4301351042 Fix stack overflow in no-musttail fallback for direct continuations andrew 2026-06-15 00:53:50 -04:00
  • 4bb13a23ff Bigger symbol stack so actual stack might overflow andrew 2026-06-15 00:47:19 -04:00
  • 8a1a922353 Add more coverage andrew 2026-06-15 00:45:17 -04:00
  • ceaadfb750 Add deep nested-array fuzz seed andrew 2026-06-15 00:42:45 -04:00
  • 8191df404d Return int (not WeaselJsonStatus) from internal continuations andrew 2026-06-15 00:34:29 -04:00
  • b3dac03f70 Reject too-small stackSize in WeaselJsonParser_create andrew 2026-06-15 00:06:03 -04:00
  • dfcac64330 Add JSON Schema -> C++ streaming parser generator andrew 2026-06-14 23:46:15 -04:00
  • ca6f69424f Run fuzz corpus from ctest andrew 2026-06-14 23:34:15 -04:00
  • 46408fd56f Add a fallback fuzz binary if libfuzzer not available andrew 2026-06-14 23:30:42 -04:00
  • 063872ed3c Fix potential stack overflow for no musttail andrew 2026-06-14 23:29:31 -04:00
  • b76f47abf7 Set cmake_minimum_required to 3.10 andrew 2026-06-14 22:43:12 -04:00
  • 2a52162d7f Add stack chk symbols to aarch64 imports andrew 2026-06-14 20:47:28 -04:00
  • e8f51eff53 Guard --nobranchprotection behind a version check andrew 2026-06-14 20:34:29 -04:00
  • 9ea798dba4 Fix aarch64 multi-byte UTF-8 parsing and add symbol imports file andrew 2026-06-14 19:42:41 -04:00
  • 12c976a62c Fix make build by depending on target name instead of TARGET_OBJECTS in custom command andrew 2026-06-14 19:28:47 -04:00
  • b079b293f7 Include <cstdlib> for malloc and free in lib.cpp andrew 2026-06-14 19:22:32 -04:00
  • d48fe618ac Add CI andrew 2026-06-14 19:18:31 -04:00
  • 470564a5df Improve coverage andrew 2026-06-14 18:03:30 -04:00
  • b9142bf36a Avoid some unnecessary string destruction in bench andrew 2026-06-14 17:31:49 -04:00
  • 97f1d3d352 Skip string and go directly to string2 from object3 andrew 2026-06-14 17:16:45 -04:00
  • d8c9491eb3 Add fuzz test that finds previously missed coverage andrew 2026-06-14 16:50:36 -04:00
  • b4144298bb Update doctest.h to 2.5.2 andrew 2026-06-14 16:35:53 -04:00
  • b894ae7a80 Fix arch-specific hardening_check ignore flags andrew 2026-06-14 16:31:08 -04:00
  • eb9925ffec Only pass -pie when linking executables andrew 2026-06-14 16:20:48 -04:00
  • 995ddf329f Fixes for gcc 15 andrew 2025-11-06 12:49:38 -05:00
  • 5fc823b392 This didn't belong here and isn't really necessary andrew 2025-08-25 16:50:43 -04:00
  • 490b49e55d Remove redundancy andrew 2025-08-25 16:49:21 -04:00
  • 6fc263074e Simplify flowchart andrew 2025-08-25 16:46:46 -04:00
  • befb464619 More README tinkers andrew 2025-08-25 16:39:01 -04:00
  • f2bb72b3dc More clarifications in README andrew 2025-08-25 16:19:34 -04:00
  • 81814fa590 Simplify flow chart andrew 2025-08-25 16:00:58 -04:00
  • 611bccfb9b Update README andrew 2025-08-25 15:57:07 -04:00
  • e8d2855b36 Add maintainer notice andrew 2025-08-25 15:43:37 -04:00
  • 1f540a436a Tailor readme to prospective users andrew 2025-08-25 15:34:29 -04:00
  • c303478ad7 Avoid Utf8Dfa scan if there's no non-ascii andrew 2025-08-15 19:45:00 -04:00
  • 0b24636c4f Update corpus andrew 2025-08-04 14:42:50 -04:00
  • bcb5a20f27 Distinguish on_string_data and on_key_data andrew 2025-08-04 14:15:49 -04:00