-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
external_repo doesn't respect parent cache and progress bar #3611
Comments
lack of tests cc @Suor |
I guess it is lack of tests before the refactoring as well. Then refactor broke it without us noticing. Will add some. |
Ok, update: we do respect link type by chance, because of |
This was intentional. This allows sharing external repo caches outside of repo, which might not even exist, like in |
Also, I see polluting current repo cache is bad too. |
The thing is external repos don't have parent, they are completely independent. |
Looked at how import is implemented, looks like it downloads directly to targets repo cache, via the hack: if hasattr(repo, "cache"):
repo.cache.local.cache_dir = self.repo.cache.local.cache_dir Then Since we call out = self.fetch()
to.info = copy.copy(out.info)
to.checkout() to out = self.fetch()
out.path_info = to.path_info
out.checkout() This was part of making So I suggest:
We will still use caches in On progress bar, not sure what you mean. Does cache have some associated pbar with it? |
Somewhere during the external_repo refactor we've lost the logic that was using parent's cache dir to store cache. Currently, we are using tempdir (yes, in /tmp) to pull data too, which is really bad, as it might not have enough space available. Plus, we don't respect link type, trying to always copy stuff, which is also really bad. And on top of that we've lost our progress bar for when we are checking out the data after downloading during
import/get
.The text was updated successfully, but these errors were encountered: