summaryrefslogtreecommitdiff
path: root/crates/vcs_actions
AgeCommit message (Collapse)Author
2025-11-26Add print_info option to edit right change action魏曹先生
The action now accepts a boolean flag to control whether success information should be printed to stdout. When enabled, held files are prefixed with "+" and thrown files with "-". The logic for hold/throw operations was also corrected to match the intended behavior.
2025-11-25Implement virtual file edit right management魏曹先生
2025-11-25Add `hold_virtual_file_action` in user actions魏曹先生
2025-11-25Rename `virtual_file_action.rs` to `track_action.rs`魏曹先生
2025-11-24Implement file synchronization in track file action魏曹先生
- Add sync task processing for both local and remote operations - Use temp files for secure download operations - Update file metadata after successful synchronization - Add proper error handling and cleanup for sync operations - Display sync progress with appropriate status symbols
2025-11-24Optimize update info transmission to ignore file member presence魏曹先生
The version information is now sent regardless of whether files have member holders, simplifying the update protocol.
2025-11-24Use virtual file metadata version for baseline verification魏曹先生
2025-11-24Fix workspace not marked as modified after successful update魏曹先生
When updating to latest info with no sync needed, ensure the workspace is properly marked as unmodified when running local procedures.
2025-11-23Add vault modification tracking魏曹先生
- Record vault state changes in sheet operations - Track modifications when creating, dropping, or updating sheets - Mark vault as unmodified after syncing with upstream - Add vault_modified module with check and sign functions
2025-11-23Apply clippy suggestions魏曹先生
2025-11-20add: Support for update descriptions and info printing魏曹先生
Add file_update_info parameter to track versions and descriptions, add print_infos flag for user feedback.
2025-11-20update: Improve file update task processing魏曹先生
Implement complete update task processing for both local and remote operations, add version validation and conflict detection.
2025-11-20feat: Add file update verification system魏曹先生
Add comprehensive file update verification with detailed failure reasons including version mismatch, file not held, and missing descriptions.
2025-11-17Ensure task processing order by using Vec instead of HashSet魏曹先生
The change from HashSet to Vec for task collections maintains the order of file operations, which is important for consistent processing behavior. This affects created_task, update_task, and sync_task variables throughout the code.
2025-11-17Use member-specific paths for latest info files魏曹先生
2025-11-17feat: Add file status tracking and SHA1 hash system魏曹先生
- Implement SHA1 hash calculation module with async support - Add file status analysis for tracking moves, creates, and modifications - Enhance local file management with relative path handling - Update virtual file actions with improved tracking capabilities
2025-11-06feat: Add virtual file actions foundation (WIP)魏曹先生
- Create virtual file actions module - Add basic structure for virtual file operations - NOTE: Still under development
2025-11-06update: Connection and registry enhancements魏曹先生
- Refine action service connection handling - Extend client registry functionality - Enhance server registry capabilities
2025-11-06feat: Overhaul local-remote synchronization魏曹先生
- Add cached sheet data synchronization - Implement bidirectional sheet version checking - Enhance update_to_latest_info_action with sheet sync - Add support for SheetData and CachedSheet integration
2025-11-05Add sheet restoration and drop functionality魏曹先生
- Add write_and_return macro for common result handling pattern - Extend make_sheet_action to restore sheets with no holder - Implement drop_sheet_action for releasing sheet ownership - Register new drop_sheet_action in client and server registries
2025-11-03feat: Enhance upstream vault action魏曹先生
- Add redirect functionality for already stained workspaces - Implement SameUpstream and Redirected result types - Improve vault address update logic
2025-11-03update: Local actions and data structures魏曹先生
- Update local actions implementation - Improve latest info handling - Enhance vault sheets management
2025-11-03update: Registry and connection improvements魏曹先生
- Update client and server registry logic - Improve TCP connection instance handling
2025-11-03feat: Add sheet creation action魏曹先生
- Implement make_sheet_action for creating sheets - Add sheet-related constants - Update sheet data structures
2025-10-30Add update_to_latest_info action魏曹先生
This action synchronizes the latest vault information including sheets, reference sheet content, and member data between local and remote instances.
2025-10-30Change auth_member to return MemberId on success魏曹先生
The authentication function now returns the authenticated member's ID instead of just () when successful. This provides callers with access to the authenticated member's identity for subsequent operations.
2025-10-29Apply clippy suggestions魏曹先生
- Use dereferenced UUID instead of cloning - Simplify error message formatting
2025-10-29Add LocalWorkspace and UserDirectory to client ActionContext魏曹先生
Initialize and insert Arc-wrapped LocalWorkspace and UserDirectory instances into the ActionContext for client environment actions. This provides workspace and user directory data to actions running in client mode. The LocalWorkspace is initialized from the current directory's local config, while UserDirectory uses the current document directory. Both are wrapped in Arc for efficient sharing across the action execution.
2025-10-29feat: Add port override capability to server entry魏曹先生
The server_entry function now accepts an optional port_override parameter that allows specifying a custom port instead of using the configured port from vault configuration. When port_override is greater than 0, it takes precedence over the configured port.
2025-10-29Update actions.rs魏曹先生
2025-10-29feat: Completed `set_upstream_vault_action`魏曹先生
2025-10-29update: Action.rs 1. Rename `insert` to `with_data` and `insert_arc` to魏曹先生
`with_arc_data` 2. Add new `insert_data` and `insert_arc_data` methods that take &mut self
2025-10-27Fix error handling in process_connection魏曹先生
2025-10-27Update dependencies to latest versions魏曹先生
2025-10-27update: Add connection logs to show active count魏曹先生
Include current connection count in connection open/close log messages for better monitoring of server load
2025-10-27update: Add server lock behavior to vault lifecycle魏曹先生
Lock the vault before starting the server and unlock it during shutdown.
2025-10-27update: Remove `hello_world_action`魏曹先生
2025-10-27fixed: Incorrect condition setting for determining whether to send魏曹先生
parameters during `on_proc_begin`
2025-10-27update: ActionContext 1. Rename `local` to `proc_on_local` 2. Add魏曹先生
`is_remote_action`
2025-10-27fix: Make the ActionContext passed to on_proc_begin mutable魏曹先生
2025-10-27Add some debug logs魏曹先生
2025-10-24Fix some spelling issues.魏曹先生
2025-10-24Re-export subcrate `action_system` to `just_enough_vcs`魏曹先生
2025-10-13Fix Clippy warnings and optimize code魏曹先生
- Fix let_underscore_future warning by properly awaiting async functions - Make accept_import function async to match add_mapping usage - Propagate errors properly with ? operator instead of ignoring them - Replace manual Default implementation with derive attribute - Replace vec! with array literal to avoid useless_vec warning - All tests pass and code is now Clippy clean
2025-10-13feat: implement asynchronous action call system魏曹先生
- Add async callback support with proper argument passing - Implement remote action invocation via TCP connection - Add hello_world_action example demonstrating async communication - Improve ActionPool with type-safe async processing - Update client registry for remote action handling - Enhance ActionContext with better instance management - Support both local and remote action execution modes
2025-10-13feat: Implement JSON-based type-erased action invocation魏曹先生
- Add process_json method to ActionPool for type-agnostic calls using JSON serialization - Extend ActionContext with action_name and action_args fields and setter methods - Update action_gen macro to use process_json instead of typed process method - Implement remote action invocation framework in client_registry and action_service - Add protocol definitions for remote action communication - Enable flexible action execution without explicit type specifications
2025-10-13feat: Add JSON-based action invocation to ActionPool魏曹先生
- Extend action_gen macro to generate JSON serialization logic - Implement generic action processing using JSON text for type-agnostic calls - Add callback mechanism with action name and arguments in ActionPool - Update client and server registries to use new callback system - Improve action system flexibility at the cost of serialization overhead
2025-10-12feat: Add connection infrastructure and documentation魏曹先生
- Implement action service for connection handling - Add error types for connection operations - Create todo.md for project tracking
2025-10-12chore: Update dependencies and module exports魏曹先生
- Add required dependencies for action system - Export registry modules in vcs_actions library
2025-10-12feat: Implement SetUpstreamVaultAction魏曹先生
- Add local action for setting upstream vault - Use action_gen macro for automatic registration - Validate action is executed locally