Skip to content

Releases: BelfrySCAD/openscad_evaluator

Release list

v1.1.0

Choose a tag to compare

@revarbat revarbat released this 20 Jul 05:48

Changes

  • Adds an openscad-evaluator console script: evaluate a .scad file and export STL, OBJ, OFF, or 3MF in one step, with echo()/warnings on stdout and errors on stderr.
  • Adds --debug: a small, gdb-style interactive debugger (breakpoints, step/next/finish, print, backtrace, set variable) built entirely on the existing public debug_hook/error_break_fn/return_hook callback contract.
  • 3MF export is pure Python (no lib3mf dependency, which has limited platform support) — all four export formats now work with no optional extras.
  • Adds examples/minimal_debugger.py and examples/manifold_cache_reuse.py, runnable and self-checking under pytest.
  • Cleans up stale BelfrySCAD-specific cross-references left over from the initial extraction in docs/evaluator.md.

v1.0.0

Choose a tag to compare

@revarbat revarbat released this 20 Jul 03:35

Changes

Initial release: extracts the AST evaluator out of BelfrySCAD into its own standalone library, matching the precedent set by openscad_lalr_parser.

  • Two-pass resolve/generate evaluator producing Manifold geometry from an openscad_lalr_parser AST
  • GUI-agnostic: callback-injection API (echo_fn/debug_hook/error_break_fn/return_hook), zero GUI-toolkit dependencies
  • Content-hash geometry cache (ManifoldCache) and opt-in per-call-site profiling
  • Full built-ins coverage: primitives, transforms, boolean ops, 2D geometry, text(), surface(), DXF/3MF import, roof()
  • resolve_use_scopes (use <file> cross-file scope resolution) included