- Added new build scripts for Linux and Windows targeting arm64 and x64 architectures.
- Updated package.json to include architecture-specific distribution commands.
- Modified build-backend.js to create architecture-specific build directories for better organization.
- Introduced new tasks for building Linux arm64 AppImage and Windows arm64 portable EXE.
- Updated existing build commands to streamline the process for legacy Electron applications.
- Improved command syntax for electron-builder to enhance clarity and maintainability.
- Introduced a new job step in the build workflow to set up a Wine environment.
- Downloaded and installed Windows Python and Git within Wine.
- Configured Wine to install necessary build dependencies using pip.
- Enhanced the build process for the Electron app targeting Windows platforms.
- Expanded the crash recovery module to include advanced diagnostic metrics such as system entropy, KL-Divergence, and manifold curvature.
- Improved root cause analysis by implementing a probabilistic approach with detailed suggestions for various failure scenarios.
- Added comprehensive tests to validate heuristic analysis, entropy calculations, and the robustness of the crash recovery logic.
- Updated existing tests to ensure accurate diagnosis and reporting of system states during exceptions.
- Updated regex patterns in the MarkdownRenderer to use non-greedy matching for better accuracy in text rendering.
- Enhanced the test for header rendering to ensure correct HTML structure and added assertions for escaping content without markdown special characters.
- Introduced settings to disable deadlines in the test_identity_context_repeated_lifecycle function.
- Combined import statements for Hypothesis to streamline the code.
- Introduced new tests for heuristic analysis in crash recovery to validate error diagnosis.
- Added tests for emergency mode to ensure memory concurrency handling with the in-memory database.
- Created a comprehensive suite for lifecycle management, including database provider disposal and identity context teardown to prevent memory leaks.
- Improved existing tests for WebAudioBridge to verify proper event loop handling and resource cleanup.
- Added nullification of various manager attributes to prevent reference cycles and memory leaks during teardown.
- Improved error handling and ensured that callbacks are cleared for telephone and voicemail managers.
- Enhanced the integrity manager's save process to only execute if it exists, ensuring stability during the shutdown sequence.
- Implemented a method to ensure a valid Reticulum config file exists, creating a default if missing or invalid.
- Better error handling for reading and writing the config file to improve robustness during initialization.
- Introduced a property for accessing the event loop, allowing for better handling of both running and fallback scenarios.
- Updated the internal loop management to improve compatibility with asynchronous operations.
- Updated the MarkdownRenderer to prevent rendering issues with single asterisks and underscores by ensuring they are not surrounded by whitespace.
- Introduced new property-based tests for IdentityManager to validate robustness against various input scenarios.
- Added tests for Markdown list and link rendering to ensure correct HTML output from Markdown input.
- Configured a temporary directory for log files in tests to prevent permission issues in restricted environments.
- Improved input validation in fuzz tests for `root_folder_name` and `docs_file` to exclude null characters, enhancing robustness.
- Introduced a new test suite for property-based testing of telemetry and utility functions, ensuring stability and correctness across various scenarios.
- Updated the ESLint configuration to include the 'packaging' directory in the list of ignored paths.
- This change ensures that packaging-related files are not linted, streamlining the development process.
- Introduced a new test suite for NetworkVisualiser focusing on optimization and request cancellation.
- Implemented tests to ensure pending requests are aborted on component unmount.
- Added validation for stopping visualization processing when requests are aborted.
- Included tests for parallelized batch fetching to improve data retrieval efficiency.
- Increased page size for path table and announces fetching to 1000 for better performance.
- Implemented an AbortController to manage request cancellations, improving responsiveness during data loading.
- Refactored data fetching methods to support concurrent requests while respecting the abort signal.
- Updated loading status messages to reflect current progress during data retrieval.
- Implemented pagination at the database level for improved performance when no search query is provided.
- Added a new method `get_filtered_announces_count` in `AnnounceManager` to retrieve the total count of filtered announces for pagination.
- Adjusted the `ReticulumMeshChat` class to utilize the new count method and handle pagination more efficiently.