Commit Graph

187 Commits

Author SHA1 Message Date
Timmy Welch
768ef0b6bc Fix rar exe handling 2024-02-18 01:40:49 -08:00
Timmy Welch
a1e4cec94f Log file path to plugin when it fails to load and remove debug statements 2024-02-11 13:18:03 -08:00
Timmy Welch
8ec16528ab Implement local plugins 2024-02-10 21:00:24 -08:00
pre-commit-ci[bot]
df762746ec [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-01-29 17:14:26 +00:00
Timmy Welch
dda0cb521a Add more credit synonyms 2024-01-21 15:06:34 -08:00
Timmy Welch
f34e8200dd Fix add_to_path tests 2024-01-20 10:34:40 -08:00
Timmy Welch
539aac1307 Fix clearing lists via the '-m' option Fixes #587 2024-01-14 13:38:11 -08:00
Timmy Welch
1ca585a65c Fix #584 2023-12-31 14:33:27 -08:00
Timmy Welch
1ef6e40c29 Allow the avif extension 2023-12-24 18:32:52 -08:00
Timmy Welch
59694993ff Fix loading previous existing xml 2023-12-24 18:28:38 -08:00
Timmy Welch
109d8efc0b Update pyinstaller hook 2023-12-24 18:04:35 -08:00
Timmy Welch
c8507c08a9 Ensure ComicRack and CoMet metadata preserve unknown xml tags 2023-12-23 23:50:58 -08:00
Timmy Welch
28be4d9dd7 Improve errors when loading plugins 2023-12-23 23:47:44 -08:00
Timmy Welch
ceb3b30e5c Always apply the default page list when writing metadata 2023-12-20 21:24:12 -08:00
Timmy Welch
c3a8221d99 Return an empty object if an archive does not have the requested style 2023-12-18 16:59:31 -08:00
Timmy Welch
df781f67e3 Fix assigning black_and_white value 2023-12-18 02:46:53 -08:00
Timmy Welch
4660b14453 Fixup metadata handling 2023-12-18 02:37:40 -08:00
Timmy Welch
9c231d7e11 Add better page info handling
Rename set_default_page_list to apply_default_page_list and apply
 during read_metadata
Add a filename attribute to the ImageMetadata class
Mark image_index as required
Always sort the page name list, a comic application will never need the
 unsorted list of names
Assign the first result from get_cover_page_index_list to coverImage in
 CoMet tags
Allow an Archiver to be passed to the ComicArchive constructor
2023-12-18 02:37:34 -08:00
Timmy Welch
989470772f Make widget disabling more consistent 2023-12-18 01:24:30 -08:00
Timmy Welch
fd868d9596 Add supports_credit_role to metadata plugins 2023-12-17 21:47:44 -08:00
Timmy Welch
ae5e246180 Add plugin support for metadata 2023-12-17 21:47:43 -08:00
Timmy Welch
45643cc594 Add integration tests 2023-12-17 16:24:32 -08:00
Timmy Welch
bb67ab009e Ensure that all output goes through a logger before output to the user
Adds an option to output json for CLI options
2023-12-17 15:51:43 -08:00
Timmy Welch
1ff6f1768b Use importlib.resources instead of __file__ 2023-11-25 12:32:50 -08:00
Timmy Welch
305eb1dec5 Enable stricter mypy configuration 2023-11-23 16:05:16 -08:00
Timmy Welch
128cab077c Replace pycountry with isocodes
isocodes is updated more often and doesn't depend on deprecated packages
2023-11-23 14:21:21 -08:00
Timmy Welch
10b19606e0 Fix GenericMetadata __str__ 2023-11-05 21:36:29 -08:00
Timmy Welch
21575a9fb8 Fix saving CBI when credits are empty 2023-11-05 13:27:14 -08:00
Timmy Welch
bd9b3522d8 Improve edge cases
Lex `'` as a symbol
Lex multiple symbols as a single item
Prefer `$` at the start of a number
Simplify issue number parsing
2023-10-27 23:26:40 -07:00
Timmy Welch
78060dff61 Rework parse_series 2023-10-27 23:26:40 -07:00
Timmy Welch
496f3f0e75 fix reset after space 2023-10-23 22:05:42 -07:00
Timmy Welch
f03b2e58cf Improve lexing numbers
lex currency amounts as text
lex a '.' followed by a number as a number if there is a preceding space
2023-10-23 21:13:31 -07:00
Timmy Welch
29ddc3779a Ensure FilenameInfo is always filled out fixes #556 2023-10-23 21:08:55 -07:00
Timmy Welch
8dfd38a15c Merge branch 'rar-cwd' into develop 2023-10-12 01:31:57 -07:00
Timmy Welch
6227edb0a3 Set rar cwd to reduce errors 2023-10-12 01:30:32 -07:00
Timmy Welch
114a0bb615 Fix parsing '&' with the "complicated" filename parser 2023-10-12 01:26:31 -07:00
Timmy Welch
abfd97d915 Merge branch 'protofolius_issue_scheme' into develop 2023-10-11 17:05:27 -07:00
Timmy Welch
582b8cc57b Add more parseable filenames 2023-10-11 17:03:07 -07:00
Timmy Welch
edb087abde Handle errors when reading zip comments fixes #548 2023-10-07 11:49:57 -07:00
Timmy Welch
78a890f900 Fix parsing a month name in the series fixes #542 2023-10-06 20:06:39 -07:00
Timmy Welch
f250d2c5c3 Merge branch 'mizaki-gmd_list_set' into develop 2023-10-04 20:16:33 -07:00
Timmy Welch
b6d5fe7013 Improve rar error messages 2023-10-04 19:08:17 -07:00
Mizaki
058651cc29 Change metadata lists to sets. Changed CV talker to reflect and tidied 2023-09-24 14:33:57 +01:00
Mizaki
5874f3bcaf Remove genres from ComicSeries as it is no longer required with the new cache system 2023-09-22 23:15:04 +01:00
Timmy Welch
f6be7919d7 Implement support for protofolius's permission scheme 2023-09-06 04:50:05 -04:00
Timmy Welch
e832b19f2f Fix attribute names 2023-09-03 15:12:06 -07:00
Timmy Welch
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 Welch
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 Welch
31cf687e2f Reduce startup time 2023-06-22 20:11:40 -07:00
Timmy Welch
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