v0.14.0
·
78 commits
to develop
since this release
- ci: trigger workflow after auto-format (5dc0023)
- style: auto-format code with Prettier (dc26ab9)
- test: add cross-platform OS-level as-reference clipboard e2e (70aa8df)
- Merge pull request #103 from gregpriday/feature/issue-102-implement-proper-linux-file (60c80ef)
- feat(clipboard): implement proper Linux file reference clipboard support (7d863bf)
- test(e2e): normalize CopyTree version in SARIF golden files (7b6f0c2)
- Merge release/0.14.0 back into develop (a54ce87)
- Merge release/0.14.0 into main (d2c82f5)
- chore(release): bump version to 0.14.0 (aa6a30f)
- fix(deps): update minimatch to 10.2.4 to resolve ReDoS vulnerability (143e0ab)
- fix(stream): escape basePath in JSON streaming output for Windows (909bfd9)
- chore(ci): switch to OIDC trusted publishing via publish.yml (bebd0af)
- Merge pull request #101 from gregpriday/feature/issue-28-add-convenience-filter-flags (9000096)
- Merge pull request #100 from gregpriday/feature/issue-20-add-golden-file-tests-markdown (a21c32c)
- Merge pull request #99 from gregpriday/feature/issue-21-add-performance-budget (7014dc0)
- Merge pull request #98 from gregpriday/feature/issue-64-add-onprogress-callback-copy (d3279f7)
- fix: resolve merge conflict — combine manifest definition with emitProgress for onProgress PR (935d22e)
- Merge pull request #97 from gregpriday/feature/issue-90-surface-included-file-list (8829a3f)
- Merge pull request #96 from gregpriday/feature/issue-87-windows-compat-gaps-case (8be5f31)
- Merge pull request #95 from gregpriday/feature/issue-86-clipboard-file-reference (90043a4)
- feat(cli): add convenience filter flags --ext, --max-depth, --min-size, --max-size (8965720)
- test(e2e): add golden file tests for Markdown formatter variants (25a3142)
- feat(perf): add performance budget enforcement and nightly CI benchmarks (68b8b1a)
- feat(api): add onProgress callback to copy() and scan() APIs (411431e)
- feat(api): add manifest field to CopyResult for lightweight file list (7b77c07)
- fix(pipeline): Windows compat — nocase matching, CRLF normalization, SIGKILL (31e9f63)
- fix(clipboard): fix Windows escaping, macOS/Linux shell injection, and Clipboard.copy typo (69bb9d6)
- Merge pull request #93 from gregpriday/feature/issue-34-add-built-profiling-harness (7553a9d)
- fix: resolve merge conflict — use logger.configure() for profiling mode (eea7fba)
- Merge pull request #94 from gregpriday/feature/issue-30-add-structured-logging (c6f1b15)
- Merge pull request #92 from gregpriday/bugfix/issue-48-test-suite-fails (d337419)
- Merge pull request #91 from gregpriday/feature/issue-85-posix-path-normalization (be9b2f2)
- style: auto-format code with Prettier (d6beb66)
- Merge pull request #89 from gregpriday/bugfix/issue-84-stale-ignore-rule-cache-long (f429448)
- feat(logger): add structured logging with configurable levels and formats (187f5e4)
- feat(profiling): add built-in CPU/heap profiling harness (issue #34) (31c07ba)
- fix(tests): replace Date.now() temp paths with randomUUID() to eliminate race conditions (fbbf68a)
- docs(CLAUDE.md): add path handling rules and testing gotchas (e238def)
- style: auto-format code with Prettier (cd30d69)
- fix(core): normalize file paths to POSIX format across pipeline (87040b3)
- fix(ignoreWalker): remove default rule cache to prevent stale rules in long-running processes (ead9b4d)
- test(core): expand aggressive coverage and harden file processing (eb3dec8)
- chore(deps): regenerate lockfile peer dependency metadata (a4f9c89)
- Merge pull request #83 from gregpriday/dependabot/npm_and_yarn/production-dependencies-1ab58d65d4 (c75f742)
- fix(logger): add debug() method alias for standard logger interface (8738203)
- style: auto-format code with Prettier (4131fbc)
- Merge pull request #81 from gregpriday/dependabot/npm_and_yarn/development-dependencies-00fb75d03b (7d41dc7)
- chore(deps):(deps): bump the production-dependencies group across 1 directory with 14 updates (443c342)
- chore(deps):(deps-dev): bump the development-dependencies group across 1 directory with 3 updates (b3993cb)
- fix(git): correct logger method calls and option references (8496aa6)
- style: auto-format code with Prettier (7d818e6)
- fix: always exclude .git and node_modules directories (35aa983)
- docs: remove profile and transformer documentation (6c2dd1f)
- Fix file exclusion logic in Programmatic API and FileDiscoveryStage (459895c)
- Fix: Suppress programmatic API deprecation warning in CLI (24c68ce)
- fix: correct error class exports in index.js (c3abffe)
- Merge pull request #70: Enhance TypeScript definitions for SDK usage (a811a08)
- Merge pull request #69: feat: add streaming copy API for large outputs (1ef6b15)
- Merge pull request #68: feat(electron): add Electron integration support (c8805bd)
- fix(electron): add copytree dependency to test package (0f49654)
- fix(types): correct type definitions based on Codex review (64dec15)
- style: auto-format code with Prettier (d6e0a14)
- feat: add streaming copy API for large outputs (c3ddafc)
- feat(electron): add Electron integration support (d2de57b)
- Merge pull request #67 from gregpriday/feature/issue-62-remove-singleton-configmanager (cec6b21)
- refactor(config): remove singleton pattern for concurrent operations (04dbeb0)
- style: auto-format code with Prettier (36d2742)
- Merge develop into feature branch (dad0b0c)
- style: auto-format code with Prettier (297ad61)
- Merge pull request #61: chore(deps): bump inquirer from 12.10.0 to 13.0.1 (b212d01)
- Merge pull request #60: chore(deps): bump production-dependencies group (c073773)
- Merge pull request #59: chore(deps): bump eslint from 9.39.0 to 9.39.1 (b12c3a4)
- Merge pull request #58: chore(ci): bump actions/checkout from 5 to 6 (d7e5f45)
- test: fix GitUtils and Pipeline test failures (495a5e1)
- refactor(config): remove singleton pattern for concurrent operations (be913bf)
- chore(deps):(deps): bump inquirer from 12.10.0 to 13.0.1 (bd19b82)
- chore(deps):(deps): bump the production-dependencies group with 2 updates (fc5eba5)
- chore(deps):(deps-dev): bump eslint (17246e5)
- chore(ci): bump actions/checkout from 5 to 6 (1fdc850)
- perf: optimize memory usage in formatters and utilities (c2377b0)
- refactor: remove advanced features and simplify codebase (661ed60)
- style: auto-format code with Prettier (48259ba)
- feat: improve temp file naming with project directory context (d84454d)
- feat: add token optimization and config lazy-loading (64aadf6)
- Merge pull request #57: feat(profiles): Implement folder-level profile configuration system (d879083)
- test: fix folder profile E2E tests to use real filesystem (068ab22)
- style: auto-format code with Prettier (018a302)
- feat(profiles): add folder-level profile configuration system (469e3f1)
- Merge pull request #56: Remove legacy profile system and unnecessary transformers (2d53769)
- fix: address Codex code review feedback on PR #56 (d61a667)
- test: optimize slow tests and skip problematic ones (adad078)
- test: fix failing tests from profile system removal (ac882ba)
- refactor: remove legacy profile system and unnecessary transformers (b0a75f4)
- Merge pull request #53: Validate and document programmatic Node.js API (Phase 1) (8867824)
- fix(linter): suppress eslint no-control-regex warning for XML sanitization (f6d0293)
- Merge pull request #52: chore(deps):(deps): bump the production-dependencies group across 1 directory with 6 updates (add8916)
- fix(linter): suppress eslint no-control-regex warning for XML sanitization (2df952f)
- Merge pull request #51: chore(deps):(deps): bump marked from 16.4.1 to 17.0.0 (d7b169e)
- Merge pull request #49: chore(deps):(deps-dev): bump eslint from 9.39.0 to 9.39.1 in the development-dependencies group (3639da6)
- fix(linter): suppress eslint no-control-regex warning for XML sanitization (63c71bb)
- test(api): fix flaky timing assertion in copy.test.js (8f84648)
- chore(deps):(deps): bump the production-dependencies group across 1 directory with 6 updates (7589fcb)
- chore(deps):(deps-dev): bump eslint (60d081d)
- fix(xml): sanitize invalid control characters in XML output (d0dd432)
- chore(deps):(deps): bump marked from 16.4.1 to 17.0.0 (0a61283)
- fix(discovery): remove unreachable return statement in processEntry (157e447)
- Merge branch 'feature/issue-23-secret-detection' into develop (4528020)
- test(secrets): update SecretsGuardStage tests for multi-engine architecture (389ae88)
- feat(discovery): implement parallel file discovery with bounded concurrency (#46) (5868be8)
- style: auto-format code with Prettier (9293115)
- feat(api): add programmatic Node.js API for library usage (8de4041)
- feat(secrets): add built-in secret detection engine with comprehensive tests (3853a26)
- docs: comprehensive documentation overhaul for accuracy and consistency (#44) (690139b)
- Merge branch 'fix/ci-github-issues' into develop (f4bb56c)
- fix(ci): fix E2E streaming tests and ensure cross-platform determinism (b728f5d)
- style: auto-format code with Prettier (e582e6e)
- Merge branch 'fix/comprehensive-test-improvements' into develop (2ca98a4)
- test: fix critical test issues and improve ESM/CommonJS compatibility (146416e)
- Fix windows golden tests (#42) (dc67f5e)
- fix: apply code formatting after merge (7c85597)
- Update package-lock.json after npm install (4171c23)
- Merge remote-tracking branch 'origin/develop' into develop (7c54c6d)
- fix(tests): resolve cross-platform JSON escape sequence normalization (661bfa5)
- fix(tests): improve Windows path normalization in E2E tests (5b9936b)
- chore(ci): temporarily disable 80% coverage threshold (fcecf15)
- fix(ci): add .gitattributes to enforce LF line endings (a57ce0f)
- fix(ci): resolve CI failures across platforms (e38fb0f)
- Merge pull request #40 from gregpriday/feature/issue-29-resilient-fs-retry (3055845)
- Merge pull request #39 from gregpriday/feature/issue-26-remove-install-command (e6107a4)
- fix(tests): resolve cross-platform byte count differences in E2E tests (f60c68c)
- docs(CLAUDE.md): clarify when to use format command (bcea75f)
- fix(tests): resolve cross-platform byte count differences in E2E tests (452b9bd)
- docs(CLAUDE.md): clarify when to use format command (497e60a)
- test: fix integration and unit test failures (db1ae77)
- fix(schema): add fs config to schema and skip flaky tests (e06f098)
- fix(ci): resolve CI test failures and lint issues (a887de1)
- style: auto-format code with Prettier (93625ab)
- feat(fs): add resilient filesystem error handling with retry logic (7e88c2c)
- style: auto-format code with Prettier (5f4eb16)
- feat: remove deprecated install:copytree command (5ea49c4)
- chore(deps): add babel-plugin-transform-import-meta dependency (c5e4a46)
- fix(tests): resolve ESM compatibility issues in copy command tests (be69baf)
- test(e2e): strip UI status messages from golden file outputs (1982fb3)
- Merge pull request #38 from gregpriday/feature/issue-31-ndjson-sarif-formatters (fe4ffa7)
- test: fix BaseTransformer test and update tree golden files (01b035a)
- Merge branch 'develop' into feature/issue-31-ndjson-sarif-formatters (452cfe2)
- fix(formatters): resolve SARIF bugs and add file extension auto-detection (235cd4c)
- chore(deps): resolve npm deprecation warnings and fix test suite (54bf8e4)
- chore: regenerate package-lock.json and clean up CI workflows (6b153a8)
- chore: add package-lock.json and update CI to use npm ci (c5ea69a)
- ci: remove npm cache from GitHub Actions workflows (7a81127)
- fix(tests): resolve ESM compatibility and test failures (e129daa)
- fix(formatters): resolve streaming, version, and extension issues (dfa4e85)
- feat(formatters): add NDJSON and SARIF output formats (7fd0bf6)
- style: apply prettier formatting to source and test files (cc53e27)
- Merge pull request #35 from gregpriday/refactor/issue-27-purge-ai-remnants (c54fbb1)
- Merge pull request #37 from gregpriday/feature/issue-19-e2e-golden-tests (53becc9)
- Merge pull request #36 from gregpriday/feature/issue-18-fix-flaky-tests (aed8f3e)
- test: add comprehensive E2E golden file tests for CLI output formats (1a5eb5b)
- test: fix intermittent test failures from filesystem race conditions (3bb5b1a)
- refactor: remove all AI feature remnants from codebase and docs (3fcfd6c)
- docs: remove .github README that was shadowing main project README (d592784)
- Merge pull request #9 from gregpriday/feature/issue-8-remove-env-support (0ee4c80)
- test: remove deprecated environment variable tests (31ee191)
- chore(ci): remove test coverage requirements (548c8f4)
- chore(deps):(deps): bump chalk from 4.1.2 to 5.6.2 (#17) (cd627c3)
- chore(deps):(deps): bump ora from 5.4.1 to 9.0.0 (#16) (5b1c1ed)
- chore(deps):(deps-dev): bump @types/node from 22.18.13 to 24.9.2 (#15) (ab224ea)
- chore(deps):(deps): bump ink from 4.4.1 to 6.4.0 (#14) (40e754b)
- chore(deps):(deps): bump react from 18.3.1 to 19.2.0 (#13) (f5fda7a)
- chore(ci): bump actions/setup-node from 4 to 6 (#12) (497a058)
- chore(ci): bump codecov/codecov-action from 4 to 5 (#11) (b750462)
- chore(ci): bump actions/checkout from 4 to 5 (#10) (c271594)
- fix(ci): handle missing e2e tests gracefully (6816344)
- fix(config): resolve ESLint and Prettier formatting conflicts (77f2ee5)
- style: fix ESLint indentation errors across codebase (4b25922)
- fix(ci): replace npm ci with npm install for lock-file-free workflow (2b694e2)
- fix(ci): remove npm cache requirement from GitHub Actions workflow (d87ec92)
- style: remove extra blank line in ConfigManager (4979fe6)
- Merge remote-tracking branch 'origin/develop' into feature/issue-8-remove-env-support (bdfa705)
- refactor: remove .env file and environment variable support (ab18b9d)
- chore: add format command and fix logger mock formatting (32ce327)
- style: format console.log statements in pipeline test (560e0f3)
- refactor: simplify globalExcludedDirectories to only VCS folders (704240e)
- fix: apply globalExcludedDirectories during file discovery (cd60a83)
- ci: add GitHub workflows and automated code formatting (3a04787)
- Merge pull request #6 from gregpriday/feature/secret-detection (40f0766)
- Merge pull request #7 from gregpriday/feature/nested-copytreeignore (0e6608b)
- test: add unit tests for ignoreWalker utility (7b48186)
- fix: correct SecretsGuardStage pipeline order and improve robustness (2a30a44)
- feat: add automatic secret detection and redaction (95c38f5)
- fix: resolve version skew, config issues, and UX inconsistencies (ac28dc9)
- feat: implement layered .copytreeignore support with gitignore semantics (82eee0d)
- chore: untrack and ignore package-lock.json (34a36ae)
- Merge pull request #5 from gregpriday/refactor/dead-code-audit (c49e25c)
- Merge pull request #4 from gregpriday/docs/fix-default-format-xml (264f9af)
- chore: remove dead code from commands and utilities (21c6a56)
- docs: correct default output format to xml in documentation (7c1c2ec)
- feat: add slash command for automated Git worktree creation (e4584f2)
- docs: add Git Flow branch naming conventions to worktrees section (457f1e7)
- feat: improve .copytreeinclude pattern handling and markdown image processing (a77ca7f)
- Merge branch 'main' into develop (f349f6a)
- Merge branch 'main' into develop (02f5f5a)
- Merge release/0.13.0 into develop (7b6fc4b)
- fix: resolve remaining ESLint indentation issues (1ddaa09)
- fix: update dependencies and resolve compatibility issues (afcd31e)
What's Changed
- docs: correct default output format to xml in documentation by @gregpriday in #4
- chore: remove dead code from commands and utilities by @gregpriday in #5
- Feature/nested copytreeignore by @gregpriday in #7
- Feature/secret detection by @gregpriday in #6
- chore(ci): bump actions/checkout from 4 to 5 by @dependabot[bot] in #10
- chore(ci): bump codecov/codecov-action from 4 to 5 by @dependabot[bot] in #11
- chore(ci): bump actions/setup-node from 4 to 6 by @dependabot[bot] in #12
- chore(deps):(deps): bump react from 18.3.1 to 19.2.0 by @dependabot[bot] in #13
- chore(deps):(deps): bump ink from 4.4.1 to 6.4.0 by @dependabot[bot] in #14
- chore(deps):(deps-dev): bump @types/node from 22.18.13 to 24.9.2 by @dependabot[bot] in #15
- chore(deps):(deps): bump ora from 5.4.1 to 9.0.0 by @dependabot[bot] in #16
- chore(deps):(deps): bump chalk from 4.1.2 to 5.6.2 by @dependabot[bot] in #17
- Refactor configuration to remove .env support by @gregpriday in #9
- Fix intermittent test failures from filesystem race conditions by @gregpriday in #36
- Add end-to-end golden file tests for all output formats by @gregpriday in #37
- Remove AI feature remnants from code and documentation by @gregpriday in #35
- feat(formatters): add NDJSON and SARIF output formats by @gregpriday in #38
- Remove deprecated install:copytree command by @gregpriday in #39
- Add resilient filesystem error handling with retry logic by @gregpriday in #40
- Fix windows golden tests by @gregpriday in #42
- docs: comprehensive documentation overhaul for accuracy and consistency by @gregpriday in #44
- feat(discovery): implement parallel file discovery with bounded concurrency by @gregpriday in #46
- Add built-in secret detection engine with comprehensive patterns by @gregpriday in #47
- chore(deps):(deps-dev): bump eslint from 9.39.0 to 9.39.1 in the development-dependencies group by @dependabot[bot] in #49
- chore(deps):(deps): bump marked from 16.4.1 to 17.0.0 by @dependabot[bot] in #51
- chore(deps):(deps): bump the production-dependencies group across 1 directory with 6 updates by @dependabot[bot] in #52
- Validate and document programmatic Node.js API (Phase 1) by @gregpriday in #53
- Remove legacy profile system and unnecessary transformers by @gregpriday in #56
- feat(profiles): Implement folder-level profile configuration system by @gregpriday in #57
- chore(ci): bump actions/checkout from 5 to 6 by @dependabot[bot] in #58
- chore(deps):(deps-dev): bump eslint from 9.39.0 to 9.39.1 in the development-dependencies group by @dependabot[bot] in #59
- chore(deps):(deps): bump the production-dependencies group with 2 updates by @dependabot[bot] in #60
- chore(deps):(deps): bump inquirer from 12.10.0 to 13.0.1 by @dependabot[bot] in #61
- Remove singleton pattern from ConfigManager for concurrent operations by @gregpriday in #67
- feat(electron): add Electron integration support by @gregpriday in #68
- feat: add streaming copy API for large outputs by @gregpriday in #69
- Enhance TypeScript definitions for SDK usage by @gregpriday in #70
- chore(deps):(deps-dev): bump the development-dependencies group across 1 directory with 3 updates by @dependabot[bot] in #81
- chore(deps):(deps): bump the production-dependencies group across 1 directory with 14 updates by @dependabot[bot] in #83
- fix(ignoreWalker): remove default rule cache to prevent stale rules in long-running processes by @gregpriday in #89
- fix(core): POSIX path normalization — fix filtering, git flags, and tree output on Windows by @gregpriday in #91
- fix(tests): eliminate test race conditions by replacing Date.now() temp paths with randomUUID() by @gregpriday in #92
- feat(logger): add structured logging with configurable levels and formats by @gregpriday in #94
- feat(profiling): add built-in CPU/heap profiling harness by @gregpriday in #93
- fix(clipboard): fix Windows escaping, macOS/Linux shell injection, and Clipboard.copy typo by @gregpriday in #95
- fix(pipeline): Windows compat — nocase matching, CRLF normalization, SIGKILL by @gregpriday in #96
- feat(api): add manifest field to CopyResult for lightweight file list by @gregpriday in #97
- feat(api): add onProgress callback to copy() and scan() APIs by @gregpriday in #98
- feat(perf): add performance budget enforcement and nightly CI benchmarks by @gregpriday in #99
- test(e2e): add golden file tests for Markdown formatter variants by @gregpriday in #100
- feat(cli): add convenience filter flags --ext, --max-depth, --min-size, --max-size by @gregpriday in #101
- feat(clipboard): implement proper Linux file reference clipboard support by @gregpriday in #103
New Contributors
- @gregpriday made their first contribution in #4
- @dependabot[bot] made their first contribution in #10
Full Changelog: v0.13.1...v0.14.0