What's Changed
feat(backend): enhance backend with ripgrep support and RunInBackendGround
-
Refactor GrepRaw and GlobInfo to use ripgrep and doublestar
- local: implement ripgrep-based grep with full regex support
- local: use doublestar for glob pattern matching
-
Add pattern validation for GrepRaw to prevent empty patterns
-
Add RunInBackendGround option to execute commands asynchronously
- local.ExecuteStreaming: run command in background without blocking
-
Refactor ExecuteStreaming into smaller, maintainable functions:
- initStreamingCmd: create command with stdout/stderr pipes
- runCmdInBackground: handle background execution logic
- drainPipesConcurrently: consume pipes to prevent blocking
- streamCmdOutput: main streaming output handler
- readStderrAsync: async stderr reading
- streamStdout: line-by-line stdout streaming
- handleCmdCompletion: process command exit status
- sendErrorAndClose: helper for error streaming
-
Fix resource leak: close pipes on StderrPipe/Start failure
-
Add unit tests for new functionality
Full Changelog: adk/backend/local/v0.1.1...adk/backend/local/v0.2.0-alpha.1