Skip to content

Commit e713dad

Browse files
committed
docs(CHANGES) Add feature, bug fix, and test entries for #512
why: The breaking changes entry for libvcs v0.39.0 was already present, but the user-facing features, bug fixes, and test coverage notes were missing from the unreleased changelog section. what: - Add Features section: errored sync detection, exit-on-error for unmatched patterns, improved summary output - Add Bug fixes section: phantom "None" message, duplicate log lines, summary emission for all-unmatched runs - Add Tests section: errored sync, SVN/HG, cross-VCS, rev/branch mismatch, unmatched patterns, write_config refactor
1 parent 3306918 commit e713dad

1 file changed

Lines changed: 47 additions & 0 deletions

File tree

CHANGES

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,53 @@ _Notes on upcoming releases will be added here_
3939

4040
Adds `SyncResult` and various other bug fixes to syncing.
4141

42+
### Features
43+
44+
#### cli(sync): Detect and report errored git syncs (#512)
45+
46+
`vcspull sync` now detects git fetch/pull failures via libvcs's `SyncResult`
47+
and reports them as errors instead of silently succeeding. The sync summary
48+
shows errored repositories alongside successful and failed counts.
49+
50+
- Only pass `set_remotes=True` for git repositories (not SVN/HG)
51+
- Include repository identity in sync error messages
52+
53+
#### cli(sync): Exit non-zero on unmatched patterns with `--exit-on-error` (#512)
54+
55+
When `--exit-on-error` is set and sync patterns match no configured
56+
repositories, `vcspull sync` now exits with a non-zero status code.
57+
Unmatched patterns are tracked separately from sync failures, giving
58+
automation scripts a clear signal about config/pattern problems.
59+
60+
#### cli(sync): Improved sync summary output (#512)
61+
62+
- Track and display unmatched patterns separately from repo totals
63+
- Omit "0 previewed" from non-dry-run summaries
64+
- Suppress unmatched-pattern lines in `--summary-only` mode
65+
- Color the total count in summary output
66+
67+
### Bug fixes
68+
69+
- Fix path-based sync patterns showing `"None"` instead of the actual search
70+
term (#512)
71+
72+
- Downgrade duplicate user-facing unmatched-pattern log message to debug level,
73+
so each pattern is reported only once (#512)
74+
75+
- Emit sync summary even when all patterns are unmatched (#512)
76+
77+
### Tests
78+
79+
- Add errored sync tests: fetch failure, exit-on-error, mixed good/errored,
80+
summary lines, all-fail, and cross-VCS scenarios (#512)
81+
- Add SVN and HG errored sync tests using libvcs factory fixtures (#512)
82+
- Add rev/branch mismatch and ambiguous branch/directory name regression
83+
tests (#512)
84+
- Add unmatched pattern count, duplicate log, and path-pattern "None" message
85+
tests (#512)
86+
- Refactor `test_cli.py` to use `write_config` helper and assert exit codes
87+
consistently (#512)
88+
4289
## vcspull v1.51.0 (2026-02-01)
4390

4491
### Tests

0 commit comments

Comments
 (0)