Fixed a issue that was causing show status to be set to NoneType randomly.
Fixed misc comparisons that were causing improper code executions.
Misc PEP8 coding fixes.
Minor code improvements made to IndexerAPI modules.
New subtitle config feature which allows you to control if subtitles get there language codes appened to there filenames or not.
Added El Rey Network image.
Added code for generating imdbID's for shows missing there imdbID's such as shows from TVRage indexer..
Removed Shove module and depends.
Logging now automatically omits sensitive data such as usernames, passwords, and api keys and replaces them with asterisks in both log file and console.
Fixed versionChecker module to confirm it created a updater class before attempting to execute functions to avoid NoneType errors.
Add send2trash, a small package that sends files to the Trash (or Recycle Bin) natively and on all platforms. If send2trash is found not compatible, the user can use the default delete and manually delete failed send2trash files.
Add General Config/Misc/Send to trash for actions that involve removing shows and log rotation.
Add handling for the exception raised while deleting a show and show folder no longer exists.
Added addiontional check for checking of the self.status is filled with the show status. If not, debug message is generated and the show is not updated.
Added new show option, delete now removes show from showlist and deletes from hard drive, remove will just remove show from showlist but leave files on hard drive untouched
Provider getURL and downloadResult functions now removed and replaced with ones from helpers.py to help slim the code down plus allow more better control over request sessions.
Removed TVTumbler code.
Fixed HDBits provider.
Fixed config settings that were ment to be booleans but instead where set as str or int, should help resolve random html errors.
XEM Refresh check re-coded.
NameParser code for creating show object has been changed to only attempt at the very end once its found the bestMatch result, helps on resources and performance.
Fixed several providers and ssl cert verify issues.
Air-by-date shows now automatically get there respective season/episode numbers during release parsing.
Indexer mapping now uses indexer api calls to gather its information and then stores it to a new table called indexer_mapping for instant lookups later on.
Fixed trakt related issues for adding new shows and syncing.
Centered items at bottom of pages to just look a little nicer and fit properly.
Fixed charmap issues for anime show names.
Fixed issues with display show page and epCat key errors.
Fixed duplicate log messages for clearing provider caches.
Fixed issues with email notifier ep names not properly being encoded to UTF-8.
TVDB<->TVRAGE Indexer ID mapping is now performed on demand to be used when needed such as newznab providers can be searched with tvrage_id's and some will return tvrage_id's that later can be used to create show objects from for faster and more accurate name parsing, mapping is done via Trakt API calls.
Added stop event signals to schedualed tasks, SR now waits indefinate till task has been fully stopped before completing a restart or shutdown event.
NameParserCache is now persistent and stores 200 parsed results at any given time for quicker lookups and better performance, this helps maintain results between updates or shutdown/startup events.
Black and White lists for anime now only get used for anime shows as intended, performance gain for non-anime shows that dont need to load these lists.
Internal name cache now builds it self on demand when needed per show request plus checks if show is already in cache and if true exits routine to save time.
Schedualer and QueueItems classes are now a sub-class of threading.Thread and a stop threading event signal has been added to each.
If I forgot to list something it doesn't mean its not fixed so please test and report back if anything is wrong or has been corrected by this new release.
Fix for mass update edits of shows, bwlist no longer gets updated during this process as its not required. You can not change your root dir even if location does not exist so long as you have create_missing_show_dirs=1 in your config set so that there be auto-created during the next post-processing of a episode.
Only set status to UNAIRED if current status is SKIPPED, UNAIRED, UNKNOWN or WANTED, should prevent re-downloading of early releases that are already downloaded and deleted (status IGNORED) or archived.