summaryrefslogtreecommitdiff
path: root/crates
AgeCommit message (Collapse)Author
2025-10-29Apply clippy suggestions魏曹先生
- Use dereferenced UUID instead of cloning - Simplify error message formatting
2025-10-29Improve vault lock error message and formatting魏曹先生
- Use clearer error message when vault is already locked - Fix code formatting for consistency - Remove unnecessary line breaks in error formatting
2025-10-29Make config fields thread-safe with Arc<Mutex>魏曹先生
- Change LocalWorkspace config to Arc<Mutex<LocalConfig>> - Change Vault config to Arc<VaultConfig> - Add config accessor methods for both structs - Update initialization methods to wrap config in Arc/Mutex
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-29Add new error types and sort variants alphabetically魏曹先生
- Add Authentication, Locked, NoResult, and NotFound error variants - Remove Crypto error variant - Reorder all variants in A-Z order for better maintainability
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-27Add service module to vault魏曹先生
2025-10-27Add lockfile constant for server service魏曹先生
2025-10-27update: Remove unused inline comments from constants魏曹先生
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-27update: Add error type - Locked魏曹先生
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-27"fix: Fix indentation issues魏曹先生
2025-10-27fix: Make the ActionContext passed to on_proc_begin mutable魏曹先生
2025-10-27feat: Add Server Lock魏曹先生
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-18Update `config.rs`魏曹先生
- If config file not exist, now return Error
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-12feat: Update data configuration structures魏曹先生
- Add new configuration fields for local and vault data - Remove outdated todo.txt file
2025-10-12refactor: Update action macros and error types魏曹先生
- Enhance action_gen macro functionality - Add new error variants for TCP connection
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
2025-10-12feat: Add server action registry魏曹先生
- Create server_action_pool function - Register SetUpstreamVaultAction for server use
2025-10-12feat: Add callback mechanism to ActionPool魏曹先生
- Add ProcBeginCallback and ProcEndCallback types - Implement set_on_proc_begin and set_on_proc_end methods - Add callback execution in process method - Update trait bounds for better type safety
2025-10-12fix: Resolve callback type mismatch in client_registry魏曹先生
- Fix lifetime issue in on_proc_begin callback registration - Use cloned context in async closure to avoid lifetime conflicts - Rename unused variable to suppress warning
2025-10-12feat: Add Clone implementation for ActionContext魏曹先生
This enables ActionContext to be cloned when setting up process begin callbacks, resolving lifetime issues in callback registration.
2025-10-06chore: update workspace configuration and dependencies魏曹先生
- Add examples to workspace members - Update vcs_data dependencies structure - Fix library re-export paths in main lib.rs
2025-10-06feat: add new error variants to TcpTargetError魏曹先生
- Add NotLocal error for actions requiring local execution - Add NotRemote error for actions requiring remote execution
2025-10-06feat: add default implementation and convenience methods to ActionContext魏曹先生
- Implement Default trait for ActionContext - Add local() and remote() constructor methods - Make instance field optional for better flexibility
2025-10-06refactor: optimize procedural macros in action_system魏曹先生
- Add register_to_pool and process_at_pool helper methods to generated structs - Improve documentation with usage examples - Enhance macro-generated code structure
2025-10-06Fix macro to properly extract and use parameter names from function signature魏曹先生
- Extract actual parameter names (ctx, upstream) from function signature - Use extracted parameter names in generated process method - Remove workaround that manually assigned context to ctx variable - Ensure generated code matches the original function parameter names exactly
2025-10-06Fix macro expansion type errors in action_system macros魏曹先生
- Update macro-generated code to use correct action_system crate name - Replace vcs_service references with action_system in generated implementations - Ensure Action trait implementations reference the correct module path - Fix ActionContext type references in generated process methods
2025-10-06Remove old vcs directory after migration to vcs_data魏曹先生
- Delete entire crates/vcs directory and its contents - Remove test files and configuration from old structure - Complete transition to new vcs_data and vcs_actions architecture
2025-10-06Create vcs_actions crate for client-server interaction logic魏曹先生
- Add new crate to combine action_system and vcs_data functionality - Define dependencies on both action_system and vcs_data crates - Prepare structure for implementing client-server communication logic
2025-10-06Move vcs crate to vcs_data for better separation of concerns魏曹先生
- Rename vcs crate to vcs_data to clearly define data layer - Maintain all existing data structures and functionality - Update dependencies to include action_system integration - Preserve test structure in vcs_data_test directory
2025-10-06Remove old service directory and move todo.txt to vcs crate魏曹先生
- Delete entire crates/service directory with old vcs_service implementation - Move todo.txt to crates/vcs for better organization - Keep action list in main vcs crate where it belongs