Skip to content

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 17 Oct 20:18
· 21 commits to main since this release
542f7ac

Stateful Markdown walkthroughs

Add shell: bash to keep one real Bash session across commands, blocks, and
Markdown prerequisites such as setup: mm sharedset.md. Variables, exports,
functions, working-directory changes, shell options, and the previous command's
status persist without wrapper scripts or intermediate environment files.

  • Write normal Bash directly in markmason fences: pipelines, substitutions,
    redirections, loops, functions, heredocs, and background jobs.
  • With --step, inspect one complete logical command at a time. Multiline
    constructs stay together, and shared setup runs without extra pauses.
  • Keep application stdin, scripted terminal interactions, and walkthrough
    Enter/quit controls separate.
  • Expected failures preserve the session. Unexpected failures, shell exit,
    and timeouts stop the stateful file without silently restarting Bash.
  • Cleanup owns Windows Job Objects and Linux/macOS terminal-session process
    groups, including Bash job-control background jobs.

Shell-enabled documents require Bash, stty, and sleep on PATH. macOS's
built-in Bash 3.2 is supported; native Windows uses Git Bash, not a WSL shim.
No PowerShell or cmd fallback is attempted.

Without shell: bash, existing direct-execution behavior is unchanged. This
minor release adds an opt-in Markdown format feature; it does not rewrite
existing documents.

The executable shell guide and real-terminal stepping tests are included in
the repository. Native Linux, Windows, macOS Intel, and macOS ARM CI cover
the release.

Download the archive for your platform, verify it against SHA256SUMS, and
put mm (mm.exe on Windows) on PATH.