-
Notifications
You must be signed in to change notification settings - Fork 55
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
refactor: seperate solving from installing #1030
Conversation
This is now passing CI and ready for a review! @wolfv ! |
|
||
// use the configured style | ||
if let Some(template) = &self.progress_template { | ||
progress_bar.set_style(template.clone()); | ||
} | ||
|
||
// progress_bar.enable_steady_tick(Duration::from_millis(100)); |
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.
keep or remove?
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.
// progress_bar.enable_steady_tick(Duration::from_millis(100)); |
Also the bar from download & extract doesn't "go away" (but that's also a super minor thing). |
I think I fixed that the progress bars are now removed. The indentation is correct because there normally (before it finishes) is another progress bar above it. See the screenshot here. |
This PR splits solving the dependencies from the installation of the environments. This can make
--render-only
much faster because no installation is needed.Determining the
run_exports
is still part of solving. The packages are still downloaded and extracted to get the run_exports (that's an improvement for later). ThePackageCache
is now shared which ensures that validation/download/extract is not duplicated (which was previously the case).The gateway is also shared between all runs to reduce overhead.
I also removed storing a number of CLI arguments in
Configuration
. These didnt make sense to me to store in the configuration and instead could better be passed as arguments to the functions that require them.However, currently the download progress of packages is lost. I wanna fix this before we merge.