Skip to content

V0.2.3

Choose a tag to compare

@JohnRichard4096 JohnRichard4096 released this 30 May 14:47

Release v0.2.3

🔧 Demos & Documentation Overhaul

  • All demo scripts simplified — removed unnecessary trailing NOP, reduced reliance on return‑value dependency injection, and converted many nodes to parameter‑less or state‑based patterns. Demos are now shorter, clearer, and focus on one concept at a time.
  • Inline workflow pattern refined — the SimpleWorkflow demo now uses self.value as shared state instead of passing return values between nodes. Documentation clarifies that node return values do not automatically flow to the next node’s DI context; use instance fields for cross‑node state.
  • Manual stack management re‑envisionedRET_FAR is no longer shown as a return value inside a node. The new demo and guide demonstrate manual push → GOTO → RET_FAR pop‑and‑return, giving you explicit control over the return address stack without relying on CALL/call_sub.

🐍 Python Version Support

  • Added Python 3.14 to the CI matrix.
  • Constrained requires-python to >=3.10, <3.15 (explicitly disallows future 3.15 until tested).

🧹 Internal Improvements

  • AliasNode now accepts any BaseNode (not only Node), making it more flexible.
  • NodeCompose implements __len__, fixing several pointer‑advancement corner cases.
  • WorkflowInterpreter._advance_pointer uses __len__ and boolean checks, improving robustness when entering nested containers.
  • Cleaned up type annotations and imports.

📝 Documentation Updates

  • English and Chinese guides for inline workflows and manual stack management synchronised with the new demos.
  • API reference examples now use NodeType explicitly where synchronous lambdas are required.

Upgrade
pip install --upgrade amrita-sense

Full Changelog: 0.2.2...0.2.3