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
Change remember Manage/Media Process folder and method when button 'Process' is used.
Change code style, use `cur_` in `for` loop vars.
Tidy ups, and address code warnings.
Add option "Backup database plan" to config/general/advanced if feature available.
Change save backup DBs with a date_time fmt that is sortable by filename in any file manager.
Change take maximum usage from the helpers.make_dirs function.
Change tweak var names to be consistent.
Fix KeyError 'Backup' at startup.
Fix lastUpdate update error with using wrong db.
Add config/General/Updates/Alias Process button, minimum interval for a fetch of custom names/numbering is 30 mins.
Add Export alternatives button to edit show.
Change improve tooltip over show title in display show for multiple alternatives.
Add display season alternatives on hover over season titles in display show.
Change single digit season display to zero-padded double digits in edit show.
Change add note on edit show for season specific search rule.
Add mark next to season titles that have exceptions.
Add support for centralised sg alternative names and numbers.
Change sg alts can overwrite scene number field only if field value is blank.
Change add note on edit show for season specific search rule.
Change add has_season_exceptions to control newznab id search.
Change add season exceptions to torrent providers.
Add env var NO_ALT_GET (1 = only use cache json).
Change give remove_file functions time to process.
Change selection of allPossibleShowNames to be all seasons not season 1.
Change add allPossibleShowNames unit test.
Change improve order of exceptions on ui.
Change API response fieldname `global_exclude_ignore` to `global exclude ignore` in sg.listignorewords endpoint.
Change API response fieldname `global_exclude_require` to `global exclude require` in sg.listignorewords endpoint.
Change pre filter words that are are only in global ignore/require list for show specific lists for api set functions.
Change API sg.listignorewords response data type for `global exclude ignore` to list.
Change API sg.listrequirewords response data type for `global exclude require` to list.
Change consolidate _create_ignore_words and _create_require_words into _create_words.
Fix missing regex parameter for show require words in proper search.
Change increase API version to 13.
Fix apiBuilder.tmpl.
Add the following to CHANGES.md for hotfix release 0.21.43...
Change API rename sg.`listrequiedwords` typo endpoint to sg.`listrequirewords`.
Change API rename sg.`setrequiredwords` endpoint to sg.`setrequirewords`.
Change API responses of sg.listrequirewords and sg.setrequirewords to `require words` instead of `required words`.
Add API aliases for old endpoint names with old responses for backwards compatibility.
Add missing parameter 'failed' to sg.postprocess.
Fix legacy command help for episode.search.
Fix sg.show.ratefanart.
Fix sg.logs command wrongly mapped to legacy logs command.
Change return API data depending on old/new method call used for require words.
Change add missing parameter docs for CMD_SickGearSetDefaults.
Fix API CMD_SickGearSetDefaults save to config.
Change increase API version to 12.
Change remove whitespaces from parameter docu.
Change replace "ignore" with "word" in apibuilder endpoint tests.
Fix typos.
Clean shows ignore, require list before saving global lists.
Clean require, ignore words after db upgrade.
Add global ignore, require words cleanup to show_updater.
Clean editShow ignore/require list.
Also cleanup exclude lists of shows.
Optionally restore excludes from previous downgrade.
Add lib folder to all_tests.py to fix local tests.
Add shows ignore/require words to pass_wordlist_checks if show_obj is given.
Add output to SG log when a new Kodi Add-on version is available for upgrade.
Change Kodi Add-on/"What's new" list order to be latest version info at top.
Fix a rare post processing issue that created `dictionary changed size` error.
Fix ensure PySocks is available for Requests/urllib3.
Fix fanart image update issue.
Change add examples to config/general/advanced/"Proxy host" that show scheme and authentication usage.
Change add warning that Kodi Add-on requires IP to setting config/general/"Allow IP use for connections".
Change About page version string.
Change migrate core objects TVShow and TVEpisode and everywhere that these objects affect.
Add message to logs and disable ui backlog buttons when no media provider has active and/or scheduled searching enabled.
Change views for py3 compat.
Change set default runtime of 5 mins if none is given for layout Day by Day.
Add OpenSubtitles authentication support to config/Subtitles/Subtitles Plugin.
Add "Enforce media hash match" to config/Subtitles Plugin/Opensubtitles for accurate subs if enabled, but if disabled, search failures will fallback to use less reliable subtitle results.
Add Apprise 0.8.0 (6aa52c3).
Add hachoir_py3 3.0a6 (5b9e05a).
Add sgmllib3k 1.0.0
Update soupsieve 1.9.1 (24859cc) to soupsieve_py2 1.9.5 (6a38398)
Add soupsieve_py3 2.0.0.dev (69194a2).
Add Tornado_py3 Web Server 6.0.3 (ff985fe).
Add xmlrpclib_to 0.1.1 (c37db9e).
Remove ancient Growl lib 0.1
Remove xmltodict library.
Change requirements.txt for Cheetah3 to minimum 3.2.4
Change update sabToSickBeard.
Change update autoProcessTV.
Change remove Twitter notifier.
Update NZBGet Process Media extension, SickGear-NG 1.7 → 2.4
Update Kodi addon 1.0.3 → 1.0.4
Update ADBA for py3.
Update Beautiful Soup 4.8.0 (r526) to 4.8.1 (r531).
Update Send2Trash 1.3.0 (a568370) to 1.5.0 (66afce7).
Update soupsieve 1.9.1 (24859cc) to 1.9.5 (6a38398).
Change use GNTP (Growl Notification Transport Protocol) from Apprise.
Change add multi host support to Growl notifier.
Fix Growl notifier when using empty password.
Change update links for Growl notifications.
Change deprecate confg/Notifications/Growl password field as these are now stored with host setting.
Fix prevent infinite memoryError from a particular jpg data structure.
Change subliminal for py3.
Change enzyme for py3.
Change browser_ua for py3.
Change feedparser for py3 (sgmlib is no longer available on py3 as standardlib so added ext lib)
Fix Guessit.
Fix parse_xml for py3.
Fix name parser with multi eps for py3.
Fix tvdb_api fixes for py3 (search show).
Fix config/media process to only display "pattern is invalid" qtip on "Episode naming" tab if the associated field is actually visible. Also, if the field becomes hidden due to a setting change, hide any previously displayed qtip.
Note for Javascript::getelementbyid (or $('tag[id="<name>"')) is required when an id is being searched in the dom due to ":" used in a shows id name.
Change download anidb xml files to main cache folder and use adba lib folder as a last resort.
Change create get anidb show groups as centralised helper func and consolidate dupe code.
Change move anidb related functions to newly renamed anime.py (from blacklistandwhitelist.py).
Change str encode hex no longer exits in py3, use codecs.encode(...) instead.
Change fix b64decode on py3 returns bytestrings.
Change use binary read when downloading log file via browser to prevent any encoding issues.
Change add case insensitive ordering to anime black/whitelist.
Fix anime groups list not excluding whitelisted stuff.
Change add Windows utf8 fix ... see: ytdl-org/youtube-dl#820
Change if no qualities are wanted, exit manual search thread.
Fix keepalive for py3 process media.
Change add a once a month update of tvinfo show mappings to the daily updater.
Change autocorrect ids of new shows by updating from -8 to 31 days of the airdate of episode one.
Add next run time to Manage/Show Tasks/Daily show update.
Change when fetching imdb data, if imdb id is an episode id then try to find and use real show id.
Change delete diskcache db in imdbpie when value error (due to change in Python version).
Change during startup, cleanup any _cleaner.pyc/o to prevent issues when switching python versions.
Add .pyc cleaner if python version is switched.
Change replace deprecated gettz_db_metadata() and gettz.
Change rebrand "SickGear PostProcessing script" to "SickGear Process Media extension".
Change improve setup guide to use the NZBGet version to minimise displayed text based on version.
Change NZBGet versions prior to v17 now told to upgrade as those version are no longer supported - code has actually exit on start up for some time but docs were outdated.
Change comment out code and unused option sg_base_path.
Change supported Python version 2.7.9-2.7.18 inclusive expanded to 3.7.1-3.8.1 inclusive.
Change pidfile creation under Linux 0o644.
Make logger accept lists to output continuously using the log_lock instead of split up by other processes.
Fix long path issues with Windows process media.
Add search setting for qBittorrent client "Start torrent paused".
Add search setting for qBittorrent client "Add release at top priority".
Add option choose custom variable to use for label in rTorrent Torrent Results.
Add warning to rTorrent users not to use space in label.
Change overhaul DiskStation client to add compatibility for latest API.
Change improve Synology DownloadStation functions.
Add search setting for DiskStation client "Start torrent paused".
Fix the priority set for snatched items is now also set for episodes without air date.
Change NZBGet client to use property .priority of SearchResult.
Add config General/Interface/"Allow IP use for connections". The option is enabled by default and does not change existing behaviour to allow a browser to connect to an instance using server IP address.
Change add WrongHostWebHandler to handle a bad hostname request with a 404 response.
Fix Shazbat torrent provider backlog issue.
Add multiple SG apikey support.
Change add apikey name to ERROR log messages.
Change add logging of errors from api.
Change add remote ip to error message.
Change add print command name for api in debug log.
Change add warning message to log if old Sick-Beard api call is used.
Change add an api call mapping helper for name changed functions (for printed warnings).
Change ui typo in apiBuilder.
Fix display of fanart in apibuilder.
Add help command to apiBuilder and fix help call.
Fix add shows via api.
Change fix sg.searchqueue output.
Add missing sg.show.delete parameter "full".
Add missing sg.setdefaults and sg.shutdown methods.
Change increase api version because missing sg.* methods are added.
Change fix internal api reference to old Sick-Beard method.
Change add some extra checks for Sick-Beard call add (existing) show.
Change patch imdbpie to add cachedir folder and set imdbpie cachedir in SG.
Change remove redundant _functionMaper_newmethods ... data already exists in help var of method, use this instead.
Fix force search return values.
Change centralise get old webapi call name.