PyPI / fastjsonschema / 2.22.3
fastjsonschema 2.22.3
- Source
- https://github.com/horejsek/python-fastjsonschema
- Artifact scanned
fastjsonschema-2.22.3-py3-none-any.whl- Compared with
fastjsonschema-2.22.2-py3-none-any.whl(0 signals introduced since)- Files
- 12 scanned, 6 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 2 info
- Scan time
- 3.8 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 2 of 2 warn and critical signals; 2 demoted to info.
- Disclude version
- 4.3.0
- Scanned (UTC)
- 2026-11-01 21:27
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
""" return compile(definition, handlers, formats, use_default, use_formats, detailed_exceptions, fast_fail)(data)likely benign A public JSON Schema compile function that builds a validator from a schema and applies it to data.Reasoning
The snippet is a thin wrapper: `compile` builds a validator from a JSON schema definition and then calls it on the data. fastjsonschema is a known, legitimate JSON Schema validation library whose core design is generating validator code from schemas. The flagged call is its public API entry point, not a payload decoded from an attacker-controlled source. The finding is a generic non-literal dynamic-execution signal on a library's intended behaviour.
-
# Do not pass local state so it can recursively call itself. =likely benign Executes generated validator source code in a global namespace to produce a schema-specific validation function.Reasoning
The `exec` runs code generated internally by fastjsonschema's CodeGenerator from the schema, then reads the resulting function from a scope dictionary. The comment about not passing local state shows deliberate design for recursive calls. This is the library's documented code-generation mechanism for building fast validators, and the code is not decoded from an obfuscated blob or fetched from the network. It matches a known legitimate pattern.
Reproduce This Scan
Run disclude locally to verify. These commands scan the published file; the "new in this release" marks come from comparing it with the previous release's file, which they don't repeat. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
|