- Implemented pauseJob and resumeJob methods in DaemonConnector to manage job states.
- Updated SharedAppState to handle new pause and resume actions.
- Introduced JobActionButton in JobRowView for user interaction to pause or resume jobs.
- Enhanced launch configuration in VSCode for debugging Spacedrive applications.
- Added a warning suppression directive in the Rust CLI main file to reduce noise during compilation.
- Deleted several Swift files related to job management and UI components, streamlining the codebase and focusing on essential functionality.
- Updated the main application structure to enhance window management and user experience.
- Improved the organization of action context handling in the Rust core, facilitating better job dispatching with action context awareness.
- Updated `CopyMethod` enum to include `Atomic` and `Streaming` variants, replacing the previous `AtomicMove` and `StreamingCopy` options for clarity.
- Refactored the `select_strategy` method to respect user preferences for copy methods, improving the logic for same-volume operations.
- Added CLI support for the new copy methods in `args.rs`, allowing users to specify their preferred method during file copy operations.
- Updated relevant tests to reflect changes in copy method naming and functionality.
- Enhanced documentation to include new copy method options and their usage.
Co-authored-by: ijamespine <ijamespine@me.com>
- Deleted `ARCHITECTURE.md`, `Cargo.toml.bak`, and various integration summary files to streamline the codebase.
- Removed outdated demo files and testing guides that are no longer relevant.
- Cleaned up the repository by eliminating unnecessary documentation and binary files, ensuring a more maintainable project structure.
Co-authored-by: ijamespine <ijamespine@me.com>
- Introduced `LibraryInfoArgs` struct for querying library information, allowing optional library ID input.
- Implemented `to_query` method for `LibraryInfoArgs` to facilitate query creation.
- Updated `LibraryCmd` enum to include `Info` variant for handling library information requests.
- Refactored argument handling in `args.rs` for improved readability and consistency.
- Enhanced `run` function in `mod.rs` to process the new `Info` command and display detailed library information.
Co-authored-by: ijamespine <ijamespine@me.com>
- Added a comprehensive testing guide for the FS Event Pipeline, detailing metrics collection, logging, and troubleshooting steps.
- Updated the CLI package name from "spacedrive-cli" to "sd-cli" in Cargo.toml for consistency.
- Modified various files to reflect the new package structure and improve logging and metrics handling.
Co-authored-by: ijamespine <ijamespine@me.com>
- Renamed the `user_metadata_manager` module to `manager` for consistency and clarity.
- Updated all references to `UserMetadataManager` across the codebase to reflect the new module name.
- Adjusted documentation to point to the new module location.
This refactor enhances the organization of the metadata management system, improving maintainability and readability.
- Renamed and restructured the tagging modules, replacing `semantic_tag` with `tag` for consistency across the codebase.
- Updated all references in the domain, operations, and database layers to reflect the new naming conventions.
- Removed deprecated files and entities related to the old semantic tagging system, including `semantic_tag.rs` and `metadata_tag.rs`.
- Enhanced the organization of the tagging system, improving clarity and maintainability for future development.
This commit streamlines the tagging architecture, paving the way for advanced features and improved usability.
- Renamed `semantic_tag_manager` to `manager` and `semantic_tagging_facade` to `facade` for clarity and consistency.
- Removed the `semantic_tag_manager.rs` and `semantic_tagging_facade.rs` files as part of the restructuring.
- Updated module imports and re-exports in `mod.rs` to reflect the new naming conventions.
- Cleaned up whitespace in the codebase for improved readability.
This commit enhances the organization of the semantic tagging system, paving the way for future development.
- Enhanced error handling in `error.rs` to provide more informative messages.
- Updated documentation to reflect recent changes in error management practices.
- Improved clarity in the CLI commands by refining error reporting mechanisms.
- Updated `bincode` dependency to version 1.3.3 for improved performance and security.
- Refactored error handling in `error.rs` to use `bincode::Error` instead of `bincode::ErrorKind`, ensuring better error management.
- Enhanced macro definitions in `macros.rs` to utilize the updated error handling structure.
- Improved error reporting in `manager.rs` when creating directories, providing clearer context for IO errors.
- Added a new design document for Sync Conduits, detailing the architecture and implementation plan for file synchronization in Spacedrive.
- Added a new documentation file outlining the finalization plan for the Spacedrive refactor, detailing remaining tasks and objectives for migrating to a CQRS architecture.
- Implemented session state management to track the current library context across operations, improving the overall architecture's modularity and maintainability.
- Refactored CLI commands and core components to utilize the new session state service, ensuring a more consistent and error-free user experience.
- Enhanced error handling and logging in various modules to facilitate debugging and improve reliability.
- Updated the subproject commit to indicate a dirty state.
- Commented out the unused import of `PathBuf` in `daemon.rs` for clarity.
- Added a test module in `registry.rs` to list registered operations and ensure at least one action or query is registered.
- Registered core actions for library creation, deletion, export, renaming, and location management, improving modularity and consistency in action handling.
These changes enhance the reliability of the operation registration process and improve code clarity.
- Removed unnecessary whitespace in `cqrs.rs` to enhance code cleanliness.
- Reorganized imports in `addressing.rs` for better clarity and consistency.
- Introduced new input types for actions, including `Input` associated types in `CoreAction` and `LibraryAction`, promoting a more modular design.
- Updated action implementations to utilize the new input structures, improving maintainability and reducing redundancy.
- Enhanced event handling in `event.rs` to ensure proper library ID filtering.
These changes improve the overall structure and maintainability of the action and query systems while ensuring a consistent API surface.
- Added the `op!` macro to streamline the registration of library actions, core actions, and queries, reducing boilerplate and promoting consistency across the codebase.
- Implemented helper macros for generating method strings for actions and queries, enhancing clarity in operation declarations.
- Updated existing file operations (copy, delete, duplicate detection) to utilize the new macro, simplifying their input and action structures.
- Introduced comprehensive documentation for the operations initialization API, outlining usage patterns and conversion mechanisms.
These changes significantly enhance the modularity and maintainability of the operation registration process while ensuring a consistent API surface.
- Updated the action registration macros from `register_action_input!` to `register_library_action_input!` to better reflect their purpose and improve clarity in the codebase.
- Adjusted related documentation and input structures to ensure consistency with the new naming convention.
- Enhanced the organization of input types for file operations and library management, promoting better modularity and maintainability.
These changes improve the clarity and consistency of the action registration process across the codebase.
- Introduced a dynamic registry for actions and queries, allowing for self-registration and improved modularity.
- Updated the `Core` struct to support new methods for executing actions and queries by method string, enhancing flexibility.
- Refactored the `CoreClient` to utilize a `METHOD` constant for action dispatching, improving clarity.
- Removed legacy action handling code and streamlined the `RpcServer` for better request management.
- Enhanced input structures for file operations and library management, ensuring type safety and consistency.
These changes significantly improve the modularity and maintainability of the action system while ensuring a consistent API surface.
- Added a new `apps/cli` module to encapsulate the CLI application logic, improving organization and modularity.
- Updated `Cargo.toml` to include dependencies for the CLI, such as `clap` for command-line argument parsing.
- Implemented a `Context` struct to manage application state and core client interactions.
- Created command handling for file operations and library management, enhancing user experience and functionality.
- Introduced utility functions for output formatting, supporting both human-readable and JSON outputs.
These changes significantly enhance the structure and maintainability of the CLI application while providing a more robust user interface.