It is impossible to restart and recover - but all the installed packages that needed upgrade have already been uninstalled.
I'm not looking to squash and ignore the failure and continue on error - just to b able to restart the build and install process.
I'd also like to be able to do 'rebuild and install everything'.
Thinking about this (without looking at the internals), I was thinking that:
I guess I'd like something that appears transactional, and I could do that on ZFS but perhaps not so easily on my Linux laptop or Windows desktop.
At the least, when we do 'upgrade' could we:
I think that would fix my issue.
BTW I've had the issue in two different circumstances:
What's galling is that if I 'vcpkg install boost' and one of the parts fails, I can just redo and it picks up OK.
But, if that happens during 'vcpkg upgrade', then I'm totally hosed.
Totally understand your pain. I have the habit of saving the list proposed by vcpkg upgrade before launching vcpkg upgrade --no-dry-run, as to be able to restart “resubmitting it as a whole” in case of problems. I have a wonderful 1Gbit fiber connection, but I have the same problem as you. It could also be the server that does not respond, once in a while, exactly while you’re doing your important upgrade... I’d not blame your rural adsl so much. For sure it’s a point where vcpkg can improve and your ideas are very nice!
I have a cmd line script to do the "vcpkg upgrade" command without the --no-dry-run option and have the output piped to a text file, then issue the "vcpkg upgrade --no-dry-run --keep-going" to do the actual upgrade. At least I then have a list of what was to be upgraded and the upgrade will keep going and install/recompile everything except those that fail due to cascade constraints or dependent other modules compiling. It's not perfect, but it works for me.
@timautry exactly like my pipeline. Of course vcpkg should be able do that by itself, or even better, implement some smarter ideas like those described here in this issue
Hi, i fixed this bug in my copy, now i'm checking it. If everything will be ok, i'll do pull request.
Most helpful comment
Thinking about this (without looking at the internals), I was thinking that:
I guess I'd like something that appears transactional, and I could do that on ZFS but perhaps not so easily on my Linux laptop or Windows desktop.
At the least, when we do 'upgrade' could we:
I think that would fix my issue.
BTW I've had the issue in two different circumstances:
What's galling is that if I 'vcpkg install boost' and one of the parts fails, I can just redo and it picks up OK.
But, if that happens during 'vcpkg upgrade', then I'm totally hosed.