Skip to content

v0.4.0

Choose a tag to compare

@JameZUK JameZUK released this 23 Jun 21:17
· 11 commits to procmon_parser since this release
0db415d

Reliability / efficiency / stability hardening pass (full code review). Closes #23#30.

Fixed

  • A mid-stream parse error no longer reports success or caches a truncated capture — it raises and skips the cache write. (#23)
  • Backend-correct compat.XMLSyntaxError alias (stdlib ElementTree has ParseError, not XMLSyntaxError) so malformed XML on the no-lxml path surfaces the real error.

Changed

  • Loading runs off the event loop (asyncio.to_thread) — the server stays responsive during a long parse on HTTP/SSE. (#24)
  • Parsed-capture cache is size-bounded with LRU eviction (default 5 GiB; PROCMONMCP_CACHE_MAX_BYTES override). (#25)
  • export_query_results streams rows to disk (bounded memory). (#26)
  • User filter regexes use Google RE2 when the optional re2 extra is installed (ReDoS-safe), falling back to stdlib re. (#27)
  • find_file_access heap-merges per-path index lists and stops at limit. (#28)
  • Hot scan loops read the clock only periodically. (#29)
  • Event-detail formatting uses a shallow ProcessInfo.to_dict(). (#30)

No breaking API changes.

Full changelog: CHANGELOG.md