Releases: devinjeon/FastPathPicker
Releases · devinjeon/FastPathPicker
v1.0.0
Changelog
- 330c565 Update Homebrew tap command in README to include repo URL
- 4aaa3f8 Update README with accurate feature counts and keybindings
- 6e1495d Replace personal email with GitHub noreply in goreleaser
- 8bf1a33 Normalize personal paths in e2e test snapshots
- b29d8e3 Pin Rust toolchain to 1.94.1 in release workflow
- bdb8ef9 Bump version to 1.0.0
- 0786312 Upgrade to Rust edition 2024
- ff48cf6 Add scrollbar and validate_file_exists edge case tests
- 387be50 Add editor integration tests for subl, sublime, vi, joe, mvim
- 982d55f Restrict get_repo_path visibility to pub(crate)
- 06e0b2c Avoid cloning lines in keep-open loop by taking ownership
- ae77492 Return Cow from raw_truncated to avoid unnecessary cloning
- 3dde57e Add get_username and get_groupname success path tests
- ea2b802 Replace mem::zeroed with MaybeUninit for passwd and group structs
- 2daf49d Fix dup2 failure to bail instead of continuing with broken stdin
- 5933129 Revert "Fix vim/mvim missing line number in fallback editor path"
- 878501a Share DIR_LOCK across unit test modules for parallel safety
- b443914 Fix xmode G/J key test assertions to verify actual selection
- 53f690b Extract compute_begin_height and fix trivially-true test
- e6f7cca Add command mode sidebar border_x recalculation to match Python
- fe4b526 Fix description pane x-offset to match Python (border_x+2)
- 86c1291 Fix vim/mvim missing line number in fallback editor path
- 60f398d Remove dead logger clear function
- 4f3be32 Reduce allocations in controller and add description overflow guard
- ad408d0 Remove Vec allocation from visible_char_count and add raw ANSI helper functions
- 83bc3bd Replace manual calendar calculation with localtime_r in format_system_time_local
- a44a87a Add comprehensive editor, shell, and boundary value tests
- a154f88 Narrow dead_code allow scope and document shell escape intent
- f1d2b68 Fix TOCTOU race condition in state file operations
- 4654fd3 Split render_content_line into focused helpers and remove dead code
- 58707c1 Fix ANSI color code preservation in raw_take_back and reduce parsing duplication
- 1e70e7d test: add shared ENV_LOCK and missing unit tests
- 2b9565f fix: add visible_char_count, fix ANSI color bleed, add terminal size guard
- 552d481 fix: use reentrant getpwuid_r/getgrgid_r and fix timestamp overflow
- 1d0cb2b refactor: replace manual JSON with serde_json and consolidate logger output
- 83962ba Rename project from "Fast PathPicker 2" to "Fast PathPicker" and update repo URLs
- 32231f8 chore: add bench_results.json to gitignore
- b7e7400 chore: rewrite bench_e2e.sh with hyperfine and statistical rigor
- 8cbcf7e docs: rewrite benchmark section in README with chart and summary table
- 8e31aa5 docs: add benchmark documentation with charts
- c0d356b test: add missing fixture file for tilde extension test
- f460985 test: add e2e test for Ctrl-C not executing stale scripts
- 40263e0 test: add missing tests for state, input, logger, and controller
- 8a2859c perf: optimize quick_select get_label to O(1) byte indexing
- dba9768 refactor: add height field to Chrome for full viewport access
- d6f40eb refactor: extract RenderContext, fix X-mode column, add saturating_sub guards
- 3e034f7 refactor: cache raw_chars in FormattedText to avoid repeated allocations
- 41210e1 fix: check dup2 return value and prevent stale script execution on Ctrl-C
- b3bf274 fix: remove redundant condition and unnecessary allocation in parse.rs
- 7fadef3 fix: correct MaybeUninit usage and add negative epoch guard in line.rs
- 2596fbf fix: prevent JSON injection in logger by escaping special characters
- 525e730 fix: correct clean_state return value to count actually deleted files
- 443ec63 Rename project title from "Fast PathPicker 2" to "Fast PathPicker" in README
- 1651afd perf: improve rendering with dirty line tracking and buffered writes
- ceb8d6f docs: add tmux integration guide, Homebrew tap, and release infrastructure
- e64b132 chore: rename project from fpp to fpp2 (Fast PathPicker 2)
- 12911fc refactor: reorganize e2e tests into themed suites
- 695dd92 refactor: extract inline unit tests into separate files
- 767321f feat: add UI snapshot tests and refactor render for testability
- b00c959 test: add unit tests matching original PathPicker test suites
- 0f42f26 fix: piped stdin handling and editor env var filtering
- d890b09 test: add e2e test suites for parsing, compatibility, and edge cases
- 357d25a feat: add e2e test framework and headless runner
- a649b81 docs: rewrite README with architecture overview and compatibility coverage
- 9b2a662 fix: match Python UI layout for sidebar, footer, labels, and overlays
- b455392 feat: implement command mode UI and usage strings
- 2f2ec7f feat: add selection persistence, custom keybindings, and clean mode
- f067f9a feat: add ANSI preservation, logger, and Python PathPicker compatibility
- cba3108 refactor: remove dead code and simplify FormattedText
- 69d510f test: add controller unit tests for navigation and selection
- 4b090e4 feat: improve thread safety, ANSI color support, and keep-open mode
- 967a0b8 test: add parsing validation tests and fixture files
- 4342f77 fix: resolve shell injection, case-preserving execute-keys, and dead code cleanup
- fa344e6 feat: initial Rust implementation of PathPicker (fpp)
- c2a92f2 Initial commit