PyPI / jsonpath-ng / 1.12.0
jsonpath-ng 1.12.0
- Source
- https://github.com/jsonpath-ng/jsonpath-ng
- Artifact scanned
jsonpath_ng-1.12.0-py3-none-any.whl- Compared with
jsonpath_ng-1.11.0-py3-none-any.whl(2 signals introduced since)- Files
- 24 scanned, 5 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 10 info
- Scan time
- 8.5 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 9 of 9 warn and critical signals; 9 demoted to info.
- Disclude version
- 4.3.0
- Scanned (UTC)
- 2026-10-23 11:27
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
info
warn→ info by reviewlong-linejsonpath_ng/_ply_tables/ext_parser_table.py:11:1new in this release=likely benign Generated PLY LR parse-table data with a very long line.Reasoning
This is a machine-generated LR parse table, a single long dictionary literal of integers and token names. Long lines are expected for generated tables, and the content is inert data.
-
= -
=likely benign Dynamic import of a PLY lextab module name inside the lexer's table-loading routine.Reasoning
This is PLY's standard lexer-table loading code, which runs exec('import %s' % tabfile) on a module name it constructed itself. It is a known pattern in the upstream library, with no network, decoding or process spawning involved.
-
= =likely benign Call-stack frame introspection used by PLY to collect the caller's namespace for lexer rule definitions.Reasoning
get_caller_module_dict is PLY's standard helper for reading the caller's globals and locals via sys._getframe. The 'anti-analysis' label comes only from the file also containing sys.exit/exec/eval, which is normal for a parser generator.
-
= = =likely benign Dynamic import of a package name derived from a source path to locate the output directory.Reasoning
This is the same PLY pattern: exec('import %s' % pkgname) on a package name derived from the source file path so the module's __file__ can be located for output directory selection. It does not run attacker-controlled input.
-
=likely benign eval of a grammar literal token string to validate that it is a single character.Reasoning
PLY's grammar validation uses eval(s) on a literal token string from the grammar definition, such as a quoted single character, to check its length. That is an expected use within a parser generator, and the input comes from the developer's own grammar.
-
=likely benign Dynamic import of a PLY parsetab module name during table loading.Reasoning
This is PLY's parse-table loading, exec('import %s' % module) on a module name it builds internally. It matches the upstream library and has no malicious indicators.
-
= =likely benign Call-stack frame introspection used by PLY to capture the caller's globals and locals.Reasoning
This is the same PLY get_caller_module_dict helper using sys._getframe to read the caller's namespace. It is standard upstream code, and the anti-analysis label is driven only by co-occurrence of exec/eval/exit in the file.
-
= = =likely benign Dynamic import of a package name derived from a source path to resolve the output directory.Reasoning
This is PLY's standard source-path lookup, exec('import %s' % pkgname) on a package name derived from the module path to find the output directory. It is consistent with the upstream library.
-
=likely benign Generated PLY LR parse-table data with a long line.Reasoning
This is a machine-generated LR parse table of integer lists keyed by token names. The long line is a formatting artifact of generation, and the data is inert.
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.
|