Breaking Changes

  • Bootstrap 5 Migration: Complete migration from bs4Dash to Bootstrap 5/bslib
    • Removed all bs4Dash dependencies
    • Now requires bslib >= 0.9.0
    • All UI components now use Bootstrap 5 classes and patterns

New Features

  • Enhanced Error Handling: Replaced fatal stop() calls with graceful error notifications using shiny::showNotification()
  • Improved JavaScript Architecture:
    • Added retry limits to prevent infinite loops
    • Proper memory cleanup for intervals
    • Extracted JavaScript into modular files (inst/js/)
  • Configuration System: New config-thresholds.R for gauge threshold constants

Bug Fixes

  • Fixed JavaScript race conditions in carousel and tooltip initialization
  • Added proper error handling for missing benchmark data
  • Fixed global variable binding issues in R CMD check
  • Corrected accordion open parameter for bslib compatibility

Improvements

  • Performance: Optimized tooltip initialization to avoid duplicate instances
  • Maintainability:
    • JavaScript code now in separate files for better organization
    • Magic numbers replaced with named constants
    • Deprecated functions now use .Deprecated() instead of throwing errors
  • Accessibility: Enhanced aria-label attributes throughout UI components
  • Dark Mode: Improved Bootstrap 5 dark mode support with proper theme attributes

Internal Changes

  • Updated test suite to remove problematic file sourcing
  • Fixed data.table column references to use quoted strings
  • Added comprehensive documentation for Bootstrap 5 migration

Dependencies

  • Minimum R version: 4.1.0
  • New requirement: bslib >= 0.9.0 (Bootstrap 5 support)
  • Removed: bs4Dash (completely replaced with bslib)

For questions or issues, please visit: https://github.com/artalytics/modGallery/issues