Should not retry successfully downloaded files with bad checksums
Currently _downloadablefilesource.py
raises SourceError()
when the checksum of a successfully downloaded file is not the expected checksum.
This is the correct thing to do, but unfortunately the Job()
does not have any way to distinguish why there was an error, and if it makes sense to retry the job, so the Job()
will continue to redownload the same bad file successfully as many times as we are configured to retry.
We probably want an additional retry
parameter to SourceError()
such that the plugin can inform the core whether the error is fatal or whether it makes sense to retry.