Closed thorstenkampe closed 2 years ago
I don't think there is any way to know the hash of the file to be downloaded without downloading it. Is there any way around that problem?
I was under the impression that the JSON data for the latest version (https://api.github.com/repos/zyedidia/eget/releases/latest for instance) includes the hash but apparently it doesn't.
Maybe the created_at
or updated_at
values could be used ("if there's already a local file with the same name and the file's modification timestamp is younger than the one I would download, don't download the file from GitHub.")
This is something that would be very useful for me also. Just comparing the last modification to the local file to created_at
would be very useful. I'd be happy to implement this myself if you'd like.
That's a good suggestion, I've implemented it in the form of the upgrade-only
flag.
Could you please reopen this issue? The --upgrade-only
flag doesn't seem to work - the same same file is downloaded again and again:
> eget --download-only --upgrade-only zyedidia/eget
https://github.com/zyedidia/eget/releases/download/v1.1.0/eget-1.1.0-linux_amd64.tar.gz
Downloading 100% [========================================================================================================] (2.3/2.3 MB, 3.265 MB/s)
Extracted `eget-1.1.0-linux_amd64.tar.gz` to `eget-1.1.0-linux_amd64.tar.gz`
> eget --download-only --upgrade-only zyedidia/eget
https://github.com/zyedidia/eget/releases/download/v1.1.0/eget-1.1.0-linux_amd64.tar.gz
Downloading 100% [========================================================================================================] (2.3/2.3 MB, 5.922 MB/s)
Extracted `eget-1.1.0-linux_amd64.tar.gz` to `eget-1.1.0-linux_amd64.tar.gz`
└ > eget --download-only --upgrade-only zyedidia/eget
https://github.com/zyedidia/eget/releases/download/v1.1.0/eget-1.1.0-linux_amd64.tar.gz
Downloading 100% [========================================================================================================] (2.3/2.3 MB, 5.806 MB/s)
@thorstenkampe --download-only
is not expected to be specified in conjunction with --upgrade-only
.
--download-only
will only download the tarball, and not extract it, so when you run it again with --upgrade-only
it will check for existence of eget
(which doesn't exist because it was never extracted) and will download the tarball again.
I'm downloading packages for later installation (
eget --download-only zyedidia/eget
). This downloads the same file every time it's executed even if there is no newer version (which I cannot know in advance).Would it be possible to only download the file if the hashes of the file
eget
is going to download does not match the file that is already there?