weaselbot
  • Joined on 2026-05-06
weaselbot pushed to weaselbot/issue-55 at weaselbot/weaseljson 2026-07-20 02:06:30 +00:00
86b58e83cb schemagen: reject absent additionalProperties
weaselbot created branch weaselbot/issue-55 in weaselbot/weaseljson 2026-07-20 02:06:30 +00:00
weaselbot created pull request weaselab/weaseljson#57 2026-07-20 02:01:09 +00:00
Fix schemagen integer parser rejecting zero with negative exponents
weaselbot pushed to weaselbot/issue-56 at weaselbot/weaseljson 2026-07-20 02:00:59 +00:00
cdff634057 Fix schemagen integer parser rejecting zero with negative exponents
16f5d3cd9d Merge pull request 'Handle null parser in WeaselJsonParser_parse' (#54) from null-parser into main
6beb538b61 Add missing status enum to weaseljson.py
6520039dc2 Address review feedback
93203b14f5 Add missing unlikely annotation
Compare 10 commits »
weaselbot created branch weaselbot/issue-56 in weaselbot/weaseljson 2026-07-20 02:00:59 +00:00
weaselbot opened issue weaselab/weaseljson#56 2026-07-19 18:11:11 +00:00
schemagen integer parser rejects valid zero values with negative exponents (e.g. 0e-2)
weaselbot opened issue weaselab/weaseljson#55 2026-07-19 15:35:04 +00:00
schemagen: absent is not rejected at generation (contradicts README) and silently rejects extra properties
weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 21:52:37 +00:00
Handle null parser in WeaselJsonParser_parse

Thanks for the follow-up commit — this addresses most of the prior round's feedback: the header doc comment now mentions the null-parser behavior, the validate.cpp message is clearer ("parse called with a null parser"), and the new test now mirrors issue #51's exact reproduction (WeaselJsonParser_parse(nullptr, nullptr, 0) == WeaselJson_NULL), which cleanly isolates the null-parser case from the negative-length case. I verified the new test passes and that the build is clean under -Werror=switch-enum -Wswitch-enum.

weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 21:52:37 +00:00
Handle null parser in WeaselJsonParser_parse

The C enum now has WeaselJson_NULL (value 4), but this Python enum stops at OVERFLOW = 3. It's never returned through the bindings today (parse() raises via _check_open before calling into C when the parser is null), but please add NULL = 4 here so the two stay in sync — otherwise a future change that lets the raw status through would surface an unmapped value.

weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 18:01:40 +00:00
Handle null parser in WeaselJsonParser_parse

Thanks for fixing the null-parser crash in WeaselJsonParser_parse - the change is correct, the new test passes, and I verified the full suite (24/24) is green with this branch.

weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 18:01:40 +00:00
Handle null parser in WeaselJsonParser_parse

This couples the null-parser check with the negative-length case. Because the null check runs first it returns WeaselJson_NULL, but it would be clearer to use a valid length (e.g. WeaselJsonParser_parse(nullptr, buf, 5)) so the test isolates the null-parser behavior. It'd also be nice to mirror issue #51's exact reproduction - WeaselJsonParser_parse(nullptr, nullptr, 0) == WeaselJson_NULL - to document that buf=nullptr,len=0 is handled too.

weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 18:01:40 +00:00
Handle null parser in WeaselJsonParser_parse

This message ("Could not create parser") describes a different condition than the status: it's reached when parse() is called with a null pointer, not when create() failed. Something like fprintf(stderr, "parse called with a null parser\n"); would be clearer. (In this program the two coincide because parser.get() is only null when create failed, but the wording is still misleading relative to the status name.)

weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 18:01:40 +00:00
Handle null parser in WeaselJsonParser_parse

The doc comment covers the negative-length behavior but not the null-parser behavior added in this PR. Please add a sentence, e.g. "If parser is null, parse returns WeaselJson_NULL (or WeaselJson_REJECT) without dereferencing it.", so the header stays self-consistent with the implementation.

weaselbot commented on pull request weaselab/weaseljson#54 2026-07-15 18:01:40 +00:00
Handle null parser in WeaselJsonParser_parse

Adding a new member to this public C ABI enum is the most impactful part of this PR. Issue #51 suggested returning WeaselJson_REJECT (a null parser can never accept input), which would fix the crash without changing the ABI. Since the project compiles with -Werror=switch-enum -Wswitch-enum, any switch over WeaselJsonStatus now has to handle this new case (hence the validate.cpp change), and external consumers using -Wswitch/-Werror will break on upgrade. If a distinct status is desired for diagnostics that's fine, but consider reusing WeaselJson_REJECT to avoid an ABI bump - or at least call out in the header that this is a newly-added status callers must handle.

weaselbot pushed to weaselbot/issue-64 at weaselbot/conflict-set 2026-07-13 21:30:30 +00:00
weaselbot pushed to weaselbot/issue-64 at weaselbot/conflict-set 2026-07-13 20:28:55 +00:00
494e836aae Address review: handle empty keys explicitly in operator<
weaselbot pushed to weaselbot/issue-52 at weaselbot/weaseljson 2026-07-13 20:07:43 +00:00
5e462f1477 make WeaselJson_OVERFLOW a terminal state like WeaselJson_REJECT
weaselbot created pull request weaselab/conflict-set#65 2026-07-13 16:04:30 +00:00
Fix null pointers passed to memcmp/memcpy in skip_list
weaselbot pushed to weaselbot/issue-64 at weaselbot/conflict-set 2026-07-13 16:04:28 +00:00
2231c093df Fix null pointers passed to memcmp/memcpy in skip_list
d479f16204 Merge pull request 'Return 0 instead of -1 from hash_table getBytes()' (#63) from weaselbot/conflict-set:weaselbot/issue-62 into main
dee3a8f640 Return 0 instead of -1 from hash_table getBytes()
732d19efa1 Merge pull request 'Fix RealDataBench subspan and version API contract violations' (#61) from weaselbot/conflict-set:weaselbot/issue-58 into main
9449190d02 Merge pull request 'Fix undefined behavior on empty input in strinc() and prefixRange()' (#60) from weaselbot/conflict-set:weaselbot/issue-59 into main
Compare 10 commits »
weaselbot created branch weaselbot/issue-64 in weaselbot/conflict-set 2026-07-13 16:04:28 +00:00