-
Notifications
You must be signed in to change notification settings - Fork 8
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
Recursive download flag/general improvements in handling downloads #403
base: master
Are you sure you want to change the base?
Conversation
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.
I reviewed this commit by commit so the comments might be a bit irritating since you've switched to another approach in a later commit.
Nitpick regarding the "Move XYZ into a own function" commit messages: I'd use "dedicated function" instead.
TODO: I still have to review the last commit.
0438b72
to
aaa7fd1
Compare
I found the show_message a bit misleading since indicatif has the same method name for setting a real message. The method on the wrapper was just showing the progress. https://docs.rs/indicatif/0.17.8/indicatif/struct.ProgressBar.html#method.set_message Signed-off-by: Nico Steinle <nico.steinle@eviden.com>
Refactor source download logic into a separate function for better code organization. Signed-off-by: Nico Steinle <nico.steinle@eviden.com>
This refactor improves the maintainability and clarity of the download function. Signed-off-by: Nico Steinle <nico.steinle@eviden.com>
- Track and display download results in an ASCII table - Make `source already exists` not an error, just a result type - Introduced a `--recursive` flag to the `download` subcommand to enable downloading of both the main packages and all their dependencies. - Added `--image` and `--env` options to specify the Docker image and environment variables, ensuring the correct dependency tree is resolved based on the build environment. Took this approach from the tree-of command. - Used a `HashSet` to avoid duplicate processing of packages and their dependencies. - Only check sources where the download was successful, skipped or forced. Use the `verify_impl` to verify the sources. Calling `super::verify` wasn't ideal since it could break on different CLI arguments. This update improves clarity and tracking of the download outcomes and allows for more comprehensive package management by ensuring that all necessary dependencies are downloaded alongside the requested packages. Signed-off-by: Nico Steinle <nico.steinle@eviden.com>
No description provided.