Commit Graph

589 Commits

Author SHA1 Message Date
Sudo-Ivan
39b8d5fef8 Cleanup
Some checks failed
Build Test / Build and Test (push) Failing after 6m1s
CI / lint (push) Failing after 1m27s
CI / build-frontend (push) Failing after 1m30s
CI / test-backend (push) Successful in 1m17s
CI / test-lang (push) Failing after 1m15s
Build and Publish Docker Image / build (push) Failing after 4m28s
Build and Publish Docker Image / build-dev (push) Failing after 5m38s
Security Scans / scan (push) Successful in 2m12s
Tests / test (push) Failing after 1m17s
2026-02-17 17:59:46 -06:00
Sudo-Ivan
df0a7e1c9d Add Vitest UI support and update dependencies 2026-02-17 17:49:33 -06:00
Sudo-Ivan
a69e4e724d Update Vitest configuration for improved UI experience
- Added 'ui' and 'open' options to the Vitest configuration to enable the user interface and automatically open it upon running tests.
2026-02-17 17:49:23 -06:00
Sudo-Ivan
0c0ece66cb Improve Interface and MessagesSidebar components
- Updated the Interface component to improve layout responsiveness and added minimum width constraints for better display on smaller screens.
- Refactored the MessagesSidebar component by removing the deprecated button for ingesting paper messages and added a new context menu option for the same functionality.
- Improved styling for various elements to ensure consistent appearance across different states.
2026-02-17 17:49:09 -06:00
Sudo-Ivan
253975eb7d Add translations for 'ingest_paper_message' in German, English, Italian, and Russian
- Added the new localization key 'ingest_paper_message' to the German, English, Italian, and Russian locale files to support the ingestion of paper messages.
2026-02-17 17:48:55 -06:00
Sudo-Ivan
f776bad9c4 Add unit tests for various frontend components
- 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.
2026-02-17 17:48:40 -06:00
Sudo-Ivan
a29d3ce0ac Improve propagation sync and improve markdown rendering
Some checks failed
CI / build-frontend (push) Failing after 18s
CI / lint (push) Failing after 1m45s
CI / test-backend (push) Successful in 42s
CI / test-lang (push) Failing after 19s
Build and Publish Docker Image / build (push) Failing after 2m43s
Build and Publish Docker Image / build-dev (push) Failing after 49s
Build Test / Build and Test (push) Failing after 7m0s
Tests / test (push) Failing after 18s
Security Scans / scan (push) Failing after 48s
- Added methods to collect and manage propagation sync metrics in ReticulumMeshChat, improving message tracking and delivery confirmation.
- Updated frontend components to display detailed sync status notifications, including stored messages and delivery confirmations.
- Implemented URL safety checks in the markdown renderer to prevent XSS vulnerabilities by sanitizing links and image sources.
- Refactored various comments and code for clarity and maintainability across multiple files.
2026-02-14 19:19:09 -06:00
Sudo-Ivan
21450c69eb Add AppPropagationSync tests and enhance ConfirmDialog tests
- 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.
2026-02-14 19:18:37 -06:00
Sudo-Ivan
d9cbc59ab3 Refactor backend tests
- 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.
2026-02-14 19:18:20 -06:00
Sudo-Ivan
4839bc097b Add cx_Freeze build dependencies to build-test workflow
- Included installation of pycparser and cffi to ensure cx_Freeze build dependencies are met.
- This update enhances the build process for the backend application.
2026-02-14 19:11:08 -06:00
Sudo-Ivan
6bff5313d3 Update dependencies in package.json, pnpm-lock.yaml, and poetry.lock
- Bump versions for electron, axios, ol, vue, and eslint-plugin-vue to their latest releases.
- Update cabarchive and coverage packages in poetry.lock to the latest versions.
- Ensure compatibility with updated dependencies across the project.
2026-02-14 19:00:39 -06:00
Sudo-Ivan
0f7f7ab7c8 Update dependencies in package.json, pnpm-lock.yaml, poetry.lock, and pyproject.toml 2026-02-05 18:41:54 -06:00
Sudo-Ivan
03cf131560 Update README 2026-02-05 18:37:57 -06:00
Sudo-Ivan
f2e5de9f0e Update Dockerfile
- Newer image to fix vulns in openssl
- Enforce non-root
2026-02-05 18:37:51 -06:00
Sudo-Ivan
67fe101554 Improve messaging features and configuration options
- Add more tests
- Fix notifactions
2026-02-01 17:21:03 -06:00
Sudo-Ivan
2d33008752 Update dependencies 2026-02-01 15:17:14 -06:00
Sudo-Ivan
d474afbf80 Add reply functionality to messages in ReticulumMeshChat
- 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.
2026-02-01 15:13:00 -06:00
Sudo-Ivan
af0d9352c2 Update MicronParser with DOMPurify integration and code improvements
- 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.
2026-01-23 11:28:43 -06:00
Sudo-Ivan
fc0a2444ad Update NetworkVisualiser with Level of Detail (LOD) management and icon cache optimization
- 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!
2026-01-23 09:24:22 -06:00
Sudo-Ivan
e8a303fd6f Add DOMPurify initialization in frontend test setup
- Integrated DOMPurify for sanitizing HTML in tests.
- Added error handling for DOMPurify initialization to ensure robustness.
- Made DOMPurify globally accessible in the test environment.
2026-01-18 16:18:13 -06:00
Sudo-Ivan
fd94d8d29b Update MicronParser 2026-01-18 15:55:26 -06:00
Sudo-Ivan
aa8575e367 Refactor build workflows to remove windows and flatpak, those will be done manually (Windows) v4.1.0 2026-01-16 14:41:47 -06:00
Sudo-Ivan
4424d34474 Add Wine environment setup script
- Introduced a new script to automate the setup of a Wine prefix with Python and Git for Windows.
- The script downloads the specified versions of Python and Git, initializes the Wine environment, and installs necessary build dependencies.
- Enhances the build process for Windows cross-builds by streamlining the installation of required tools.
2026-01-16 12:38:39 -06:00
Sudo-Ivan
5b1332c7dd Add Wine setup task and update build workflows
- Introduced a new task for setting up the Wine environment for Windows cross-builds in Taskfile.yml.
- Updated build-test.yml and build.yml workflows to include 'xvfb' in the Wine installation command for improved compatibility.
- Refactored the Wine setup process in the build workflow to utilize the new task instead of inline commands, enhancing maintainability.
2026-01-16 10:47:47 -06:00
Sudo-Ivan
2b854f7c5c Code Cleanup 2026-01-16 09:34:18 -06:00
Sudo-Ivan
2342d62ce8 Update 2026-01-16 09:33:30 -06:00
Sudo-Ivan
3251e74629 Add animation direction control for syncing indicator in ConversationViewer
- Enhanced the syncing indicator by allowing the animation direction to reverse when syncing is in progress, improving visual feedback for users.
2026-01-16 09:33:25 -06:00
Sudo-Ivan
f94fe0ec08 Improve integrity management with advanced checks and metadata support
- 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.
2026-01-16 09:33:19 -06:00
Sudo-Ivan
730ab28365 Update 2026-01-16 09:21:43 -06:00
Sudo-Ivan
d6351c51b3 Add accessibility tests for keyboard navigation and ARIA labels
- 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.
2026-01-16 09:21:37 -06:00
Sudo-Ivan
64e4fceb2d Refactor identity manager metadata loading and improve legacy migrator column handling
- 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.
2026-01-16 09:21:30 -06:00
Sudo-Ivan
204a6585ea Remove ZIP artifact build step from Gitea workflow and clean up release asset preparation process 2026-01-16 09:19:55 -06:00
Sudo-Ivan
fcbdbb887a Update Trivy image scan exit code in Docker workflow to allow successful builds 2026-01-16 09:19:33 -06:00
Sudo-Ivan
3fbaab9136 Move to scan.yml security scanning workflow and integrate Trivy better 2026-01-16 09:02:04 -06:00
Sudo-Ivan
8e47de38ad Add LXMF link handling and improve link rendering logic
- Implemented event handling for LXMF links in ConversationViewer and RNCPPage components to navigate to message destinations.
- Updated LinkUtils to support both NomadNet and LXMF link formats, enhancing link detection and rendering.
- Modified RNPathTracePage to display error state alongside loading and result states for better user feedback.
- Improved utility functions to handle edge cases for zero or negative values in various formatting methods.
2026-01-16 08:53:11 -06:00
Sudo-Ivan
81b574da29 Refactor notification handling and improve error logging
- Changed parameter name from `type` to `notification_type` in the `add_notification` method for clarity.
- Improved error handling in various modules by using `contextlib.suppress` to gracefully handle exceptions without cluttering the code with try-except blocks.
- Improved logging for bot state saving failures to aid in debugging.
2026-01-16 08:53:00 -06:00
Sudo-Ivan
4febae82e7 Cleanup 2026-01-16 08:52:42 -06:00
Sudo-Ivan
4c26740aca Update dependencies 2026-01-16 08:52:31 -06:00
Sudo-Ivan
c4719feb7f Fix indentation in CI workflow for linting step 2026-01-16 08:52:03 -06:00
Sudo-Ivan
ee9ed05338 Add property-based tests for display name parsing and fuzzing
- 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.
2026-01-16 08:51:48 -06:00
Sudo-Ivan
4106e28ff1 Update tutorial modal handling during route changes 2026-01-14 20:28:35 -06:00
Sudo-Ivan
33d79424e9 Update workflows with new task commands 2026-01-14 19:49:06 -06:00
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