From c2b6ec234e68257d342a2ac77e8cc4af8f4d3013 Mon Sep 17 00:00:00 2001 From: JackDandy Date: Thu, 12 Nov 2020 16:57:57 +0000 Subject: [PATCH] Add to config/General, "Package updates" and list packages, check packages by default on Windows, others must enable. Change simplify section config/General/Updates. Add check for package updates to menu item action "Check for Updates". Add known failures are cleared for a fresh check when "Check for Updates" is used. Change add pycryptodome for py7z to recommended.txt Change add prebuilt AMD64 python-Levenshtein to recommended.txt. Change add cryptography to recommended.txt as is now deprecated from 2.7 Change add pip and setuptools to piper to control installed versions under py2. Change move lib path registration to earlier in startup because needed by piper. Change improve performance by using pkg_resources calls instead of cmdline pip. Change add restart trigger during loading, use changed pid of server as trigger. Change don't load shows at startup, or save at shutdown when doing an update restart. Change minimise redundant threads at startup when an update restart is pending. Change handle case where pip may output what appears a failure, but isn't. Change add capture of requirements parse errors to assist when adding new specs. Change auto-install Cheetah dependency on first time installations (tested on Win). Change Cheetah to fallback to setup.py type install instead of pure binary, this addresses install issues when reverting a version, and no doubt other things. Changed cmdline_runner migrated to sg_helpers.py --- CHANGES.md | 8 + gui/slick/interfaces/default/config.tmpl | 4 +- gui/slick/interfaces/default/config_general.tmpl | 116 +++++--- gui/slick/js/loadingStartup.js | 15 +- lib/encodingKludge.py | 59 +++- lib/sg_helpers.py | 69 ++++- recommended.txt | 26 +- requirements.txt | 2 +- sickbeard/__init__.py | 126 ++++++--- sickbeard/config.py | 40 ++- sickbeard/helpers.py | 27 -- sickbeard/notifiers/synoindex.py | 2 +- sickbeard/notifiers/synologynotifier.py | 2 +- sickbeard/piper.py | 345 +++++++++++++++++++++++ sickbeard/postProcessor.py | 4 +- sickbeard/show_updater.py | 2 +- sickbeard/version_checker.py | 110 ++++++-- sickbeard/webserve.py | 32 ++- sickgear.py | 121 ++++---- 19 files changed, 870 insertions(+), 240 deletions(-) create mode 100644 sickbeard/piper.py diff --git a/CHANGES.md b/CHANGES.md index b1274d5..267dc4b 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -1,5 +1,13 @@ ### 0.24.0 (202x-xx-xx xx:xx:00 UTC) +* Add to config/General, "Package updates" and list packages, check packages by default on Windows, others must enable +* Change simplify section config/General/Updates +* Add check for package updates to menu item action "Check for Updates" +* Add known failures are cleared for a fresh check when "Check for Updates" is used +* Change auto-install Cheetah dependency on first time installations (tested on Win) +* Change add cryptography to recommended.txt +* Change add pycryptodome to recommended.txt +* Change add prebuilt AMD64 python-Levenshtein to recommended.txt * Change initialise Manage/Media Process folder and method from Config/Media Process when no previous values are stored * Change remember Manage/Media Process folder and method when button 'Process' is used * Change abbreviate long titles under menu tab diff --git a/gui/slick/interfaces/default/config.tmpl b/gui/slick/interfaces/default/config.tmpl index 85c7784..153b2af 100644 --- a/gui/slick/interfaces/default/config.tmpl +++ b/gui/slick/interfaces/default/config.tmpl @@ -24,8 +24,8 @@ BRANCH: #echo $sg_str('BRANCH') or 'UNKNOWN'# @ py#echo '.'.join(['%s' % x for x in sys.version_info[0:3]])# / COMMIT: #echo ($sg_str('CUR_COMMIT_HASH')[0:7] or 'UNKNOWN') + ('', ' @ ')[bool($version)]#$version
This is BETA software
-#if not $sg_var('VERSION_NOTIFY') and not $sg_var('EXT_UPDATES'): - You don't have version checking turned on, see "Check software updates" in Config > General. +#if not $sg_var('UPDATE_NOTIFY') and not $sg_var('EXT_UPDATES'): + No checks are run for outdated software, see "Software updates" in Config > General. #end if diff --git a/gui/slick/interfaces/default/config_general.tmpl b/gui/slick/interfaces/default/config_general.tmpl index 4930773..3da97c4 100644 --- a/gui/slick/interfaces/default/config_general.tmpl +++ b/gui/slick/interfaces/default/config_general.tmpl @@ -1,13 +1,15 @@ -#import sickbeard +#from sys import version_info #import datetime #import locale #import operator +#import sickbeard #from sickbeard import config, metadata #from sickbeard.metadata.generic import GenericMetadata #from sickbeard.common import * #from sickbeard.db import db_supports_backup #from sickbeard.helpers import anon_url, maybe_plural #from sickbeard.logger import reverseNames as file_logging_presets +#from sickbeard.piper import check_pip_env #from sickbeard.sgdatetime import * <% def sg_var(varname, default=False): return getattr(sickbeard, varname, default) %>#slurp# <% def sg_str(varname, default=''): return getattr(sickbeard, varname, default) %>#slurp# @@ -168,50 +170,94 @@

Updates

-

Options for software updates.

+

Options for software, package and alternative shownames/numbers.

#if not $sg_var('EXT_UPDATES')
- -
+ Software updates + + -
- -
+ -
- + + + +
-