0.36.0
Midio Blog
Release notes
March 27, 2026
New Python node'

Features

Python Integration (Experimental)

Run Python code inside Midio flows using Monty, a lightweight Python interpreter written in Rust. Monty is purpose-built for embedding — it offers microsecond-level startup times, strict sandboxing by default, and a small footprint, making it well-suited for running Python scripts as part of a node graph without the overhead of containerization. A dedicated code editor node provides inline Python editing with syntax highlighting, and values are automatically converted between Midio and Python types.

Note: Monty supports a practical subset of Python — classes, third-party packages, and some standard library modules are not yet available. This integration is experimental and may change in future releases.

Changes

  • Quick Edit now supports toggling extended thinking for more accurate responses
  • Node parameters can be edited in the Inspector
  • Configure the multiple-arrows attribute from the Inspector
  • Show native packages in the node palette
  • Numbers in the value visualizer are now selectable

Bug fixes

  • Show values on arrows from function properties to data inputs
  • Fixed bug when mutating expressions using quick-edit
  • Fixed race condition in channel related to timeout
  • Fixed crash when a number is not convertible to JSON
  • Fixed crash when failing to resolve instance by stable id (both frontend and engine)
  • Fixed bug in suggested node code
  • Fixed duplicate intent mode items
  • Fixed code editor scroll bug in the editor
  • Fixed code editor wrapping responsiveness

Standard Library

Additions

  • Regex.Replace - Replace matches in a string using a regular expression pattern

Changes

  • Math.Max and Math.Min now return an error when given an empty input instead of crashing
  • MIME type input for extraction functions now shows a dropdown of supported types
  • Extraction.ExtractUrl renamed to Extraction.ExtractFileAtUrl
  • Extraction.ExtractContent now also accepts string input
  • Extraction functions auto-detect MIME type when none is provided
  • Add optional timeout input to Http.Fetch and Http.FetchStreamed

Bug fixes

  • Fixed string functions using byte offsets instead of character offsets (e.g., Substring)
  • Fixed error outputs not using handleError kind

Performance

  • Improved performance when copying large selections
  • Trace rendering now spreads work across multiple yields for smoother UI when dealing with large traces