Releases: BelfrySCAD/openscad_evaluator
Releases · BelfrySCAD/openscad_evaluator
Release list
v1.1.0
Changes
- Adds an
openscad-evaluatorconsole script: evaluate a.scadfile and export STL, OBJ, OFF, or 3MF in one step, withecho()/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 publicdebug_hook/error_break_fn/return_hookcallback contract. - 3MF export is pure Python (no
lib3mfdependency, which has limited platform support) — all four export formats now work with no optional extras. - Adds
examples/minimal_debugger.pyandexamples/manifold_cache_reuse.py, runnable and self-checking underpytest. - Cleans up stale BelfrySCAD-specific cross-references left over from the initial extraction in
docs/evaluator.md.
v1.0.0
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