[28] Pr updates (#2188)
1
.github/.wordlist.txt
vendored
|
@ -67,6 +67,7 @@ diiivoycolor
|
|||
DIR
|
||||
dir
|
||||
DiskStation
|
||||
DisneyToon
|
||||
dockerfile
|
||||
dockerfiles
|
||||
DockerHub
|
||||
|
|
2
.github/workflows/validate-pull.yml
vendored
|
@ -56,7 +56,7 @@ jobs:
|
|||
done
|
||||
|
||||
- name: Run Spellcheck
|
||||
uses: rojopolis/spellcheck-github-actions@0.38.0
|
||||
uses: rojopolis/spellcheck-github-actions@0.40.0
|
||||
|
||||
docker-build-pull:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
13
CHANGELOG
|
@ -1,9 +1,10 @@
|
|||
# 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 PlexAPI requirement to 4.15.14
|
||||
Update PlexAPI requirement to 4.15.15
|
||||
Update psutil requirement to 6.0.0
|
||||
Update setuptools requirement to 70.2.0
|
||||
Update setuptools requirement to 72.1.0
|
||||
|
||||
# Removed Features
|
||||
|
||||
|
@ -12,6 +13,7 @@ Added [`letterboxd_user_lists`](https://kometa.wiki/en/latest/files/dynamic_type
|
|||
|
||||
# Updates
|
||||
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
|
||||
|
||||
|
@ -20,6 +22,9 @@ Fixed multiple anime `int()` Errors
|
|||
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 `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
|
||||
|
|
2
VERSION
|
@ -1 +1 @@
|
|||
2.0.2-build27
|
||||
2.0.2-build28
|
||||
|
|
|
@ -301,11 +301,14 @@ dynamic_collections:
|
|||
- DC Comics
|
||||
- Dimension Films
|
||||
- Dino De Laurentiis Company
|
||||
- Disney Television Animation
|
||||
- DisneyToon Studios
|
||||
- Don Simpson Jerry Bruckheimer Films
|
||||
- Doozer
|
||||
- Dreams Salon Entertainment Culture
|
||||
- DreamWorks Studios
|
||||
- DreamWorks Pictures
|
||||
- Dynamic Planning
|
||||
- Eleventh Hour Films
|
||||
- EMJAG Productions
|
||||
- Endeavor Content
|
||||
|
@ -317,6 +320,7 @@ dynamic_collections:
|
|||
- Exposure Labs
|
||||
- Fandango
|
||||
- Fields Entertainment
|
||||
- Film4 Productions
|
||||
- FilmDistrict
|
||||
- FilmNation Entertainment
|
||||
- Flynn Picture Company
|
||||
|
@ -332,6 +336,7 @@ dynamic_collections:
|
|||
- Gary Sanchez Productions
|
||||
- Gaumont
|
||||
- Generator Entertainment
|
||||
- Golden Harvest
|
||||
- Gracie Films
|
||||
- Green Hat Films
|
||||
- Grindstone Entertainment Group
|
||||
|
@ -344,6 +349,7 @@ dynamic_collections:
|
|||
- HBO
|
||||
- Heyday Films
|
||||
- Hughes Entertainment
|
||||
- Hungry Man
|
||||
- Hurwitz & Schlossberg Productions
|
||||
- Hyperobject Industries
|
||||
- Icon Entertainment International
|
||||
|
@ -435,11 +441,13 @@ dynamic_collections:
|
|||
- Scion Films
|
||||
- Scott Free Productions
|
||||
- Sculptor Media
|
||||
- Screen Gems
|
||||
- Sean Daniel Company
|
||||
- Searchlight Pictures
|
||||
- Secret Hideout
|
||||
- See-Saw Films
|
||||
- Serendipity Pictures
|
||||
- Shaw Brothers
|
||||
- Show East
|
||||
- Showtime Networks
|
||||
- Sil-Metropole Organisation
|
||||
|
@ -461,6 +469,7 @@ dynamic_collections:
|
|||
- Studio 8
|
||||
- Studio Babelsberg
|
||||
- Studio Dragon
|
||||
- Studio Live
|
||||
- STX Entertainment
|
||||
- Summit Entertainment
|
||||
- Syfy
|
||||
|
@ -477,6 +486,7 @@ dynamic_collections:
|
|||
- The Littlefield Company
|
||||
- The Mark Gordon Company
|
||||
- The Sea Change Project
|
||||
- The Stone Quarry
|
||||
- The Weinstein Company
|
||||
- Tim Burton Productions
|
||||
- TOHO
|
||||
|
|
After Width: | Height: | Size: 33 KiB |
BIN
defaults/overlays/images/studio/bigger/DisneyToon Studios.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
defaults/overlays/images/studio/bigger/Dynamic Planning.png
Normal file
After Width: | Height: | Size: 41 KiB |
BIN
defaults/overlays/images/studio/bigger/Film4 Productions.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
defaults/overlays/images/studio/bigger/Golden Harvest.png
Normal file
After Width: | Height: | Size: 7.9 KiB |
BIN
defaults/overlays/images/studio/bigger/Hungry Man.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
defaults/overlays/images/studio/bigger/Screen Gems.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
defaults/overlays/images/studio/bigger/Shaw Brothers.png
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
defaults/overlays/images/studio/bigger/Studio Live.png
Normal file
After Width: | Height: | Size: 51 KiB |
BIN
defaults/overlays/images/studio/bigger/The Stone Quarry.png
Normal file
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 30 KiB |
BIN
defaults/overlays/images/studio/standard/DisneyToon Studios.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
defaults/overlays/images/studio/standard/Dynamic Planning.png
Normal file
After Width: | Height: | Size: 37 KiB |
BIN
defaults/overlays/images/studio/standard/Film4 Productions.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
defaults/overlays/images/studio/standard/Golden Harvest.png
Normal file
After Width: | Height: | Size: 7 KiB |
BIN
defaults/overlays/images/studio/standard/Hungry Man.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
defaults/overlays/images/studio/standard/Screen Gems.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
defaults/overlays/images/studio/standard/Shaw Brothers.png
Normal file
After Width: | Height: | Size: 34 KiB |
BIN
defaults/overlays/images/studio/standard/Studio Live.png
Normal file
After Width: | Height: | Size: 38 KiB |
BIN
defaults/overlays/images/studio/standard/The Stone Quarry.png
Normal file
After Width: | Height: | Size: 23 KiB |
|
@ -847,6 +847,12 @@ overlays:
|
|||
Dino De Laurentiis Company:
|
||||
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:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -862,6 +868,9 @@ overlays:
|
|||
DreamWorks Pictures:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Dynamic Planning:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Eleventh Hour Films:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -895,6 +904,9 @@ overlays:
|
|||
Fields Entertainment:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Film4 Productions:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
FilmDistrict:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -940,6 +952,9 @@ overlays:
|
|||
Generator Entertainment:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Golden Harvest:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Gracie Films:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -976,6 +991,9 @@ overlays:
|
|||
Hughes Entertainment:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Hungry Man:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Hurwitz & Schlossberg Productions:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -1249,6 +1267,9 @@ overlays:
|
|||
Sculptor Media:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Screen Gems:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Sean Daniel Company:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -1264,6 +1285,9 @@ overlays:
|
|||
Serendipity Pictures:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Shaw Brothers:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Show East:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
@ -1327,6 +1351,9 @@ overlays:
|
|||
Studio Dragon:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
Studio Live:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
STX Entertainment:
|
||||
template: [name: standard, {name: studios, search: [STX Entertainment, STX Films]}]
|
||||
|
||||
|
@ -1375,6 +1402,9 @@ overlays:
|
|||
The Sea Change Project:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
The Stone Quarry:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
The Weinstein Company:
|
||||
template: [name: standard, name: studios]
|
||||
|
||||
|
|
|
@ -2290,16 +2290,19 @@ class CollectionBuilder:
|
|||
logger.warning(e)
|
||||
continue
|
||||
elif id_type == "tmdb" and not self.parts_collection:
|
||||
input_id = int(input_id)
|
||||
if input_id not in self.ignore_ids:
|
||||
found = False
|
||||
for pl_library in self.libraries:
|
||||
if input_id in pl_library.movie_map:
|
||||
found = True
|
||||
rating_keys = pl_library.movie_map[input_id]
|
||||
break
|
||||
if not found and input_id not in self.missing_movies:
|
||||
self.missing_movies.append(input_id)
|
||||
if not isinstance(input_id, list):
|
||||
input_id = [input_id]
|
||||
for in_id in input_id:
|
||||
in_id = int(in_id)
|
||||
if in_id not in self.ignore_ids:
|
||||
found = False
|
||||
for pl_library in self.libraries:
|
||||
if in_id in pl_library.movie_map:
|
||||
found = True
|
||||
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):
|
||||
tvdb_id, season_num = input_id.split("_")
|
||||
tvdb_id = int(tvdb_id)
|
||||
|
|
|
@ -327,21 +327,18 @@ class ConfigFile:
|
|||
|
||||
def check_next(next_data):
|
||||
if isinstance(next_data, dict):
|
||||
for d in next_data:
|
||||
out = check_next(next_data[d])
|
||||
if out:
|
||||
next_data[d] = out
|
||||
return {k: check_next(v) for k, v in next_data.items()}
|
||||
elif isinstance(next_data, list):
|
||||
for d in next_data:
|
||||
check_next(d)
|
||||
return [check_next(d) for d in next_data]
|
||||
else:
|
||||
for secret, secret_value in self.secrets.items():
|
||||
for secret, secret_value in secrets.items():
|
||||
for test in [secret, secret.upper().replace("-", "_")]:
|
||||
if f"<<{test}>>" in str(next_data):
|
||||
return str(next_data).replace(f"<<{test}>>", secret_value)
|
||||
if str(next_data).startswith("<<") and str(next_data).endswith(">>"):
|
||||
return None
|
||||
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):
|
||||
endline = ""
|
||||
|
@ -1165,13 +1162,15 @@ class ConfigFile:
|
|||
params["plex"][attr] = check_for_attribute(lib, attr, parent="plex", var_type="bool", save=False, throw=True)
|
||||
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]
|
||||
params["plex"][attr] = False
|
||||
if test_attr is not True and test_attr is not False:
|
||||
params["plex"][attr] = False
|
||||
try:
|
||||
util.schedule_check(attr, test_attr, current_time, self.run_hour)
|
||||
params["plex"][attr] = True
|
||||
except NotScheduled:
|
||||
logger.info(f"Skipping Operation Not Scheduled for {test_attr}")
|
||||
else:
|
||||
params["plex"][attr] = test_attr
|
||||
|
||||
if params["plex"]["url"].lower() == "env":
|
||||
params["plex"]["url"] = self.env_plex_url
|
||||
|
|
|
@ -1,16 +1,16 @@
|
|||
arrapi==1.4.13
|
||||
GitPython==3.1.43
|
||||
lxml==5.2.2
|
||||
lxml==5.3.0
|
||||
num2words==0.5.13
|
||||
pathvalidate==3.2.0
|
||||
pillow==10.4.0
|
||||
PlexAPI==4.15.14
|
||||
PlexAPI==4.15.15
|
||||
psutil==6.0.0
|
||||
python-dotenv==1.0.1
|
||||
python-dateutil==2.9.0.post0
|
||||
requests==2.32.3
|
||||
tenacity==8.4.2
|
||||
tenacity==9.0.0
|
||||
ruamel.yaml==0.18.6
|
||||
schedule==1.2.2
|
||||
setuptools==70.2.0
|
||||
setuptools==72.1.0
|
||||
tmdbapis==1.2.16
|