Open buzden opened 1 year ago
That's strange. On my machine, pack caches only when I run pack switch
or pack fetch
. Do you have custom pack.toml
files with commit = "main:fetch-latest"
meta commits? These connect to GitHub (and perform caching) every time pack is run.
I run pack a lot when I don't have an internet connection at all, and this hasn't been an issue so far.
Do you have custom
pack.toml
files withcommit = "main:fetch-latest"
meta commits?
No, I don't
I run pack a lot when I don't have an internet connection at all, and this hasn't been an issue so far.
When there is no internet connection at all there is no problem. The problem when internet connection is laggy.
Consider the following case. Say, I used some collection and new collection came out with a change in the compiler commit and some other libraries update. Consider that I run pack switch latest
on a project with a custom compiler commit in the local pack.toml
and it succeeds. And now I logout and login (and bash completion is tried to be applied).
I think this may be the case when I ran into this problem.
OK, now this makes sense. Although you ran pack switch
, only the custom commits of the Idris compiler and libraries used locally will be fetched, but not the commits used in the vanilla pack collection. In that case, yes, the missing .ipkg
files still need caching. I don't see an easy way around this other than making sure you run pack info
outside of your project once after running pack switch
inside your project, in which case the vanilla .ipkg
files will be cached too.
I don't know if this has a good solution, but anyway this is a user experience report.
Since recent changes
pack
caches almost on every operation and usually it prints nice log messages about this. This is great.But what I encountered recently is when my internet connection is poor (say, for some reason, nameserver response tooks a minute or two), I can't use my shell ;-) The reason is that I have both
idris2
andpack
bash completion, and I found out that caching happens when bash completion scripts are returning too. And sincepack
waits as much as it can for the caching process, bash completion script is returned either aftergit
timeouted, is laggy nameserver finally gives a response. That's annoying :-(Also, the similar problem seems to happen when I start my
vim
withlsp
in custom environments: looks likelsp
being run using the currentpack
configuration, waits forpack
to cache before it can start. However, I'm not really sure about the order of run in this case.