Skip to content

v0.3.2

Choose a tag to compare

@introfini introfini released this 01 Sep 16:53
· 20 commits to main since this release

drush-mcp v0.3.2

Fixes

  • SSH and docker transports no longer mangle ! in arguments. Both transports quoted every argument with shell-quote's quote(), which picks a double-quoted form for values containing both a single quote and whitespace and then escapes ! as \!. Bash only honours a backslash before $, backtick, ", \ and newline inside double quotes, so the backslash survived verbatim in the non-interactive shell that ssh spawns.

    Two things broke:

    • drupal_php_eval failed to parse any code mixing !==, != or !$x with a single-quoted PHP string, because the remote received \!==.
    • Bridge JSON payloads (drupal_entity_create, drupal_entity_update) holding an apostrophe anywhere plus an exclamation mark stored the stray backslash into the content, with no error. Portuguese text was a reliable trigger.

    Replaced with a POSIX single-quote wrapper (transport/shell.ts), where the shell treats every character literally and only the quote itself needs splicing. The local transport was never affected: it passes argv straight to execFile with no shell in between.

  • Drops the shell-quote dependency.

Install

npm install -g @bloomidea/drush-mcp@0.3.2