Skip to content

Releases: zachstultz/komga-cover-extractor

v2.5.6 - Hotfix

05 Apr 15:14
6fdb602
Compare
Choose a tag to compare

Changes:

  • Fixed failed compression of discord cover output. 6fdb602

v2.5.5

05 Apr 14:38
f6b68ad
Compare
Choose a tag to compare

New:

  • Added output_covers_as_webp option via cli or docker. (automatically swaps out your existing covers, and vice versa) 6599c87 f6b68ad

Changes:

  • Fixed user-specified compression level not being used when compressing covers. f6b68ad
  • Pre-compiled cover-pattern regex searches when extracting the file's cover. f6b68ad
  • Reduced unnecessary re.search compute. f6b68ad
  • Misc changes and code cleanup. f6b68ad

v2.5.4

27 Mar 19:17
2483533
Compare
Choose a tag to compare

Changes:

  • Improved parsing and renaming of chapter files. 2483533
  • Changed discord docker text. 2483533
  • Renamed check_if_file_is_transferred_by_size() to is_file_transferred() 2483533
  • Renamed get_all_files_recursively_in_dir() to get_all_files_in_directory 2483533
  • Renamed all group(0) usage to group(). 2483533
  • Reduced usage of set_num_as_float_or_int() 2483533
  • Reduced logic and loops when renaming and reorganizing the file name. 2483533
  • Cleaned up unnecessary embed array usage around the script. 2483533
  • Got rid of array usage in get_release_number_cache() 2483533
  • Conversion to a float or int is now done in the number parser itself. 2483533
  • Added logic to remove the starting bracket in a series name with a space after it. 2483533
  • Chapters will now skip pulling internal metadata for renaming. 2483533
  • One-shot renaming now respects the user-defined zfill values. 2483533
  • Added no subfolders requirement when creating the series cover (cover.jpg). 2483533
  • Misc changes and code cleanup. 2483533

v2.5.3

14 Mar 19:50
dd29c05
Compare
Choose a tag to compare

Changes:

  • Fixed qbit addon not reconnecting after a lost connection. d4f0a0e

v2.5.2

01 Mar 16:10
eb5e1b5
Compare
Choose a tag to compare

Changes:

  • Cleaned up chapter regexes. 357aaa2
  • Reduced nested code around the script. 357aaa2
  • Added cache to get_release_number() 357aaa2
  • Moved a lot of feature toggle checks into the features themselves. 357aaa2
  • Reduced some loops in the file renamer. 357aaa2
  • Fixed file names containing unicode not being unchecked in qbit unchecker addon. d4e975d
  • Moved update command forward in dockerfile. eb5e1b5
  • Misc code changes and cleanup. 357aaa2 d4e975d eb5e1b5

v2.5.1

29 Jan 19:24
c940802
Compare
Choose a tag to compare

Changes:

  • Added cache to is_one_shot() c940802
  • Reduced bottlenecks with copy_existing_volume_covers_toggle feature. c940802
  • Reduced unnecessary code in get_percent_for_folder() c940802
  • Renamed remove_everything_but_volume_num() to get_release_number() c940802
  • Merged get_internal_file_hash() into get_file_hash() with an optional parameter. c940802
  • Chunked functionality in extract_covers() into internal functions. c940802
  • Cleaned up duplicate calls to clean_and_sort() around the script. c940802
  • Misc code changes and cleanup c940802

v2.5.0

16 Jan 21:33
ecf39ab
Compare
Choose a tag to compare

!!REQUIRED!!

  1. Make manual changes or update to the new settings.py file! (EVERYONE) 665e028
  2. Update and run new requirements.txt! (NON-DOCKER USERS)

!!REQUIRED!!

New Feature

  • (DOCKER ONLY) (EXPERIMENTAL) QBitorrent File Unchecker - will parse paused torrents of a specified category and match each file name to the user's library, and uncheck files that found a match and weren't an upgrade. Then start the torrent. (SETUP INSTRUCTIONS HERE) d4ca5c8
    • Drastically cuts down download time, compute, and bandwidth on both sides! You only download what you need.
    • Will also uncheck unacceptable keyword files if you're using delete_unacceptable_files_toggle feature.
      • can also check the torrent title if you enable delete_unacceptable_torrent_titles_in_qbit, since some releasers exclude keywords from file names that they don't from the title
    • Checks for new paused torrents with the specified category every 30 seconds.
    • Currently docker only for technical reasons, will try to bring it to non-docker in a future release.
    • Outputs a log to the logs folder.
      • still determining whether or not I want to also output embeds to a discord channel or the existing one in the future. I have to potentially deal with overlapping terminal logs and docker embeds, so I need to figure all of that out first

Changes:

  • Added cProfile module for profiling code. d4ca5c8
  • Added settings check logic for a user running the script without updating settings.py. d4ca5c8
  • Reduced processing time in volume/chapter matcher. d4ca5c8
  • Reduced duplicate logic in get_keyword_scores() d4ca5c8
  • Rewrote logic in get_extra_from_group() d4ca5c8
  • Removed langdetect module and logic using it. d4ca5c8
    • was causing a lot of slowdown
  • Fixed a syntactically broken chapter regex. d4ca5c8
  • Fixed a massive bottleneck with publishers.txt and release_groups.txt function parser. d4ca5c8
  • Updated dockerfile to bookworm. ecf39ab
  • Updated requirements to the newest versions and removed langdetect. 5870c1b
  • Misc changes and fixes. d4ca5c8

v2.4.25

06 Jan 19:57
04f46c0
Compare
Choose a tag to compare

Major Changes

  • Enabled alternative matching (cover matching) for chapter releases. 04f46c0
    • this was previously disabled for chapter releases since some of them could have a blank image as the first image if no cover was found, and that could result in an incorrect match
      • this is avoided with the optional option compare_detected_cover_to_blank_images insettings.py, which is now forced for chapters and volumes attempting an alternative match, but only when attempting an alternative match, outside of that it respects your value for it
  • Alternative match (cover match) will now also be attempted if both series names have the same subtitle. 04f46c0
  • Improved series match times by moving any series with a matching first three words to the top of the cached and non-cached paths/dirs list so it can be checked first. 04f46c0

Minor Changes:

  • Reduced number of loops in contains_chapter_keywords() 04f46c0
  • Reduced duplicate logic and cleaned up clean_and_sort() 04f46c0
  • Reduced duplicate logic in get_publisher_from_meta() 04f46c0
  • Reduced duplicate logic in upgrade_to_volume_class() 04f46c0
  • Reduced some nesting in process_cover_extraction() 04f46c0
  • Reduced the loop in remove_bracketed_info_from_name() to a single re.sub with a couple of cleanups. 04f46c0
  • Reduced logic in pick_webhook() 04f46c0
  • Added keyword user to censored watchdog settings output. 04f46c0
  • Added clean_sting() to clean up duplicate clean formatting/cleaning logic around the script. 04f46c0
  • Added move_strings_to_top() for moving strings that match a specified first three keywords to the top of a string list. 04f46c0
  • Added cache to contains_comic_info() function, clears at the end of the current execution. 04f46c0
  • Added is_same_index_number() to clean up duplicate logic. 04f46c0
  • Added try-except to function responsible for removing a folder. 04f46c0
  • Added logic for getting rid of any non-valid cached_paths after pulling the whole list. 04f46c0
  • Rewrote remove_duplicate_releases_from_download() 04f46c0
  • Rewrote get_keyword_scores() to evaluate both releases in the same loop instead of separately. 04f46c0
  • Removed is_fixed_volume() and any other associated logic with it. 04f46c0
  • Fixed some series covers not being generated due to the series names not all being the same due to minor differences like casing or punctuation. 04f46c0
  • Misc changes and fixes. 04f46c0

v2.5.0 will likely be the next release with a new feature, assuming everything goes smoothly in the next week. 🤞

v2.4.24

28 Dec 18:07
a130025
Compare
Choose a tag to compare

Changes:

  • Improved chapter parsing and renaming. a130025
    • fixed some edge cases and rare incorrect renames that popped up recently
  • Removed unneeded group parameters. a130025
  • Fixed publisher name not being added to the reorganized file name when no items were removed from the file's extras array. a130025
  • Misc changes and fixes. a130025

v2.4.23

26 Dec 22:31
ce40134
Compare
Choose a tag to compare

Major Changes:

  • Majorly cleaned up and sped up volume/chapter matching logic, and added test_mode logic. 026bf60
    • still plan to do more chunking and cleanup
  • Removed group_discord_notifications_until_max option and associated logic for the sake of simplifying code. 026bf60
    • grouping until max is now default with no option
      • it was already like this for quite some time, I merely removed the logic
    • if someone requests this back, I can add it back in the future, but it wouldn't be a high priority, and you'd have to wait for me to do a far cleaner implementation than what there was before
  • Reworked get_internal_metadata() and get_file_from_zip 026bf60
    • when dealing with an epub, it now accesses the file once, instead of three separate times
  • Reworked associated functions for detecting premium content inside of an epub. 026bf60
    • reduced bonus file loop to a single regex search and cleaned up duplicate logic

Minor Changes:

  • Created cache_path() function to clean up redundant path caching around the script. 026bf60
  • Cleaned up clean variable clean_and_sort() logic around the script. 026bf60
  • Cleaned up volume/chapter keyword selection around the script. 026bf60
  • Cleaned up redundant path joining around the script. 026bf60
  • Reduced nesting in folder creation feature. 026bf60
  • Reworked get_extras() and eliminated unnecessary info capture and looping. 026bf60
  • Reduced looping in parse_comicinfo_xml() 026bf60
  • Reduced looping in parse_html_tags() 026bf60
  • Minor cleanup of reorganize_and_rename() 026bf60
  • Misc cleanup and changes 026bf60

TLDR: Lots of cleanup and speedups. The core functions were improved so that should speedup everything in the script as a result.