Commit Graph
142 Commits
Author SHA1 Message Date
timmy e832b19f2f Fix attribute names 2023-09-03 15:12:06 -07:00
timmy 2c3a2566cc Convert ComicIssue into GenericMetadata
I could not find a good reason for ComicIssue to exist other than that
 it had more attributes than GenericMetadata, so it has been replaced.
New attributes for GenericMetadata:
  series_id:        a string uniquely identifying the series to tag_origin
  series_aliases:   alternate series names that are not the canonical name
  title_aliases:    alternate issue titles that are not the canonical name
  alternate_images: a list of urls to alternate cover images

Updated attributes for GenericMetadata:
  genre        -> genres:        str -> list[str]
  comments     -> description:   str -> str
  story_arc    -> story_arcs:    str -> list[str]
  series_group -> series_groups: str -> list[str]
  character    -> characters:    str -> list[str]
  team         -> teams:         str -> list[str]
  location     -> locations:     str -> list[str]
  tag_origin   -> tag_origin:    str -> TagOrigin (tuple[str, str])

ComicSeries has been relocated to the ComicAPI package, currently has no
 usage within ComicAPI.
CreditMetadata has been renamed to Credit and has replaced Credit from
 ComicTalker.
fetch_series has been added to ComicTalker, this is currently only used
 in the GUI when a series is selected and does not already contain the
 needed fields, this function should always be cached.

A new split function has been added to ComicAPI, all uses of split on
 single characters have been updated to use this

cleanup_html and the corresponding setting are now only used in
 ComicTagger proper, for display we want any html directly from the
 upstream. When applying the metadata we then strip the description of
 any html.

A new conversion has been added to the MetadataFormatter:
  j: joins any lists into a string with ', '. Note this is a valid
     operation on strings as well, it will add ', ' in between every
     character.

parse_settings now assigns the given ComicTaggerPaths object to the
 result ensuring that the correct path is always used.
2023-08-02 09:00:04 -07:00
timmy 548ad4a816 Fix folder archiver
Implement supports_comment and is_writable
Fix function call in ComicArchive for supports_comment
Add a menu option to open a folder as an archive
2023-07-29 00:07:25 -07:00
timmy 31cf687e2f Reduce startup time 2023-06-22 20:11:40 -07:00
timmy 3a287504ae Fix setting issue and alternate_number on GenericMetadata
IssueString.as_string always returns a string this is a problem for
  GenericMetadata. When the overlay function is used it checks
  specifically for the value None this allows the -m option to unset
  attributes however the issue attribute would get set to the empty
  string when loading ComicRack tags regardless of if there was a value
  stored in the file. Fixes #465 and #480
2023-06-15 20:26:38 -07:00
timmy 783e10a9a1 Generate a namespace object for typing settngs 2023-06-09 16:20:00 -07:00
Mizaki 3b92993ef6 Remove country name code 2023-06-03 00:11:40 +01:00
Mizaki d191750231 Remove attempted validation of language and country plus minor changes 2023-05-25 01:32:52 +01:00
Mizaki 8e2411a086 Add country functions to utils and try to convert a country name to ISO country name 2023-05-23 00:02:56 +01:00
timmy c07e1c4168 Add additional typing 2023-04-25 16:00:06 -07:00
timmy 14fa70e608 Separate xlate into separate functions based on return type fixes #454 2023-04-25 15:55:27 -07:00
timmy 5b3e9c9026 Switch to rarfile for rar/cbr support 2023-04-23 00:48:13 -07:00
timmy e70c47d12a Make PyICU optional
Update README.md
2023-04-23 00:48:11 -07:00
timmy c1aba269a9 Revert "Make PyICU optional"
This reverts commit bf55037690.
2023-04-22 21:28:14 -07:00
timmy bf55037690 Make PyICU optional
Fix more locale issues
Update README.md
2023-04-18 21:03:50 -07:00
timmy e2dfcc91ce Revert get_recursive_filelist Fixes #449 2023-04-13 20:58:30 -06:00
timmy 2491999a33 Update copyright statements to ComicTagger Authors 2023-02-16 17:23:13 -08:00
timmy 4eb9e008ce Update pre-commit 2023-02-10 00:25:20 -08:00
timmy 5e86605a46 Fix docstring typos 2023-02-10 00:25:18 -08:00
timmy e5b15abf91 clean up talker 2023-02-10 00:23:00 -08:00
timmy 2c5d419ee9 Remove legacy rar settings 2023-01-31 00:32:19 -08:00
timmy 46899255c8 Generate settings for an archivers executable 2023-01-30 21:36:47 -08:00
timmy c80627575a Add docstrings to Archiver 2023-01-21 15:24:27 -08:00
timmy ad48ad757c Fix plugin order 2023-01-20 19:32:32 -08:00
timmy 2de241cdd5 Fix typing 2023-01-20 19:32:06 -08:00
timmy f6698f7f0a Call load_archive_plugins in ComicArchive __init__ 2023-01-12 17:00:11 -08:00
timmy 50614d52fc Update PyInstaller hook 2023-01-12 15:47:34 -08:00
timmy 712986ee69 Turn comicapi.archivers.* into plugins 2023-01-12 14:45:49 -08:00
timmy 2f7e3921ef Separate archivers into their own packages 2023-01-12 14:45:17 -08:00
timmy f83f72fa12 Improve issue number handling regarding the '#' 2022-12-31 02:15:17 -08:00
timmy fb4786159d Handle issue numbers with more than 3 digits 2022-12-30 21:50:10 -08:00
timmy 9f00af4bba Change issue id and series id to strings 2022-12-23 00:09:19 -08:00
timmy 53a0b23230 Collapse formatting 2022-12-15 20:21:53 -08:00
timmy 19112ac79b Update Settings 2022-12-06 00:20:01 -08:00
timmy c5a5fc8bdb Fix issue with combine_notes 2022-11-24 01:24:15 -08:00
timmy c608ff80a1 Improve typing 2022-11-22 17:11:56 -08:00
timmy c469fdb25e Make 7zip support optional 2022-11-06 08:27:45 -08:00
timmy d55d75cd79 Append notes instead of overwriting them
Add issue_id to GenericMetadata
2022-11-04 15:39:40 -07:00
timmy aad83c8c03 Update PyInstaller usage
Switch to rapidfuzz from thefuzz
Add associations to macOS app bundle
2022-10-25 21:48:01 -07:00
timmy 2daf9b3ed8 Style and typo fixes 2022-10-04 16:15:55 -07:00
timmy 4034123e6d Fix rar tests again 2022-10-02 21:47:07 -07:00
timmy 4b6d35fd3a Fix CBL tagging 2022-10-02 19:33:12 -07:00
timmy bc25acde9f Fix sorting
Switch natsort to use os_sorted
Remove directories when returning a list of files in a comic
Update tests to account for '!cover.jpg'
2022-09-10 19:48:50 -07:00
timmy 03677ce4b8 Fix renaming
Make ComicArchive.path always absolute
Fix unique_file not preserving the extension
Fix incorrect output when renaming in CLI mode
Fix handling of platform when renaming
2022-08-19 20:20:37 -07:00
timmy be983c61bc Fix #353
The two primary cases fixed are:
Ms. Marvel
spider-man/deadpool

The first issue removed 'Ms.' which is a problem as many comics have
series that the only difference in the title is the
designation/honorific.

The second issue is that the '/' was removed and not replaced with
anything causing a search for 'mandeadpool' which will not show useful
results.

Consequently all designations/honorifics are now untouched
All punctuation is replaced with a space
2022-08-12 07:10:36 -07:00
timmy 77a53a6834 Update dependencies
Includes changes from pyupgrade
2022-08-10 20:55:46 -07:00
timmy aadeb07c49 Fix issues
Refactor add_to_path with tests
Fix type hints for titles_match
Use casefold in get_language
Fix using the recursive flag in cli mode
Add http status code to ComicVine exceptions
Fix parenthesis getting removed when renaming
Add more tests
2022-08-08 18:05:06 -07:00
timmy f2a68d6c8b Fix rename and add test 2022-07-29 22:05:03 -07:00
timmy 94be266e17 Handle the 'primary' key missing in get_primary_credit
Fixes #342
Add better exception handling for the formatter
2022-07-27 23:24:34 -07:00
timmy 5a19eaf9a0 Fix serializing of sets 2022-07-25 11:22:44 -07:00