-
Notifications
You must be signed in to change notification settings - Fork 14
vcspull add: Usability overhaul and tests
#481
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
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
why: Explicit name+URL args allowed inconsistent workspace inference and bypassed confirmations, losing repos under './'. what: - drop the name positional, keeping path input as the single required argument - reuse optional --url/--name overrides while sharing the path-based workflow - ensure workspace defaults to the checkout parent unless --workspace overrides
why: Removing the name positional changes CLI prompts and URLs; tests need to validate --url overrides and avoid brittle line-number churn. what: - add fixtures covering explicit URL overrides while continuing merge toggles - scrub add.py line numbers from captured logs before snapshotting - refresh syrupy snapshots to assert the new log text
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #481 +/- ##
==========================================
+ Coverage 78.82% 79.10% +0.27%
==========================================
Files 13 13
Lines 1738 1737 -1
Branches 369 369
==========================================
+ Hits 1370 1374 +4
+ Misses 232 229 -3
+ Partials 136 134 -2 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
why: CLI accepted name+URL combinations that bypassed the path-first flow, leaving repos under './' and skipping confirmations. what: - replace the positional name/url pair with a single repo_path argument plus optional --url/--name overrides - default workspace detection to the directory parent and contract saved config paths with contract_user_home
why: New CLI behavior needs regression coverage for relative paths, workspace overrides, tilde log output, and legacy positional rejection. what: - extend path fixtures to toggle relative inputs, workspace overrides, and dry-run tilde assertions - normalize logs for snapshots while preserving contracted config paths when required - add unit checks for dry-run logging and parser rejection of extra positional args
why: Ruff refactors change discover.py line numbers, causing snapshot churn and breaking pytest whenever logging shifts. what: - normalize captured logs to replace discover.py:<digits> with a stable placeholder before snapshot assertions - refresh the affected Syrupy snapshot to match the normalized format
why: The name+URL syntax lived in released notes already; we need to log the new positional path requirement in the unreleased section and refresh user docs. what: - describe the path-first workflow under the unreleased changelog heading - rewrite the add command guide and README bullets around path detection, --url, and --name overrides Also, Document vcspull add path-first work why: Release notes should reflect the path-only CLI change and the log normalization fixes shipped in PR #481. what: - attribute the path-first improvements to #481 and note the tilde-config logging tweak - call out the snapshot stabilization work under a Development heading
This was referenced Nov 2, 2025
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.
Changes
Improvements
vcspull add, automatically deriving thename, remote, and workspace parent while offering
--urland--nameoverrides
~/.vcspull.yaml) so dry-run previewsstay readable even when the config lives under the home directory.
Development
placeholders, preventing future refactors from breaking Syrupy expectations
Test plan