v5.26.0

New Features

  • Entity-Level Cache Control: New AllowCaching column on Entity table provides fine-grained control over server-side and client-side caching behavior per entity
  • External Change Detection System: Comprehensive package for detecting and reconciling changes made outside MemberJunction by external systems or direct database modifications
  • Cache Statistics API: New GraphQL resolver exposing detailed cache metrics including entry counts, memory usage, and cache hit/miss ratios by type
  • Configurable Cache TTL and Memory Limits: Per-entity TTL controls and memory-based eviction policies for improved cache management
  • External Change Replay: Ability to replay detected external changes through MemberJunction's entity system to maintain audit trails and trigger business logic

Improvements

  • Enhanced Cache Architecture: Improved cache fingerprint system with entity reverse indexing for more efficient cache invalidation
  • Schema-Level Cache Defaults: CodeGen integration with newEntityDefaults.AllowCachingBySchema for automatic cache configuration during entity creation
  • Optimized Change Detection: Batch loading and parallel processing for external change detection with configurable concurrency
  • Cache Provider Migration: Support for migrating cache entries between storage providers while preserving data integrity
  • Metadata Synchronization: Automated migration system for keeping database schema and metadata tables in sync

Bug Fixes

  • Dependency Resolution: Fixed missing dependencies across 17 packages that had accumulated while knip dependency checking was silently broken
  • Knip Infrastructure Repair: Disabled crashing vitest plugin and hardened CI workflow to fail-fast on tool crashes instead of silently passing
  • Migration Timestamp Conflicts: Resolved AllowCaching migration timing issues to ensure proper execution order after v5.25 releases
  • Cache Control Edge Cases: Fixed cache behavior for filtered vs unfiltered queries to prevent stale data issues
  • Angular Version Hardcoding: Fixed hardcoded Angular version references in dependency auto-fix scripts