Skip to content

MLR118: SVGMobject cannot faithfully convert project SVG content

qual reports MLR118 when a literal SVGMobject path resolves to one project-local SVG for every active profile and that SVG contains <text>, <image>, <filter>, <mask>, <clipPath>, or a local href="#id" with no matching id.

  • Default severity: warning
  • Minimum confidence: high
  • Implementation phase: 4
  • Fix: none (suggests converting the asset to ordinary paths)

SVGMobject's conversion produces VMobjects only for its supported vector shape subset. Embedded text/images and filter, mask, or clipping definitions are not reproduced faithfully; an unresolved local use reference loses its geometry.

The scanner is static and fail-closed. It never imports Manim or executes the analyzed project. Every active profile must resolve the literal to the same canonical file below the project root. Malformed XML, DOCTYPE/internal subsets, encoded id/href values, external references, project-external symlinks, dynamic paths, or profile-dependent files stay silent.

Wrong:

<svg><text>Logo</text><use href="#missing"/></svg>

Right (after conversion in the source graphics editor):

<svg><path id="logo" d="M0 0L10 0L10 10Z"/></svg>