Files
remove-ai-watermarks/tests/test_dependabot.py
T
Victor KuznetsovandClaude Opus 5.5 1dc70df289 Upgrade to OpenCV 5 with frozen Hershey templates and tighten video marks
- Lock OpenCV 5 and cap NumPy below 2.4 through uv constraint-dependencies so
  PaddleX 3.7 keeps resolving; Dependabot ignores mirror the cap.
- OpenCV 5 draws Hershey putText glyphs differently, so the Dola and Kling
  video templates ship as committed OpenCV 4 renders with a recipe script, and
  the OpenArt alpha recipe now refuses any OpenCV but 4.x.
- Break Sora/Veo cross-matches in favor of Veo under valid Google AI-video
  provenance, and require the full Sora mascot shape for mascot-only matches.
- Let the Doubao engine detect marks tinted by saturated backgrounds.
- Share C2PA claim-generator, credential-level and vendor-platform helpers,
  JPEG suffixes and the DCT basis instead of per-module copies.
- Log model download failures, document the optional GITHUB_TOKEN, mark the
  photo and source classifier model cards archived, and refresh the lock.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-23 19:19:00 -07:00

17 lines
715 B
Python

"""Regression tests for Dependabot compatibility constraints."""
import tomllib
from pathlib import Path
from packaging.requirements import Requirement
def test_dependabot_numpy_ignore_mirrors_the_lock_constraint() -> None:
constraints = tomllib.loads(Path("pyproject.toml").read_text())["tool"]["uv"]["constraint-dependencies"]
(numpy,) = (r for r in map(Requirement, constraints) if r.name == "numpy")
(upper,) = (spec.version for spec in numpy.specifier if spec.operator == "<")
config = Path(".github/dependabot.yml").read_text()
numpy_ignore = config.split('dependency-name: "numpy"', maxsplit=1)[1].split("dependency-name:", maxsplit=1)[0]
assert f'- ">={upper}"' in numpy_ignore