- Updated backend manager status with new timestamps and process IDs.
- Modified dataset variables JSON to ensure consistent configuration types and added a new symbolic variable.
- Enhanced dataset variables schema to enforce configuration type and prevent additional properties.
- Adjusted UI schema for dataset variables to improve layout and visibility of fields.
- Refactored config manager to handle expanded dataset variables for PLC communication.
- Updated PLC data streamer and core streamer to utilize expanded dataset variables.
- Simplified DatasetVariableSymbolWidget and SymbolSelectorWidget components, improving toast notifications and layout.
- Removed unnecessary symbol expansion logic from Dashboard component.
- Updated system state JSON with new last update timestamp and added PlotJuggler path.
- Changed records_directory in plc_config.json to an absolute path.
- Enhanced plc.schema.json to allow absolute and relative paths for records_directory and symbols_path with path-browser widget.
- Updated ui schema to reflect changes in records_directory and symbols_path with appropriate help texts.
- Modified ConfigManager to handle symbols_path in PLC configuration updates.
- Added functionality in PLCDataStreamer and schema_manager to manage symbols_path.
- Implemented Load Symbols button in PLCConfigManager and Dashboard components to load symbols from ASC files.
- Created new PathBrowserWidget for browsing files and directories, supporting both absolute and relative paths.
- Added SimpleFilePathWidget for simplified file path selection.
- Introduced DirectoryBrowserWidget for directory selection.
- Updated main.py to handle loading symbols from ASC files and browsing directories.
- Changed memory area identifiers in dataset_variables.json and related schemas from lowercase to uppercase (e.g., "db" to "DB").
- Added new plot definition for "CTS306 Conductivimeter" in plot_definitions.json.
- Updated plot_variables.json to include new variables for "HMI_Instrument.QTM306.PVFiltered" and "HMI_Instrument.QTM307.PVFiltered".
- Enhanced dataset-variables.schema.json to enforce required fields based on area and type.
- Improved ui schema for dataset variables to provide clearer guidance on field usage.
- Updated PLC client to utilize new snap7.type module and improved error handling.
- Added support for new data types (DWORD) in PlcDataTypeWidget.
- Updated Dashboard.jsx to reflect changes in memory area identifiers and improve default configurations.
- Upgraded python-snap7 dependency to version 2.0.2 for enhanced functionality.
- Modified system_state.json to reflect changes in connection status and last update timestamp.
- Implemented optimized batch reading logic in optimized_batch_reader.py to support new area mappings.
- Added VSCode configuration files for improved development experience.
- Introduced ConditionalObjectFieldTemplate.jsx for dynamic field visibility based on PLC-specific logic.
- Added `use_optimized_reading` parameter to dataset definitions for per-dataset control over reading methods.
- Updated JSON schema and UI schema to include the new parameter with appropriate descriptions and defaults.
- Modified `ConfigManager`, `PLCClient`, and `PLCDataStreamer` to handle the new optimization setting.
- Enhanced batch reading logic to prioritize dataset-specific settings over global configurations.
- Improved logging to indicate which reading method is being used for each dataset.
- Created comprehensive tests to validate the new functionality and ensure backward compatibility.
- Added documentation detailing the new feature, its benefits, and usage examples.
- Updated the dataset variables UI schema to support two configuration types: manual and symbol-based.
- Implemented a new DatasetVariableSymbolWidget for symbol selection with auto-fill capabilities.
- Modified the DatasetManager to handle the new schema structure and UI layout.
- Integrated the new widget into the DatasetVariablesRJSF component for improved user experience.
- Updated the SymbolSelectorWidget to support callbacks for symbol selection.
- Refactored the FormTable component to utilize the new allWidgets import for better widget management.
- Added error handling and loading states for improved user feedback during data fetching.
- Implemented a new utility class `SymbolLoader` to parse Siemens ASC symbol files and save the output in JSON format.
- Created a `SymbolProcessor` class to handle symbol-based variable processing, including loading symbols and expanding configurations.
- Developed frontend components `FilePathWidget` and `SymbolSelectorWidget` for file selection and symbol selection respectively.
- Added API endpoints for loading symbols and browsing files.
- Introduced test scripts for validating the symbol loader and endpoint functionality.
- Added sample ASC and JSON files for testing purposes.
- Added line tension, stepped lines, point radius, and point hover radius to plot definitions.
- Updated plot variables to include labels for better clarity.
- Modified plot definitions schema to accommodate new visual style properties.
- Enhanced UI schema to support new configuration options in the settings panel.
- Improved ChartjsPlot component to utilize new visual style properties for rendering.
- Implemented refresh functionality for plot configuration in PlotRealtimeSession.
- Updated VariableSelectorWidget to remove unnecessary required attribute.
- Adjusted system state to reflect changes in active datasets and last update timestamp.
- Updated JSON schema for plot variables to improve clarity and structure.
- Modified UI schema for dataset variables to enhance user experience and layout.
- Revamped plot definitions UI schema for better organization and usability.
- Enhanced dataset manager to support filtered variable configuration based on selected datasets.
- Implemented a unified JSON manager for streamlined CRUD operations on configuration files.
- Improved error handling and validation for JSON schema loading and configuration management.
- Updated main application logic to utilize new JSON and schema managers for configuration operations.
- Added validation for dataset definitions and PLC configuration schemas.
- Changed dataset_variables schema from object to array format, adding dataset_id property.
- Updated plc schema by removing cleanup_interval_hours and max_hours properties, and added sampling_interval to udp_config.
- Modified plot_variables schema from object to array format, adding plot_id property.
- Enhanced UI schemas for dataset definitions and variables, improving layout and descriptions.
- Updated PLC configuration UI schema to reflect changes in the underlying schema.
- Improved error handling and logging in the ConfigManager for better diagnostics.
- Added helper methods in PLCClient for reconnection status and connection info.
- Unified API endpoints for configuration management, allowing direct file access and validation against schemas.
- Introduced a validation script for schema compliance checks.