[28] Pr updates (#2188)

This commit is contained in:
meisnate12 2024-08-12 11:33:38 -04:00 committed by GitHub Action
parent 377309ffa7
commit 0938c0d826
29 changed files with 78 additions and 30 deletions

View file

@ -67,6 +67,7 @@ diiivoycolor
DIR DIR
dir dir
DiskStation DiskStation
DisneyToon
dockerfile dockerfile
dockerfiles dockerfiles
DockerHub DockerHub

View file

@ -56,7 +56,7 @@ jobs:
done done
- name: Run Spellcheck - name: Run Spellcheck
uses: rojopolis/spellcheck-github-actions@0.38.0 uses: rojopolis/spellcheck-github-actions@0.40.0
docker-build-pull: docker-build-pull:
runs-on: ubuntu-latest runs-on: ubuntu-latest

View file

@ -1,9 +1,10 @@
# Requirements Update (requirements will need to be reinstalled) # Requirements Update (requirements will need to be reinstalled)
Added tenacity requirement at 8.4.2 Added tenacity requirement at 9.0.0
Update lxml requirement to 5.3.0
Update pillow requirement to 10.4.0 Update pillow requirement to 10.4.0
Update PlexAPI requirement to 4.15.14 Update PlexAPI requirement to 4.15.15
Update psutil requirement to 6.0.0 Update psutil requirement to 6.0.0
Update setuptools requirement to 70.2.0 Update setuptools requirement to 72.1.0
# Removed Features # Removed Features
@ -12,6 +13,7 @@ Added [`letterboxd_user_lists`](https://kometa.wiki/en/latest/files/dynamic_type
# Updates # Updates
F1 session naming improvements F1 session naming improvements
Added new studios : Disney Television Animation, DisneyToon Studios, Dynamic Planning, Film4 Productions, Golden Harvest, Hungry Man, Screen Gems, Shaw Brothers, Studio Live, The Stone Quarry
# Defaults # Defaults
@ -20,6 +22,9 @@ Fixed multiple anime `int()` Errors
Fixed #2100 `verify_ssl` wasn't working when downloading images Fixed #2100 `verify_ssl` wasn't working when downloading images
Fixed an issue with `delete_collections` where items were being deleted if they only matched one criteria vs all criteria Fixed an issue with `delete_collections` where items were being deleted if they only matched one criteria vs all criteria
Fixed `imdb_watchlist` Fixed `imdb_watchlist`
Fix #2150; change xmen list to a new one Fixes #2135 AniDB Builder type conversion error
Fixed #2150; change xmen list to a new one
Fixed #2169 Add handling for blank secrets
Fixed #2176 `clean_bundles`, `optimize`, and `empty_trash` not working as global attributes
Various other Minor Fixes Various other Minor Fixes

View file

@ -1 +1 @@
2.0.2-build27 2.0.2-build28

View file

@ -301,11 +301,14 @@ dynamic_collections:
- DC Comics - DC Comics
- Dimension Films - Dimension Films
- Dino De Laurentiis Company - Dino De Laurentiis Company
- Disney Television Animation
- DisneyToon Studios
- Don Simpson Jerry Bruckheimer Films - Don Simpson Jerry Bruckheimer Films
- Doozer - Doozer
- Dreams Salon Entertainment Culture - Dreams Salon Entertainment Culture
- DreamWorks Studios - DreamWorks Studios
- DreamWorks Pictures - DreamWorks Pictures
- Dynamic Planning
- Eleventh Hour Films - Eleventh Hour Films
- EMJAG Productions - EMJAG Productions
- Endeavor Content - Endeavor Content
@ -317,6 +320,7 @@ dynamic_collections:
- Exposure Labs - Exposure Labs
- Fandango - Fandango
- Fields Entertainment - Fields Entertainment
- Film4 Productions
- FilmDistrict - FilmDistrict
- FilmNation Entertainment - FilmNation Entertainment
- Flynn Picture Company - Flynn Picture Company
@ -332,6 +336,7 @@ dynamic_collections:
- Gary Sanchez Productions - Gary Sanchez Productions
- Gaumont - Gaumont
- Generator Entertainment - Generator Entertainment
- Golden Harvest
- Gracie Films - Gracie Films
- Green Hat Films - Green Hat Films
- Grindstone Entertainment Group - Grindstone Entertainment Group
@ -344,6 +349,7 @@ dynamic_collections:
- HBO - HBO
- Heyday Films - Heyday Films
- Hughes Entertainment - Hughes Entertainment
- Hungry Man
- Hurwitz & Schlossberg Productions - Hurwitz & Schlossberg Productions
- Hyperobject Industries - Hyperobject Industries
- Icon Entertainment International - Icon Entertainment International
@ -435,11 +441,13 @@ dynamic_collections:
- Scion Films - Scion Films
- Scott Free Productions - Scott Free Productions
- Sculptor Media - Sculptor Media
- Screen Gems
- Sean Daniel Company - Sean Daniel Company
- Searchlight Pictures - Searchlight Pictures
- Secret Hideout - Secret Hideout
- See-Saw Films - See-Saw Films
- Serendipity Pictures - Serendipity Pictures
- Shaw Brothers
- Show East - Show East
- Showtime Networks - Showtime Networks
- Sil-Metropole Organisation - Sil-Metropole Organisation
@ -461,6 +469,7 @@ dynamic_collections:
- Studio 8 - Studio 8
- Studio Babelsberg - Studio Babelsberg
- Studio Dragon - Studio Dragon
- Studio Live
- STX Entertainment - STX Entertainment
- Summit Entertainment - Summit Entertainment
- Syfy - Syfy
@ -477,6 +486,7 @@ dynamic_collections:
- The Littlefield Company - The Littlefield Company
- The Mark Gordon Company - The Mark Gordon Company
- The Sea Change Project - The Sea Change Project
- The Stone Quarry
- The Weinstein Company - The Weinstein Company
- Tim Burton Productions - Tim Burton Productions
- TOHO - TOHO

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 51 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

View file

@ -847,6 +847,12 @@ overlays:
Dino De Laurentiis Company: Dino De Laurentiis Company:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Disney Television Animation:
template: [name: standard, name: studios]
DisneyToon Studios:
template: [name: standard, name: studios]
Don Simpson Jerry Bruckheimer Films: Don Simpson Jerry Bruckheimer Films:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -862,6 +868,9 @@ overlays:
DreamWorks Pictures: DreamWorks Pictures:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Dynamic Planning:
template: [name: standard, name: studios]
Eleventh Hour Films: Eleventh Hour Films:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -895,6 +904,9 @@ overlays:
Fields Entertainment: Fields Entertainment:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Film4 Productions:
template: [name: standard, name: studios]
FilmDistrict: FilmDistrict:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -940,6 +952,9 @@ overlays:
Generator Entertainment: Generator Entertainment:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Golden Harvest:
template: [name: standard, name: studios]
Gracie Films: Gracie Films:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -976,6 +991,9 @@ overlays:
Hughes Entertainment: Hughes Entertainment:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Hungry Man:
template: [name: standard, name: studios]
Hurwitz & Schlossberg Productions: Hurwitz & Schlossberg Productions:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -1249,6 +1267,9 @@ overlays:
Sculptor Media: Sculptor Media:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Screen Gems:
template: [name: standard, name: studios]
Sean Daniel Company: Sean Daniel Company:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -1264,6 +1285,9 @@ overlays:
Serendipity Pictures: Serendipity Pictures:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Shaw Brothers:
template: [name: standard, name: studios]
Show East: Show East:
template: [name: standard, name: studios] template: [name: standard, name: studios]
@ -1327,6 +1351,9 @@ overlays:
Studio Dragon: Studio Dragon:
template: [name: standard, name: studios] template: [name: standard, name: studios]
Studio Live:
template: [name: standard, name: studios]
STX Entertainment: STX Entertainment:
template: [name: standard, {name: studios, search: [STX Entertainment, STX Films]}] template: [name: standard, {name: studios, search: [STX Entertainment, STX Films]}]
@ -1375,6 +1402,9 @@ overlays:
The Sea Change Project: The Sea Change Project:
template: [name: standard, name: studios] template: [name: standard, name: studios]
The Stone Quarry:
template: [name: standard, name: studios]
The Weinstein Company: The Weinstein Company:
template: [name: standard, name: studios] template: [name: standard, name: studios]

View file

@ -2290,16 +2290,19 @@ class CollectionBuilder:
logger.warning(e) logger.warning(e)
continue continue
elif id_type == "tmdb" and not self.parts_collection: elif id_type == "tmdb" and not self.parts_collection:
input_id = int(input_id) if not isinstance(input_id, list):
if input_id not in self.ignore_ids: input_id = [input_id]
found = False for in_id in input_id:
for pl_library in self.libraries: in_id = int(in_id)
if input_id in pl_library.movie_map: if in_id not in self.ignore_ids:
found = True found = False
rating_keys = pl_library.movie_map[input_id] for pl_library in self.libraries:
break if in_id in pl_library.movie_map:
if not found and input_id not in self.missing_movies: found = True
self.missing_movies.append(input_id) rating_keys = pl_library.movie_map[in_id]
break
if not found and in_id not in self.missing_movies:
self.missing_movies.append(in_id)
elif id_type == "tvdb_season" and (self.builder_level == "season" or self.playlist): elif id_type == "tvdb_season" and (self.builder_level == "season" or self.playlist):
tvdb_id, season_num = input_id.split("_") tvdb_id, season_num = input_id.split("_")
tvdb_id = int(tvdb_id) tvdb_id = int(tvdb_id)

View file

@ -327,21 +327,18 @@ class ConfigFile:
def check_next(next_data): def check_next(next_data):
if isinstance(next_data, dict): if isinstance(next_data, dict):
for d in next_data: return {k: check_next(v) for k, v in next_data.items()}
out = check_next(next_data[d])
if out:
next_data[d] = out
elif isinstance(next_data, list): elif isinstance(next_data, list):
for d in next_data: return [check_next(d) for d in next_data]
check_next(d)
else: else:
for secret, secret_value in self.secrets.items(): for secret, secret_value in secrets.items():
for test in [secret, secret.upper().replace("-", "_")]: for test in [secret, secret.upper().replace("-", "_")]:
if f"<<{test}>>" in str(next_data): if f"<<{test}>>" in str(next_data):
return str(next_data).replace(f"<<{test}>>", secret_value) return str(next_data).replace(f"<<{test}>>", secret_value)
if str(next_data).startswith("<<") and str(next_data).endswith(">>"):
return None
return next_data return next_data
if self.secrets: check_next(self.data)
check_next(self.data)
def check_for_attribute(data, attribute, parent=None, test_list=None, translations=None, default=None, do_print=True, default_is_none=False, req_default=False, var_type="str", throw=False, save=True, int_min=0, int_max=None): def check_for_attribute(data, attribute, parent=None, test_list=None, translations=None, default=None, do_print=True, default_is_none=False, req_default=False, var_type="str", throw=False, save=True, int_min=0, int_max=None):
endline = "" endline = ""
@ -1165,13 +1162,15 @@ class ConfigFile:
params["plex"][attr] = check_for_attribute(lib, attr, parent="plex", var_type="bool", save=False, throw=True) params["plex"][attr] = check_for_attribute(lib, attr, parent="plex", var_type="bool", save=False, throw=True)
except Failed: except Failed:
test_attr = lib["plex"][attr] if "plex" in lib and attr in lib["plex"] and lib["plex"][attr] else self.general["plex"][attr] test_attr = lib["plex"][attr] if "plex" in lib and attr in lib["plex"] and lib["plex"][attr] else self.general["plex"][attr]
params["plex"][attr] = False
if test_attr is not True and test_attr is not False: if test_attr is not True and test_attr is not False:
params["plex"][attr] = False
try: try:
util.schedule_check(attr, test_attr, current_time, self.run_hour) util.schedule_check(attr, test_attr, current_time, self.run_hour)
params["plex"][attr] = True params["plex"][attr] = True
except NotScheduled: except NotScheduled:
logger.info(f"Skipping Operation Not Scheduled for {test_attr}") logger.info(f"Skipping Operation Not Scheduled for {test_attr}")
else:
params["plex"][attr] = test_attr
if params["plex"]["url"].lower() == "env": if params["plex"]["url"].lower() == "env":
params["plex"]["url"] = self.env_plex_url params["plex"]["url"] = self.env_plex_url

View file

@ -1,16 +1,16 @@
arrapi==1.4.13 arrapi==1.4.13
GitPython==3.1.43 GitPython==3.1.43
lxml==5.2.2 lxml==5.3.0
num2words==0.5.13 num2words==0.5.13
pathvalidate==3.2.0 pathvalidate==3.2.0
pillow==10.4.0 pillow==10.4.0
PlexAPI==4.15.14 PlexAPI==4.15.15
psutil==6.0.0 psutil==6.0.0
python-dotenv==1.0.1 python-dotenv==1.0.1
python-dateutil==2.9.0.post0 python-dateutil==2.9.0.post0
requests==2.32.3 requests==2.32.3
tenacity==8.4.2 tenacity==9.0.0
ruamel.yaml==0.18.6 ruamel.yaml==0.18.6
schedule==1.2.2 schedule==1.2.2
setuptools==70.2.0 setuptools==72.1.0
tmdbapis==1.2.16 tmdbapis==1.2.16