Commit Graph

547 Commits

Author SHA1 Message Date
Sudo-Ivan 85f734bd9b Update build configuration for multi-architecture support
- 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.
2026-01-14 19:47:08 -06:00
Sudo-Ivan c5e1d5cfec Add support for building arm64 applications on Linux and Windows
- 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.
2026-01-14 19:46:45 -06:00
Sudo-Ivan bb4b60ce61 Add Wine environment setup for building Windows applications
- 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.
2026-01-14 19:30:17 -06:00
Sudo-Ivan 837c62ef96 Refactor Taskfile for improved organization and clarity 2026-01-14 19:30:08 -06:00
Sudo-Ivan ee5a71361a 4.1.0 2026-01-14 19:03:00 -06:00
Sudo-Ivan 50806798da Fix tutorial modal behavior and state management 2026-01-14 18:52:55 -06:00
Sudo-Ivan 580812dcd1 Update README 2026-01-14 18:42:51 -06:00
Sudo-Ivan a9f342f112 Update README 2026-01-14 18:37:47 -06:00
Sudo-Ivan 1eeeb1cb4e Improve crash recovery diagnostics and analysis
- 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.
2026-01-14 18:32:58 -06:00
Sudo-Ivan 16d5f2d497 Refactor MarkdownRenderer regex patterns for improved matching
- 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.
2026-01-14 18:16:41 -06:00
Sudo-Ivan c08cdb65b6 Add Hypothesis settings to lifecycle tests for improved fuzzing
- Introduced settings to disable deadlines in the test_identity_context_repeated_lifecycle function.
- Combined import statements for Hypothesis to streamline the code.
2026-01-14 18:03:15 -06:00
Sudo-Ivan d167d7c32e Update legacy Electron configuration and build tasks
- Add legacy package.json
- Update Taskfile
2026-01-14 18:00:02 -06:00
Sudo-Ivan 1788aea0c2 Add tests for crash recovery, emergency mode, and lifecycle management
- 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.
2026-01-14 17:59:22 -06:00
Sudo-Ivan a8687a0e09 Cleanup 2026-01-14 17:58:49 -06:00
Sudo-Ivan 93974edf3f Refactor IdentityContext teardown process to ensure proper 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.
2026-01-14 17:58:37 -06:00
Sudo-Ivan 5354340d8a Update README 2026-01-14 17:58:02 -06:00
Sudo-Ivan aaa450fe28 Add Reticulum config validation and default creation
- 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.
2026-01-14 17:56:29 -06:00
Sudo-Ivan a022a96f92 Improve crash recovery diagnostics and suggestions 2026-01-14 17:56:15 -06:00
Sudo-Ivan 7e57cc2b24 Add in-memory database connection handling in DatabaseProvider 2026-01-14 17:45:37 -06:00
Sudo-Ivan 6a4ed6a048 Fix WebAudioBridge to manage event loop retrieval
- 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.
2026-01-14 17:45:20 -06:00
Sudo-Ivan ca3ef05f75 Clear clients list on call end in WebAudioBridge to prevent memory leaks 2026-01-14 13:16:55 -06:00
Sudo-Ivan ca36d082fd Update Markdown rendering and add robust identity restoration tests
- 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.
2026-01-14 13:08:26 -06:00
Sudo-Ivan 756104ff65 Remove unused ElectronUtils import from TutorialModal.vue 2026-01-14 13:03:05 -06:00
Sudo-Ivan 2ce29a6488 ruff format and fixes 2026-01-14 13:02:33 -06:00
Sudo-Ivan 0ae45b45c0 Add temporary log directory setup for tests and improve input validation in fuzz tests
- 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.
2026-01-14 12:40:28 -06:00
Sudo-Ivan 140ee6f341 Refactor telemetry data packing in Telemeter class
- Simplified the packing of location data by removing unnecessary rounding operations.
2026-01-14 12:39:51 -06:00
Sudo-Ivan 55ddb0435d Update Docker (dev image) workflow to trigger on master branch pushes 2026-01-14 11:48:29 -06:00
Sudo-Ivan ec26a76690 Add packaging directory to ESLint configuration
- 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.
2026-01-14 11:02:21 -06:00
Sudo-Ivan e067902005 Add tests for NetworkVisualiser optimization and abort handling
- 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.
2026-01-14 11:02:13 -06:00
Sudo-Ivan 8d5bef2097 Update NetworkVisualiser with abort controller and improved data fetching
- 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.
2026-01-14 11:02:04 -06:00
Sudo-Ivan 2fb42d27fa Add pagination support in database queries for announces
- 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.
2026-01-14 11:01:50 -06:00
Sudo-Ivan 29b7fb6449 Refactor Dockerfile to use external build script 2026-01-14 08:38:28 -06:00
Sudo-Ivan 950e82b26c Add build script for Arch package to handle permissions and execute makepkg 2026-01-14 08:38:21 -06:00
Sudo-Ivan 3f71ce1777 Update PKGBUILD to version 4.0.0 for reticulum-meshchatx 2026-01-14 08:38:16 -06:00
Sudo-Ivan 9cfbf94ddb no-cache for Docker builds in CI workflow 2026-01-14 08:30:51 -06:00
Sudo-Ivan 9a9c5cb518 Update Arch package build workflow to use --no-cache option for Docker build 2026-01-14 08:18:01 -06:00
Sudo-Ivan 60dc044c88 Update dependencies 2026-01-14 08:05:25 -06:00
Sudo-Ivan 02c2f1d09a Update Dockerfile 2026-01-14 08:05:06 -06:00
Sudo-Ivan 2ee31e1e34 Update build workflow 2026-01-14 07:57:57 -06:00
Sudo-Ivan 0b7478f135 Update Arch Dockerfile and CI workflow for Arch package building: create a build script to handle permissions and update volume mount path in CI configuration. 2026-01-14 07:57:48 -06:00
Sudo-Ivan e7e16707a0 Update health check test 2026-01-14 07:57:28 -06:00
Sudo-Ivan 6d86f6bc67 Remove entries from CommunityInterfacesManager initialization v4.0.0 2026-01-10 20:15:18 -06:00
Sudo-Ivan 6da36e2fb2 Fix version determination logic in build workflow 2026-01-10 19:01:43 -06:00
Sudo-Ivan 0b9faceb46 Update dependencies 2026-01-10 18:57:19 -06:00
Sudo-Ivan 7fb7543efe Update Taskfile.yml 2026-01-10 18:56:54 -06:00
Sudo-Ivan 004639e852 Update localization files for German, English, Italian, and Russian: modify restart instructions to recommend manual restarts and add a new "finish_setup" key for completion prompts. 2026-01-10 18:56:36 -06:00
Sudo-Ivan 0d05d348ef Update changelog retrieval logic in ReticulumMeshChat: check for CHANGELOG.md in public folder if not found in the default location, and adjust headless mode default based on application state. 2026-01-10 18:56:31 -06:00
Sudo-Ivan 7f5254b1b7 Refactor tutorial completion logic in TutorialModal.vue: rename finishAndRestart to finishTutorial, update button text, and streamline functionality. 2026-01-10 18:56:23 -06:00
Sudo-Ivan 7eed90249f Add CHANGELOG.md to include files in build process if it exists 2026-01-10 18:56:14 -06:00
Sudo-Ivan eff722ee18 Update backend process spawning in Electron by adding error handling for failed process initiation and allow overriding the Python command in the build script for cross-platform compatibility. 2026-01-10 18:35:43 -06:00