Skip to content

-p <project> C-escapes Windows backslash paths -> 'unable to open database file' #644

@marclehane-creator

Description

@marclehane-creator

mxcli version: v0.11.0 (2026-05-21) · OS: Windows 11

Summary

The -p <project> value is C-escaped on Windows, so a normal backslash path is mangled and the project database can't be opened. The positional .mdl argument is unaffected.

Minimal repro

mxcli check script.mdl -p "C:\Users\me\app\App.mpr"

Actual

Error connecting: failed to connect: failed to set busy_timeout: unable to open database file (14)

The echoed "Validating references against:" line shows the path with backslashes stripped and escape sequences interpreted — e.g. C:\Users\me\app becomes C:Usersme<TAB>pp-style (the \t in …\app rendered as a literal tab, backslashes dropped).

Expected

A backslash Windows path in -p opens the project (same as the positional script argument, which handles backslashes fine).

Workaround

Pass -p with forward slashes: -p "C:/Users/me/app/App.mpr" — this works.

Impact

Every Windows user hits this on -p; forward slashes are a non-obvious requirement, and the error message ("unable to open database file") doesn't hint that the path was mangled.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions