alembic 1.20.1
- Source
- https://github.com/sqlalchemy/alembic
- Artifact scanned
alembic-1.20.1-py3-none-any.whl- Compared with
alembic-1.20.0-py3-none-any.whl(0 signals introduced since)- Files
- 81 scanned, 22 skipped (binary, oversized, or unrecognised)
- Signals
- 0 critical · 0 warn · 3 info
- Scan time
- 4.4 s
- LLM review
- Reviewed by claude-haiku-5-5 (Anthropic): 3 of 3 warn and critical signals; 3 demoted to info.
- Disclude version
- 4.3.0
- Scanned (UTC)
- 2026-10-23 07:13
Signals
Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.
-
= returnlikely benign Dispatches type rendering to a module-level _render_<visit_name>_type function via globals lookup.Reasoning
The code looks up a module-level render function by a name built from the type's visit name, a common dispatch idiom. The name is derived from SQLAlchemy type metadata, not untrusted input, so there is no attacker-controlled execution path.
-
=likely benign Builds Alembic operation method wrappers by exec-ing internally generated source text and attaching them to the class.Reasoning
This is Alembic's operation-generation helper that builds wrapper functions from generated source text and attaches them to the class. The text is produced internally from the library's own function signatures, and the exec is used for signature-preserving wrappers, which is a known legitimate pattern. Still, exec on generated text is a dynamic execution pattern worth noting.
-
returnlikely benign Compiles a generated function from source text via exec and returns it, a signature-preserving helper in Alembic utilities.Reasoning
This is a helper that compiles a generated function body with exec into a local namespace and returns the named function, used to create functions with specific signatures. The source text comes from the library itself, not from external input, so it matches a legitimate code-generation idiom.
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.
|