mitmproxy/mitmproxy · error · ValueError

Invalid regular expression {spec.subject!r} ({e})

Error message

Invalid regular expression {spec.subject!r} ({e})

What it means

Error "Invalid regular expression {spec.subject!r} ({e})" thrown in mitmproxy/mitmproxy.

Source

Thrown at mitmproxy/addons/mapremote.py:24

from mitmproxy import exceptions
from mitmproxy import flowfilter
from mitmproxy import http
from mitmproxy.utils.spec import parse_spec


class MapRemoteSpec(NamedTuple):
    matches: flowfilter.TFilter
    subject: str
    replacement: str


def parse_map_remote_spec(option: str) -> MapRemoteSpec:
    spec = MapRemoteSpec(*parse_spec(option))

    try:
        re.compile(spec.subject)
    except re.error as e:
        raise ValueError(f"Invalid regular expression {spec.subject!r} ({e})")

    return spec


class MapRemote:
    def __init__(self) -> None:
        self.replacements: list[MapRemoteSpec] = []

    def load(self, loader):
        loader.add_option(
            "map_remote",
            Sequence[str],
            [],
            """
            Map remote resources to another remote URL using a pattern of the form
            "[/flow-filter]/url-regex/replacement", where the separator can
            be any character.
            """,

View on GitHub (pinned to 2ac5b089d9)

When it happens

Trigger: Thrown at mitmproxy/addons/mapremote.py:24 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of mitmproxy/mitmproxy@2ac5b089d9 (2026-08-26). Data as JSON: /api/errors/ed6868ff0e2e3a7f. Report an issue: GitHub.