Will It Vibe logoWill It Vibe?
SCA-019Low severity-4 points

requirements.txt entry with no version constraint

Part of Dependencies & Hygiene, which counts for 10% of the overall score. When this check fires it deducts 4 points from that category, once per scan, no matter how many places it turns up.

What it detects

A requirements.txt line names a package with no operator at all (no ==, >=, ~=, ...). This is per-entry and heuristic: it fires even when other lines in the same file ARE pinned, unlike the file-wide 'no pins at all' check.

Why it matters

A requirements.txt line with a bare package name and no operator (no ==, >=, ~=, ...) always installs whatever is newest on PyPI at install time, with no review window and no reproducibility between environments. This fires per-line and is a heuristic: it is a real risk even in a file where most other lines ARE pinned, since one unconstrained line is enough to make a build non-reproducible.

How to fix it

Add an explicit version constraint to the entry, matching the pinning style already used elsewhere in the file (an exact == pin for full reproducibility, or a compatible-release ~= range if the project intentionally allows patch updates).

The paid report includes a ready-to-paste prompt for your AI coding agent for every check it finds, pointed at the exact findings from your scan. See pricing

Does your repo trip this check?

Paste a GitHub URL or drop a project folder. Scans run in your browser and take seconds.

Scan your repo

Related Dependencies & Hygiene checks