Skip to content

Release 21 - Download system refactoring

Choose a tag to compare

@AlexCSDev AlexCSDev released this 15 Jan 01:32

This release contains the following changes:

  • Version format changed - now it's just a sequential version number.
  • Files are now being downloaded into temporary file first (*.dwnldtmp) in order to prevent file corruption during crashes and other unexpected behavior. (#155)
  • Removed --overwrite-files parameter.
  • Added --file-exists-action parameter.
    Use this parameter to tell PatreonDownloader how to handle files which already exist on disk:

BackupIfDifferent (default): Check remote file size if enabled and available. If it's different, disabled or not available then download remote file and compare it with existing file, create a backup copy of old file if they are different.

ReplaceIfDifferent: Same as BackupIfDifferent, but the backup copy of the file will not be created.

AlwaysReplace: Always replace existing file. Warning: will result in increased bandwidth usage. Acts like previous builds acted with --overwrite-files parameter.

KeepExisting: Always keep existing file. The most bandwidth-friendly option. Acts like previous builds acted without --overwrite-files parameter.

  • Added --disable-remote-file-size-check parameter. It makes the app not ask the server for file size when it is available and therefore disables various pre-download checks if file already exists on disk. May result in significant increase of bandwidth used by the application.
  • Media and attachment files now have their id appended to them in order to help with various file checks. Old behavior can be enabled with --use-legacy-file-naming parameter. Please note: this parameter is not compatible with BackupIfDifferent, ReplaceIfDifferent options of --file-exists-action and might be removed in the future. It is highly discouraged to use --use-legacy-file-naming parameter unless you absolutely need it.
  • Added --max-sub-directory-name-length parameter which allows you to limit the length of folder names when --use-sub-directories is used. Default value for this parameter is 100 characters. (#156)
  • Fixed crash caused by using not thread safe code. (#135) This might also fix #138.
  • Code refactoring and libraries updates.