- Updated the version in `__init__.py` and `version.py` to 4.3.0.
- Introduced `PageNodeManager` to handle the lifecycle of page nodes, including creation, deletion, and management of their state.
- Added API endpoints for listing, creating, retrieving, deleting, starting, stopping, and announcing page nodes.
- Improved the frontend with a new `PageNodesPage` component for managing page nodes and integrated publishing functionality in the `MicronEditorPage`.
- Simplified diagnostic output by renaming "Probabilistic Root Cause Analysis" to "Root Cause Analysis".
- Removed unused methods and calculations related to manifold curvature.
- Updated tests to reflect changes in diagnostic output and removed obsolete assertions.
- Introduced SQLite pragma tuning in the Database initialization for improved performance.
- Wrapped multiple database operations in transactions to optimize batch processing in MessageDAO.
- Updated DatabaseSchema to version 39, adding new indexes for better query performance.
- Improved test coverage for batch operations and SQL injection scenarios in the DAO layer.
- Implemented identifier validation regex in legacy migrator and schema.
- Enhanced database path handling to escape single quotes during ATTACH DATABASE.
- Added tests for SQL injection scenarios, ensuring robustness against malicious inputs.
- Introduced fuzz tests for DAO layers to cover edge cases and improve overall test coverage.
- Simplified the structure of the skeleton loading elements for better clarity.
- Enhanced the import/export button click handling for improved readability.
- Updated test case descriptions to reflect the functionality of showing import and export options when identities exist.
- Added `get_public_key` method to mock identity in `test_auto_propagation_api.py`.
- Updated `test_get_config_dict_basic` in `test_meshchat_coverage.py` to assert public key retrieval.
- Introduced new tests for LXMA URI handling in `AppQrUri.test.js` and `ContactsPage.test.js`.
- Enhanced `IdentitiesPage.test.js` to expose current identity details including LXMF address and message count.
- Added routing tests for LXMA contact ingestion in `MessagesPage.test.js`.
- Introduced new test files for BlockedPage, DropDownMenu, and Interface components to ensure proper rendering and functionality.
- Enhanced existing tests for ConfirmDialog, MessagesSidebar, and NotificationBell, improving coverage and verifying UI behavior.
- Added performance tests for LoadTimePerformance to measure loading times for large datasets in the PropagationNodesPage and MessagesSidebar.
- Removed the deprecated InterfacesPage test file to streamline the test suite.
- Introduced a new test suite for App propagation sync metrics, validating toast notifications for sync status.
- Enhanced ConfirmDialog tests to verify heading display and button attributes.
- Added additional tests for FormLabel, FormSubLabel, LanguageSelector, and other components to improve test coverage and ensure proper functionality.
- Removed redundant comments from various test files to enhance readability and focus on the test logic.
- Added a few tests for prop sync and markdown security.
- Implemented reply feature by adding `reply_to_hash` to messages, allowing users to reference previous messages.
- Updated message handling in `convert_lxmf_message_to_dict` to process `reply_to` fields.
- Enhanced frontend components to display reply snippets and manage reply state.
- Added localization for reply-related text in multiple languages.
- Updated database schema to include `reply_to_hash` and created necessary indices.
This update improves user interaction by enabling message threading and enhances the overall messaging experience.
- Added global DOMPurify reference for HTML sanitization.
- Improved error handling for DOMPurify initialization.
- Refactored style definitions and formatting for consistency.
- Updated tests to reflect changes in MicronParser initialization and behavior.
This update enhances security and code readability while ensuring robust functionality.
- Introduced dynamic LOD updates based on network scale, improving performance and visual clarity.
- Implemented blob URL management for icon caching to optimize memory usage and prevent leaks.
- Updated tests to validate LOD functionality and icon cache behavior, ensuring robustness and performance efficiency.
Thanks to L for suggestion!
- Integrated DOMPurify for sanitizing HTML in tests.
- Added error handling for DOMPurify initialization to ensure robustness.
- Made DOMPurify globally accessible in the test environment.
- Introduced entropy calculations to detect content type shifts in files.
- Added SQLite integrity checks to verify database structure and prevent tampering.
- Updated the manifest saving process to include metadata for files, such as entropy and size.
- Expanded ignored file patterns for volatile LXMF components.
- Implemented extensive unit tests to validate new features and ensure robustness.
- Introduced a new test suite for UI accessibility focusing on keyboard shortcuts and ARIA attributes.
- Verified that keyboard shortcuts trigger global events and are ignored in input fields without modifiers.
- Checked for proper ARIA labels on critical buttons to enhance accessibility compliance.
- Simplified metadata loading in IdentityManager by combining context managers.
- Updated LegacyMigrator to exclude 'id' from common columns during migration to prevent collisions.
- Increased SQLite connection timeout in DatabaseProvider for improved reliability.
- Removed unnecessary thread patching in test configuration.
- Added concurrency stress tests for database operations and identity management.
- Introduced database migration tests to validate legacy data handling and migration success.
- Introduced new test suite for `parse_lxmf_display_name`, `parse_nomadnetwork_node_display_name`, and related functions using Hypothesis for property-based testing.
- Added various strategies to generate diverse input data, including edge cases for invalid and long names.
- Implemented tests to ensure robustness against invalid base64 inputs and to verify expected behavior with valid and corrupted data.
- Created smoke tests for frontend components including BotsPage, ForwarderPage, and others to ensure proper rendering and functionality.
- 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.
- 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.
- 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.