aboutsummaryrefslogtreecommitdiff
path: root/crates/system_action
Commit message (Collapse)AuthorAgeFilesLines
* Improve documentation for system action and config file crates魏曹先生2025-11-253-6/+123
|
* update: Action.rs 1. Rename `insert` to `with_data` and `insert_arc` to魏曹先生2025-10-291-2/+12
| | | | | `with_arc_data` 2. Add new `insert_data` and `insert_arc_data` methods that take &mut self
* Update dependencies to latest versions魏曹先生2025-10-272-5/+5
|
* fixed: Incorrect condition setting for determining whether to send魏曹先生2025-10-271-0/+1
| | | | parameters during `on_proc_begin`
* update: ActionContext 1. Rename `local` to `proc_on_local` 2. Add魏曹先生2025-10-271-7/+20
| | | | `is_remote_action`
* "fix: Fix indentation issues魏曹先生2025-10-271-5/+6
|
* fix: Make the ActionContext passed to on_proc_begin mutable魏曹先生2025-10-272-7/+7
|
* Re-export subcrate `action_system` to `just_enough_vcs`魏曹先生2025-10-241-2/+3
|
* Fix Clippy warnings and optimize code魏曹先生2025-10-133-28/+41
| | | | | | | | | - 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
* feat: implement asynchronous action call system魏曹先生2025-10-133-18/+75
| | | | | | | | | | - 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
* feat: Implement JSON-based type-erased action invocation魏曹先生2025-10-133-12/+110
| | | | | | | | | - 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
* feat: Add JSON-based action invocation to ActionPool魏曹先生2025-10-134-16/+27
| | | | | | | | - 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
* refactor: Update action macros and error types魏曹先生2025-10-121-4/+4
| | | | | - Enhance action_gen macro functionality - Add new error variants for TCP connection
* chore: Update dependencies and module exports魏曹先生2025-10-121-0/+3
| | | | | - Add required dependencies for action system - Export registry modules in vcs_actions library
* feat: Add callback mechanism to ActionPool魏曹先生2025-10-121-6/+53
| | | | | | | - 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
* feat: Add Clone implementation for ActionContext魏曹先生2025-10-121-2/+20
| | | | | This enables ActionContext to be cloned when setting up process begin callbacks, resolving lifetime issues in callback registration.
* feat: add default implementation and convenience methods to ActionContext魏曹先生2025-10-061-2/+19
| | | | | | - Implement Default trait for ActionContext - Add local() and remote() constructor methods - Make instance field optional for better flexibility
* refactor: optimize procedural macros in action_system魏曹先生2025-10-061-3/+31
| | | | | | - Add register_to_pool and process_at_pool helper methods to generated structs - Improve documentation with usage examples - Enhance macro-generated code structure
* Fix macro to properly extract and use parameter names from function signature魏曹先生2025-10-061-8/+26
| | | | | | | - 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
* Fix macro expansion type errors in action_system macros魏曹先生2025-10-061-2/+2
| | | | | | | - 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
* Rename vcs_service to action_system for better naming clarity魏曹先生2025-10-066-0/+326
- Create new action_system crate with action framework - Create action_system_macros crate for procedural macros - Update vcs crate dependencies to use action_system - Maintain same functionality with improved naming