Skip to content

V2.2

Latest

Choose a tag to compare

@vanvught vanvught released this 04 Jan 14:21

Release Notes – Codebase Refactor & Modularization

  • Major project restructuring
    • Reorganized libraries and source files into a clearer, more modular directory structure.
    • Moved, renamed, or removed numerous files to reduce duplication and improve maintainability.
  • Legacy code cleanup
    • Removed deprecated and unused code from lib-lightset, lib-network, lib-properties, and older display components.
    • Eliminated redundant parameter and platform-specific files no longer in use.
  • Centralized common functionality
    • Migrated shared network, properties, and parameter code into a unified common directory.
    • Added new utility headers and source files for reusable functionality.
  • JSON-based configuration support
    • Added new JSON configuration and parameter files.
    • Introduced JSON helper utilities and parameter classes to standardize configuration handling and prepare for future extensibility.
  • DMX, RDM, and pixel refactor
    • Refactored DMX, RDM device handling, and pixel-related libraries for clearer structure and better separation of responsibilities.
    • Unified RDM device information handling.
  • Build system updates
    • Updated Makefiles, build scripts, and compile_commands.json to reflect the new project structure.
    • Improved GD32 platform support and hardware abstraction organization.
  • Network stack reorganization
    • Flattened lib-network source layout by moving files from subdirectories into a simpler structure.
    • Improved clarity of EMAC and Linux network interface implementations (no functional changes).
  • Debug macro consistency
    • Replaced DEBUG_ENTRY / DEBUG_EXIT macros with function-style DEBUG_ENTRY() / DEBUG_EXIT() across the codebase for consistency and readability.
  • Overall impact
    • Significantly improved modularity, readability, and long-term maintainability.
    • Laid groundwork for future feature expansion and more robust JSON-based configuration across modules.