Skip to content

v0.2.5

Choose a tag to compare

@naqvis naqvis released this 04 Dec 05:26
· 3 commits to master since this release

Release Notes

New Features

Type-Safe Bindings

  • bind_typed() method with automatic JSON ↔ Crystal type conversion
  • Support for 1, 2, and 3 parameters (Int32, Int64, Float64, String, Bool)
  • Eliminates manual JSON handling boilerplate

RAII Resource Management

  • with_window() for automatic cleanup
  • Ensures destroy() is called even on exceptions

Lifecycle Hooks

  • on_load callback for page load events
  • on_navigate callback for navigation tracking

Async/Fiber Support

  • eval_async() - non-blocking JavaScript execution with callbacks
  • eval_with_channel() - fiber-friendly async evaluation

Multi-Window Management

  • WindowManager class for managing multiple windows
  • Automatic cleanup with with_manager()

Better Error Handling

  • Error context information (e.g., "navigating to URL")
  • More informative error messages

Native Handle Access

  • native_handle() method for platform-specific handles
  • Access to UI_WINDOW, UI_WIDGET, BROWSER_CONTROLLER

Examples

  • typed_bindings_example.cr - Type-safe bindings demo
  • advanced_features.cr - All advanced features demo
  • multi_window.cr - Multi-window management demo

Bug Fixes

  • Fix Linux CI by adding apt-get update before installing dependencies
  • Fix CI tests by making lifecycle hook tests headless-safe