Skip to content
This repository was archived by the owner on Aug 2, 2026. It is now read-only.

v0.4.6

Choose a tag to compare

@l7aromeo l7aromeo released this 16 Nov 18:10
· 193 commits to main since this release

MeoNode UI v0.4.6 – Enhanced Caching & Memoization with Safe Lifecycle Management

Release Date: 2025-11-17

Bug Fixes

  • core/cache: Enhance memoization & caching system to prevent memory leaks and ensure safe lifecycle management. (253d7d00)
    Introduces a robust, three-layered cleanup strategy to ensure cache integrity:
    1. Lifecycle-driven Cleanup: MeoNodeUnmounter component ensures that caches of unmounted nodes are immediately cleaned when components are removed.
    2. Event-driven SPA Cleanup: NavigationCacheManagerUtil triggers debounced cache clearing during SPA navigations (pushState/popstate), preventing stale entries.
    3. GC-driven Safety Net: Uses FinalizationRegistry to automatically clean cache entries for objects that are garbage collected, providing an additional layer of memory safety.

Refactor

  • core: Migrate core logic from src/helper/ to a new src/util/ directory for better separation of concerns.
  • core: Extract internal utility functions from core.node.ts into node.util.ts for modularity and reusability.
  • core: Make internal caches on BaseNode public to support externalized cache management and monitoring.

Chore

  • tooling: Enable TypeScript's strict: true mode and update the codebase to comply fully with strict type checks.
  • tooling: Add CommonJS (require) exports in package.json for improved module compatibility in different environments.
  • tooling: Update test scripts to include NODE_OPTIONS='--expose-gc', allowing explicit garbage collection during tests for more accurate memory testing.
  • tests: Refine test suite by standardizing afterEach hooks and updating memoization tests to directly validate internal cache behavior.

Version Update

  • Current version: 0.4.6

Changelog & Commits