Skip to content

v1.0.1

Latest

Choose a tag to compare

@lordlogo2002 lordlogo2002 released this 26 May 13:16
· 12 commits to main since this release

[v1.0.1] - 26.05.2025
Added

  • Introduced guard system to monitor and enforce safe usage across the Interface lifecycle.

    • Includes PrintDog, a watchdog that throws on System.out.println() misuse.
      • Prevents raw terminal output from breaking Interface’s render structure.
      • Barks at offenders. Also probably sheds on your stacktrace.
      • May or may not accept belly rubs from compliant code.
  • Refined View structure with two protected instance properties available to all View subclasses:

    1. terminal: handles layout metrics, printing, and responsive behavior.
      • Methods: terminal.print(), getWidth(), getHeight(), getCurrentRclCount(), fill().
    2. actions: a factory interface that wraps the core a_<name> action classes.
      • Provides stable, globally accessible method shortcuts like actions.nop(), redirect(), stop(), dd().
      • Designed for long-term stability, so it can be extended or used directly within any custom View.
      • Underlying logic stays modular—actions just makes it ✨nice✨.
  • Added dump and die debug method (actions.dd()), Laravel-style.

    • Gives type-colored terminal output and halts execution.
    • Built-in squirrel-approved panic button.

Changed

  • Refactored View to separate rendering from action dispatching.
  • Improved internal render loop safety and predictability.
  • View subclasses now rely on protected terminal and protected actions for layout and behavior access.

Fixed

  • Removed old debug output in Interface leftover from early builds.
  • Better RCL tracking and terminal width/height access during layout calculations.
  • Smol bug fixes. Big yay.

Notes
This version introduces breaking changes due to the View architecture rewrite.
Dev-defined views now inherit terminal and actions as protected fields.

  • terminal for layout and print logic.
  • actions for calling or extending all internal actions.
    • Actual execution lives in a_<name> classes.
    • This layer abstracts the pain—like a squirrel hiding the sharp acorn bits.

PrintDog now enforces runtime safety and fuzzy terminal discipline.
Use terminal.print(), or be growled back to pre-alpha.

And always remember:
He’s the goodest boyo. Furry-coded. Runtime-approved.

Full Changelog: v0.0.1...v1.0.1