77 Commits

Author SHA1 Message Date
653e792bfd Switch to PyQt6 2025-06-18 17:24:37 -07:00
506fac03c7 Use ImageHash solely 2025-04-17 23:48:53 +01:00
a0be90bbf5 Add URL to ImageHash and use in issue window 2025-02-28 16:55:56 +00:00
d2499f6bae Add ImageHash support for alternate_urls 2025-02-23 18:11:40 -08:00
c3f5badc7d Use source hashes for cover matching 2025-02-11 01:03:12 +00:00
0048901a61 Remove unused attributes 2024-07-27 19:23:37 -07:00
5010ca60e9 Remove reduce_widget_font_size 2024-05-21 20:32:01 -07:00
da6b2b02f4 Implement a replaceWidget helper function 2024-02-10 14:42:47 -08:00
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
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
1ff6f1768b Use importlib.resources instead of __file__ 2023-11-25 12:32:50 -08:00
9dc6f8914f Upgrade settings to 0.8.0 2023-11-19 23:14:40 -08:00
5bdbe7d181 Always update rows even if None 2023-10-05 22:14:45 +01:00
80f3dd7ce4 Restore issue number sorting 2023-09-30 23:19:10 +01:00
366e9cf6e8 Move update into own function. Add title missing to trigger issue update. 2023-09-13 21:35:52 +01:00
1125788bb7 Update series and issue rows after calling for more information. Closes #512 2023-09-10 13:31:20 +01:00
05e6eaf88e Update setting group names
Make group names presentable to users and add builtin plugins during namespace generation.
Revamp talkeruigenerator.py to use generated group and setting names and remove as much hard-coded strings as possible
Add a --list-plugins commandline option
2023-09-05 03:55:12 -04:00
90eb1c3980 Fix date display in the issue selection window 2023-09-05 03:14:55 -04:00
0f07fc3153 Use a dictionary instead of a list in the issue/series selection windows
List lookups were done by row number which became inaccurate if any sorting was done

Fixes #507
2023-09-03 15:18:56 -07:00
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
f43f51aa2f Fix #396
Use a QWebEngineView if QtWebEngine is available.
If QtWebEngine is not available replace figure tags with div's to allow
 the QTextEdit to render the rest of the html properly
2023-07-01 23:29:38 -07:00
00200334fb Add filter to SeriesSelectionWindow and IssueSelectionWindow fixes #476 2023-07-01 18:57:33 -07:00
783e10a9a1 Generate a namespace object for typing settngs 2023-06-09 16:20:00 -07:00
d3ff40c249 Only update the image in CoverImageWidget if the url matches the current url
This fixes an issue causing the first issue cover to show when using the auto-identify feature
Fixes #455
2023-04-25 16:00:08 -07:00
2491999a33 Update copyright statements to ComicTagger Authors 2023-02-16 17:23:13 -08:00
3422a1093d Merge branch 'mizaki-showcontrols' into develop 2023-02-10 00:31:24 -08:00
4eb9e008ce Update pre-commit 2023-02-10 00:25:20 -08:00
e5b15abf91 clean up talker 2023-02-10 00:23:00 -08:00
79a6cef794 Hide invisible controls to prevent bottom margin on source logos. 2023-02-10 00:43:05 +00:00
ad68726e1d Use consistent naming for settings
config: always values
setting: always the definition/description not the value
2023-02-04 11:33:21 -08:00
d0e3b487eb Mark label for external links. attrib str to be complete. 2023-01-22 17:16:33 +00:00
5d66815765 Add attrib string for source. Add logo and URL to issues window. 2023-01-20 00:29:02 +00:00
734b83cade Switch comictalker TypedDicts to dataclasses 2022-12-23 01:58:10 -08:00
9f00af4bba Change issue id and series id to strings 2022-12-23 00:09:19 -08:00
1d9840913a Change all references of volume to series 2022-12-22 10:16:05 -08:00
53a0b23230 Collapse formatting 2022-12-15 20:21:53 -08:00
440479da8c Update to settngs 0.3.0
Use the namespace instead of a dictionary
Cleanup setting names
2022-12-15 20:10:35 -08:00
103379e548 Split settings out into a separate package 2022-12-14 23:16:54 -08:00
19112ac79b Update Settings 2022-12-06 00:20:01 -08:00
b4f6820f56 remove_fetch_alternate_cover_urls.patch 2022-11-03 23:32:35 +00:00
8cac2c255f Merge branch 'develop' into infosources
# Conflicts:
#	comictaggerlib/comicvinetalker.py
#	comictaggerlib/coverimagewidget.py
#	comictaggerlib/main.py
#	comictaggerlib/pagebrowser.py
#	comictaggerlib/pagelisteditor.py
#	comictaggerlib/settings.py
#	comictaggerlib/settingswindow.py
2022-10-30 01:31:58 +01:00
561dc28044 Don't proxy talker (really this time). Remove talker custom logging. Move static_options and settings_options to root of class object. Temp hack to keep talker menu genration working until settings revamp. 2022-10-27 23:36:57 +01:00
aad83c8c03 Update PyInstaller usage
Switch to rapidfuzz from thefuzz
Add associations to macOS app bundle
2022-10-25 21:48:01 -07:00
cab69a32be Remove proxying from ComicTalker. Add some checks for talkers. 2022-10-25 00:37:18 +01:00
c5ad75370f Work around having to scrape alt covers from CV. Use cache to get issue page url for scrape. 2022-10-24 16:30:58 +01:00
d23258f359 Change ComicVolume, ComicIssue to image_url and image_thumb_url. Add/change search/volume DB layout to remove duplication of data. Fixup some test. 2022-10-23 22:40:15 +01:00
c9cd58fecb Remove fetch_issue_cover_urls and async_fetch_issue_cover_urls. Reduce API calls by using data already available with coverimagewidget. 2022-10-22 01:43:56 +01:00
d37e4607ee After merge. Testing files still to update. 2022-10-04 23:50:55 +01:00
00e95178cd Initial support for multiple comic information sources 2022-10-04 01:08:14 +01:00
40314367c9 Improve formatting and consistency 2022-07-18 12:17:13 -07:00