Official-Husko / NN-Downloader

Easily download all of your favorite Naughty images from multiple sites.
Mozilla Public License 2.0
47 stars 8 forks source link

[REQUEST/MISSING] Differential/delta downloads not implemented #1

Closed Riccorbypro closed 1 year ago

Riccorbypro commented 1 year ago

Is your feature request related to a problem? Please describe. I see in the config.json that there is an option for oneTimeDownload, defaulted to true. There is no documentation around this, but I'd assume that if you turn oneTimeDownload to false then your downloads should become differential. In other words, if you download a tag that has 20 posts today, and tomorrow it has 25 (of which you already have 20), then re-running that download should only download the 5 posts that are missing.

Looking through the code, this does not seem to be implemented in any of the downloaders, and is only read from the config file in main.py.

Describe the solution you'd like The oneTimeDownload feature should be implemented as described above.

Describe alternatives you've considered It is easy enough to simply merge previously downloaded folders together for specific tag sets, however this causes multiple downloads of the same post, and therefore unnecessary requests to the site's API.

Additional context This was tested on e621, but should also be non-functional on all other sites as the feature is simply not implemented.

Site URL N/A

Does the site have an API? N/A

Official-Husko commented 1 year ago

I think you are correct, it does seem like that feature is indeed missing. I believe I added it initially but must have forgotten to fully implement it. No worries, though! I'll work on an update to fix this within the next few days. Your report is much appreciated – thank you!

Official-Husko commented 1 year ago

I have added the oneTimeDownload feature for E621 and E926. If you feel this completes this ticket then please close it. If not please clarify what else i should add.

Riccorbypro commented 1 year ago

Ah yes, the good old "small missing feature causes moderate refactor of the entire system".

Looks good for this feature, but I have spotted an issue in the auto updater. I'll log a second issue for that though as its more related to the new feature rather than a missing one.