This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: setup's response to a "corrupt local copy"


On 2017-12-14 12:57, Ken Brown wrote:
> On 12/14/2017 2:46 PM, Andrey Repin wrote:
>>> This is a followup to the discussion started here:
>>>     https://cygwin.com/ml/cygwin/2017-12/msg00088.html
>>> When setup is preparing to download files and it finds a corrupt copy in
>>> the local cache, it issues a fatal error message telling the user to
>>> remove the corrupt file and retry.  Steven said that setup should
>>> silently delete the corrupt file, while I argued in favor of the current
>>> behavior, on the grounds that setup shouldn't be deleting user files if
>>> it doesn't know where they came from.
>> The point being, if this is a "Download" Setup mode, the files are NOT "User"
>> files, but a local setup cache. And all files therein SHOULD be valid package
>> archives.
>> There's of course situations, when setup.ini on server become corrupted or
>> otherwise out of sync. But being rare, they should not interfere too much.
>>> There is a middle ground: setup could query the user.  Additionally, as
>>> suggested by cyg Simple, there could be an option that directs setup to
>>> silently remove corrupt files.
>> Make it mode dependent.
>> If it's a "download[ and install]" mode, cleanup and redownload.
>> If redownloaded file still does not match the setup.ini hash or if it's an
>> "install from local cache" mode, leave file alone for investigation and notify
>> the user.
> You've misunderstood the context.  The error is only shown in download or
> download/install mode.  And, as I said, it happens when setup is *preparing* to
> download files and finds a corrupt copy already present in the local cache.  In
> that context, setup has no idea where the file came from.

Setup knows the file came from
	.../%encoded-mirror-url/arch/release/package/.../pvr....tar.xz
so it could warn the user of the validation failure, rename the file failing
validation if the cache is (one of) the currently selected mirror(s) and inform
the user of the rename, then add the package for redo of download/install from
(one of) the currently selected mirror(s), similar to a package prereq.
This would DTRT in most cases and not blow away the questionable cached file.

-- 
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]