Merged
Conversation
- Cargo processor (priority 22): cargo build/check/doc/update/bench with warning grouping by type and full error preservation - Go processor (priority 23): go build/vet/mod/generate/install with download collapsing and error grouping - SSH processor (priority 43): non-interactive ssh and scp with progress compression, narrowed hook exclusion to interactive-only - JQ/YQ processor (priority 44): JSON structure compression via compress_json_value, YAML heuristic summarization - Engine chaining: chain_to attribute on Processor base class, _by_name lookup dict, max depth 1 with self-reference guard
- E741: rename ambiguous variable l -> line - SIM114: combine if branches with same body using logical or - PERF402: use list() instead of append loop - F841: remove unused variables (array_start_idx, current_file) - ERA001: remove commented-out code - B007: remove unused loop variable - PLR5501: use elif instead of else+if - PERF203: extract try/except out of loop - I001: sort imports alphabetically - F541: remove extraneous f-prefix on strings without placeholders - E501: wrap long lines
feat: add cargo, go, ssh, jq/yq processors and multi-processor chaining
…pport - Per-processor enable/disable via `disabled_processors` config/env var - New processors: python_install (pip/poetry/uv), cargo_clippy (Rust clippy), maven_gradle (mvn/gradle), structured_log (JSON lines/stern/kubetail) - Multi-processor chaining: chain_to supports lists with cycle detection and max_chain_depth config; cargo_clippy chains to lint processor - Fix dead patterns and edge cases in build_output and lint_output
…new-ecosystems feat: add per-processor disable, 4 new processors, and multi-chain su…
- Fix missing @ separator in Pipfile.lock package formatting - Fix overly permissive tree summary regex in file_listing - Fix extra newlines in generic truncation message - Deduplicate poetry.lock/Cargo.lock parsers into _compress_toml_lock - Extract shared Rust compiler regex patterns to utils.py
fix: bugs and code deduplication in processors
chore: bump version to 2.2.1
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Changelog — token-saver v2.2.1
New Processors
cargo build/check/doc/update/benchwith warning grouping by type and full error preservationgo build/vet/mod/generate/installwith download collapsing and error groupingpip install,poetry install,uv pip installwith dependency resolution compressionmvnandgradlebuild output compression with download/compile collapsingsshandscpwith progress compression; narrowed hook exclusion to interactive-onlycompress_json_value, YAML heuristic summarizationFeatures
disabled_processorsconfig/env var to selectively disable processorschain_toattribute supports lists with cycle detection and configurablemax_chain_depthBug Fixes
@separator in Pipfile.lock package formatting (pytest3.11.0->pytest@3.11.0)file_listing(matched "director" prefix instead of "directories"/"directory")build_outputandlint_outputprocessorsRefactoring
poetry.lock/Cargo.lockparsers into shared_compress_toml_lockmethodWARNING_START_RE,ERROR_START_RE, etc.) toutils.pyStats