six 1.17.0
- Source
- https://github.com/benjaminp/six
- Artifact scanned
six-1.17.0-py2.py3-none-any.whl- Compared with
six-1.16.0-py2.py3-none-any.whl(0 signals introduced since)- Files
- 2 scanned, 4 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 2 info
- Scan time
- 3.0 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-10-22 23:42
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
"""Import module, returning the module after the last dot.""" returnlikely benign Dynamic module import helper in the six compatibility library.Reasoning
This is the standard six.py import_module helper: __import__(name) followed by returning sys.modules[name]. The name is a caller-supplied module path, which is the normal purpose of the function. The file is the well-known six compatibility library, so the dynamic import is a legitimate pattern rather than a dropper or evasion.
-
= =likely benign Caller frame globals lookup in six's exec_ compatibility shim.Reasoning
This is the exec_ shim in six.py that uses sys._getframe(1) to fetch the caller's globals and locals when none are passed. That is the canonical way six implements exec_ on Python 2. The flag about sys.exit/exec/eval co-occurrence is a generic heuristic that fires on any file containing exec-related code; here it reflects the library's compatibility role, not anti-analysis behavior.
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.
|