-
Notifications
You must be signed in to change notification settings - Fork 0
Create detection logic package for development dependencies #122
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
Conversation
Co-authored-by: josecelano <58816+josecelano@users.noreply.github.com>
…tion Co-authored-by: josecelano <58816+josecelano@users.noreply.github.com>
Co-authored-by: josecelano <58816+josecelano@users.noreply.github.com>
josecelano
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@copilot the linting workflow has failed:
2025-11-03T21:24:11.172995Z INFO clippy: Running Rust Clippy linter...
error: variables can be used directly in the `format!` string
--> packages/dependency-installer/examples/check_dependencies.rs:39:13
|
39 | eprintln!("Error checking dependencies: {}", e);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args
= note: `-D clippy::uninlined-format-args` implied by `-D clippy::pedantic`
= help: to override `-D clippy::pedantic` add `#[allow(clippy::uninlined_format_args)]`
help: change this to
|
39 - eprintln!("Error checking dependencies: {}", e);
39 + eprintln!("Error checking dependencies: {e}");
|
error: could not compile `torrust-dependency-installer` (example "check_dependencies") due to 1 previous error
2025-11-03T21:24:41.967973Z ERROR clippy: Clippy linting failed. Please fix the issues above.
Co-authored-by: josecelano <58816+josecelano@users.noreply.github.com>
- Updated all 22 test names from test_* to it_should_* format - Aligns with project testing conventions in docs/contributing/testing/unit-testing.md - All tests pass (24 total: 22 unit + 2 doc tests) - All linters pass
Test Naming Convention UpdateI've made a small refinement to align the tests with our project conventions: Change: Renamed all 22 test functions from Examples:
Verification:
The implementation is ready to merge once CI workflows complete. |
josecelano
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ACK eaa0acc
Create Detection Logic Package
Implementing detection logic for development dependencies (cargo-machete, OpenTofu, Ansible, LXD) following the linting package pattern.
Implementation Plan
packages/dependency-installer/src/detector/mod.rssrc/errors.rssrc/command.rssrc/detector/cargo_machete.rssrc/detector/opentofu.rssrc/detector/ansible.rssrc/detector/lxd.rssrc/manager.rssrc/lib.rswhichcommand usageSummary
Successfully created the
packages/dependency-installerpackage with:name()andis_installed()methodscheck_all()andget_detector()methodscommand_exists,execute_command)All linters pass, all tests pass, workspace builds successfully, and the package follows the linting package pattern.
Security Summary
No security vulnerabilities identified. The package performs read-only operations:
whichcommand to check for tool existenceNext Steps
This completes Phase 1 of Issue #114. The next phases will add:
Original prompt
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.