|
|
@ -6,6 +6,7 @@ import logging
|
|
|
|
import json
|
|
|
|
import json
|
|
|
|
import requests
|
|
|
|
import requests
|
|
|
|
import semver
|
|
|
|
import semver
|
|
|
|
|
|
|
|
import sys
|
|
|
|
|
|
|
|
|
|
|
|
from shutil import rmtree
|
|
|
|
from shutil import rmtree
|
|
|
|
from zipfile import ZipFile
|
|
|
|
from zipfile import ZipFile
|
|
|
@ -14,6 +15,11 @@ from .get_args import args
|
|
|
|
from .config import settings
|
|
|
|
from .config import settings
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def deprecated_python_version():
|
|
|
|
|
|
|
|
# return True if Python version is deprecated
|
|
|
|
|
|
|
|
return sys.version_info.major == 2 or (sys.version_info.major == 3 and sys.version_info.minor < 8)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def check_releases():
|
|
|
|
def check_releases():
|
|
|
|
releases = []
|
|
|
|
releases = []
|
|
|
|
url_releases = 'https://api.github.com/repos/morpheus65535/Bazarr/releases?per_page=100'
|
|
|
|
url_releases = 'https://api.github.com/repos/morpheus65535/Bazarr/releases?per_page=100'
|
|
|
@ -62,13 +68,26 @@ def check_if_new_update():
|
|
|
|
with open(os.path.join(args.config_dir, 'config', 'releases.txt'), 'r') as f:
|
|
|
|
with open(os.path.join(args.config_dir, 'config', 'releases.txt'), 'r') as f:
|
|
|
|
data = json.load(f)
|
|
|
|
data = json.load(f)
|
|
|
|
if not args.no_update:
|
|
|
|
if not args.no_update:
|
|
|
|
|
|
|
|
release = None
|
|
|
|
if use_prerelease:
|
|
|
|
if use_prerelease:
|
|
|
|
|
|
|
|
if deprecated_python_version:
|
|
|
|
|
|
|
|
release = next((item['name'].lstrip('v') for item in data if
|
|
|
|
|
|
|
|
semver.VersionInfo.parse('1.3.1') > semver.VersionInfo.parse(item['name'].lstrip('v'))))
|
|
|
|
|
|
|
|
else:
|
|
|
|
release = next((item for item in data), None)
|
|
|
|
release = next((item for item in data), None)
|
|
|
|
|
|
|
|
else:
|
|
|
|
|
|
|
|
if deprecated_python_version:
|
|
|
|
|
|
|
|
next((item['name'].lstrip('v') for item in data if
|
|
|
|
|
|
|
|
not item['prerelease'] and semver.VersionInfo.parse('1.3.1') > semver.VersionInfo.parse(
|
|
|
|
|
|
|
|
item['name'].lstrip('v'))))
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
release = next((item for item in data if not item["prerelease"]), None)
|
|
|
|
release = next((item for item in data if not item["prerelease"]), None)
|
|
|
|
|
|
|
|
|
|
|
|
if release:
|
|
|
|
if release and 'name' in release:
|
|
|
|
logging.debug('BAZARR last release available is {}'.format(release['name']))
|
|
|
|
logging.debug('BAZARR last release available is {}'.format(release['name']))
|
|
|
|
|
|
|
|
if deprecated_python_version:
|
|
|
|
|
|
|
|
logging.warning('BAZARR is using a deprecated Python version, you must update Python to get latest '
|
|
|
|
|
|
|
|
'version available.')
|
|
|
|
|
|
|
|
|
|
|
|
current_version = None
|
|
|
|
current_version = None
|
|
|
|
try:
|
|
|
|
try:
|
|
|
|