Prepare rustuse-cli 0.2.0-beta.1 release#1
Draft
CloudBranch wants to merge 9 commits into
Draft
Conversation
ci: update GitHub Actions for Node 24 runners * Upgrade checkout, upload-artifact, and download-artifact actions to Node 24-compatible versions * Replace floating latest runner labels with explicit OS versions * Pin macOS CI and release jobs to avoid macos-latest migration warnings * Clean release packaging directories before creating artifacts
Refactor CLI command architecture and reporting - Move RustUse domain logic out of src/commands/dev and into src/rustuse - Add new command modules for catalog, check, ci, facade, report, and scan workflows - Wire top-level report routing for auto, root, facade, catalog, and CI report kinds - Add facade report support through rustuse facade report - Make root reports write rustuse-root-report.md - Keep facade reports writing rustuse-report.md - Compact root manifest reporting with top manifest offenders instead of full warning dumps - Remove duplicated root standards policy in favor of facade/shared standards analysis - Update CLI README to document the current command surface and report workflow - Add CodeQL and Trivy workflow files plus standard repository ignore/license files - Update existing adoption command modules to align with the new CLI structure - Verified cargo fmt, cargo build, and local install; build currently passes with warnings
|
You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool. What Enabling Code Scanning Means:
For more information about GitHub Code Scanning, check out the documentation. |
Add Ferris greeting command - Add rustuse ferris command - Add crab emoji alias for rustuse 🦀 - Route the command through the standard command module path - Verify both ferris and 🦀 invocations print the greeting
Makes subcommands optional so running `rustuse` opens a guided interactive menu, while still failing fast in non-interactive contexts. The command runner now routes through a shared dispatcher, and new `interaction` helpers wrap common prompt patterns via `dialoguer`. Also refactors cargo-subcommand argument normalization into a reusable/tested helper, adds coverage for cargo invocation shapes, and cleans up stale commented/dead code in facade/report and GitHub model modules.
This replaces placeholder behavior with real command wiring for interactive, scan, and report paths, including shared facade auto-detection and `report --stdout` support via a common report destination type. The catalog was refactored to use generated in-memory indexed data (no filesystem discovery), with lookup/search APIs updated accordingly. It also removes unused adapter/config surface and replaces the monolithic CLI help test with focused integration test files plus shared test helpers.
Replaced several placeholders with real command wiring: `catalog info/search` now query the catalog backend, and `facade inspect/check/report` now run actual facade logic (including `--deny-warnings` failure behavior). Updated interactive root behavior so `--yes` without a subcommand runs a safe default `doctor .` flow, while non-interactive mode still requires an explicit command. Also standardized staged output markers for not-yet-wired CI/catalog paths, tightened utils module visibility to `pub(crate)`, removed the unused `yaml_serde` dependency, and expanded integration coverage across catalog, CI, docs, facade, ferris, list, and root `--yes` behavior.
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.
Summary
Prepares the
rustuse-cli0.2.0-beta.1release by refactoring the CLI command architecture, moving RustUse maintainer logic out of command modules, and wiring current report workflows for root and facade repositories.Affected set or crate
rustuse-cliType of change
Changes
src/commands/devand intosrc/rustuse.rustuse facade report.rustuse-root-report.md.rustuse-report.md.Validation
Locally verified:
cargo fmt cargo build cargo install --path . --forceThe CLI builds and installs successfully. Current build output still includes warnings for unused planned/future command surfaces.
Documentation and release notes
Dependency changes
No dependency changes intended beyond the release/workflow updates already included on this branch.
Breaking changes
No user-facing breaking change intended for the adoption command surface.
The internal maintainer/development module layout changed significantly. Existing unstable
devinternals should be treated as implementation details for this beta.Additional review notes
This PR is intentionally broad because it prepares the CLI structure for the
0.2.0-beta.1release. Follow-up work should focus on smaller feature branches, especially:--outputsupport for reports--verbosereport modesinspectandchecksync --dry-run