joblib 1.6.0
- Source
- https://github.com/joblib/joblib
- Tag scanned
1.6.0- Compared with
1.5.3(1 signals introduced since)- Files
- 115 scanned, 58 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.0.0
- Scanned (UTC)
- 2026-10-14 18:44
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
info
warn→ info by reviewdynamic-executionjoblib/test/test_func_inspect.py:366:5new in this release=likely benign Test code executes a hardcoded function definition to exercise inspection.Reasoning
The exec call runs compile() of a fixed string literal defining a trivial function, inside a test that checks function inspection. The source is hardcoded in the test, so there is no external input.
-
likely benign A benchmark script shells out to drop the page cache before timing.
Reasoning
The os.system call runs a fixed literal command that clears the Linux page cache, a common step in I/O benchmarks. It is hardcoded with no external input, and the sudo use is explained by the benchmark purpose. Nothing here suggests a dropper.
-
= -
# easy vendoring. = .likely benign Dynamic import of a joblib pool module to fetch delete_folder.Reasoning
The __import__ target is a module name derived from the package's own vendoring logic, with a fromlist of a known function. This is a standard dynamic-import pattern for loading a joblib submodule under different vendored names. It is not a payload fetch.
-
= = = b = 0likely benign Streaming zlib decompressor object for compressed joblib files.Reasoning
zlib.decompressobj is used to implement a streaming decompressor for joblib's compressed pickle file format. It operates on user-supplied file data, not an embedded payload, so the decoder-import signal is a false positive for a compression library.
-
# buffer to allocate. = assert == ,likely benign Legacy-format decompression of joblib pickle data with length check.Reasoning
zlib.decompress with a known length is used to read legacy joblib pickle files. The length assertion shows it is a format-compatibility routine. This is normal file-format handling.
-
=likely benign Test harness executes a simulated IPython cell to check memory caching.Reasoning
The exec/compile wrapper runs ipython_cell_source, a string defined in the test to simulate an IPython cell. This is a test harness for cell-based caching and the source is not attacker-controlled. The pickle import is incidental to the test.
-
=likely benign Same test-harness exec of a simulated IPython cell.Reasoning
This is the dynamic-execution companion to the same exec call. It runs the test's own simulated IPython cell source. The context is a test suite, not a dropper.
-
likely benign compile of a test fixture string to emulate an IPython cell.
Reasoning
compile() here is the inner call that builds code from the test's simulated IPython cell string, with a filename argument for traceback fidelity. The input is a fixed test fixture, so this is a legitimate testing pattern.
-
=likely benign Test utility decompresses a local pickle fixture file to a target path.Reasoning
zlib.decompress reads a local test fixture file and writes it to a target file, which is the expected behavior of a test that converts compressed pickle formats. It reads and writes only local files, and the decoder signal reflects a normal compression library.
Reproduce This Scan
Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.
&&