feat(cli): list migrations from registered apps - #649
Open
oxura wants to merge 4 commits into
Open
Conversation
Codecov Report❌ Patch coverage is
Flags with carried forward coverage won't be shown. Click here to find out more.
... and 4 files with indirect coverage changes 🚀 New features to boost your workflow:
|
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.
Related issue or discussion
Closes #624
Description
cot migration listcurrently scanssrc/migrations, which means it has no way to see migrations that come from registered dependency apps. I changed the normal Cot-project path to ask the application for the list instead.There are two parts to this:
migration listtask that registers the apps and prints every migration they expose. It stops before database setup, so listing does not need a database connection.cot-clidetects a runnable Cot package and delegates to that task through Cargo. The old source scan remains as a fallback for virtual workspace roots and non-runnable packages.I also added a recursion guard for the Cot workspace itself. Without it, running the command from
cot-clicould delegate back into the same binary.As a smoke test, I generated a fresh project and ran
cot migration listagainst it. The output included the built-incotandcot_sessionmigrations, neither of which exists in the project source tree.Type of change
Checklist
just test-all)just clippy)cargo fmt)Local checks: the full
cotpackage passed (1,345 tests), thecot-clilibrary and all migration-list unit/snapshot tests passed, and focused clippy passed with warnings denied. The fullcot-cliintegration run had five logging snapshot mismatches in unrelatednew/migration makecases because this terminal emitted raw timestamps instead of the snapshots' filteredTIMESTAMPmarker.