Commit d1ee4b05 authored by echel0n's avatar echel0n
Browse files

Merge branch 'release/10.0.11'

parents a83747e1 c6699b7c
......@@ -2,7 +2,14 @@
 
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
 
#### [v10.0.10](https://git.sickrage.ca/SiCKRAGE/sickrage/compare/10.0.9...v10.0.10)
#### [v10.0.11](https://git.sickrage.ca/SiCKRAGE/sickrage/compare/10.0.10...v10.0.11)
- Fixed issue with show refresh tasks getting stuck due to missing dependant task being cleared prematurely [`4ddbd58`](https://git.sickrage.ca/SiCKRAGE/sickrage/commit/4ddbd581468c98eed8157c4fdd23fe33a9f50b4b)
- Refactred "Malformed air date" warnings to debug messages during loading data from series providers for episodes [`cb5551d`](https://git.sickrage.ca/SiCKRAGE/sickrage/commit/cb5551dc037d330b3dd796babb025dcc9691bc3d)
#### [10.0.10](https://git.sickrage.ca/SiCKRAGE/sickrage/compare/10.0.9...10.0.10)
> 21 February 2021
 
- Fixed issues with mass episode status editing [`3e21025`](https://git.sickrage.ca/SiCKRAGE/sickrage/commit/3e21025960645f480f6b366f9fd6d6603c874e44)
- Fixed issues with mass editing show search format and default episode status [`34e22ae`](https://git.sickrage.ca/SiCKRAGE/sickrage/commit/34e22ae4b3738a45eec384df72936e740bd55fcf)
......
{
"name": "sickrage",
"version": "10.0.10",
"version": "10.0.11",
"private": true,
"repository": {
"type": "git",
......
......@@ -11,6 +11,7 @@ attrs==19.3.0
babelfish==0.5.5
beautifulsoup4==4.9.1
bencode3==0.1.0
bleach==3.3.0
CacheControl==0.12.6
certifi==2020.6.20
cffi==1.14.1
......
[bumpversion]
current_version = 10.0.10
current_version = 10.0.11
commit = False
tag = False
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(\.(?P<release>[a-z]+)(?P<dev>\d+))?
......
sickrage/__init__.py = ee31957103672bcc905eba42109fbc90
sickrage/checksums.md5 = d41d8cd98f00b204e9800998ecf8427e
sickrage/version.txt = c4c527482498fa63ed2b8df096155b1b
sickrage/version.txt = 61354d714b3e17844515aa72e3bb8957
sickrage/autoProcessTV/hellaToSiCKRAGE.py = 9bc477abfd456aaba8d6bf46f2c59b1f
sickrage/autoProcessTV/__init__.py = bfa892dee586740a3a618d3c1955156c
sickrage/autoProcessTV/mediaToSiCKRAGE.py = f88a6679a211b1f97126c116e2c33b9c
......@@ -76,7 +76,7 @@ sickrage/core/processors/post_processor.py = d515992c73ca436c182f0d9b9277b2b0
sickrage/core/processors/__init__.py = d41d8cd98f00b204e9800998ecf8427e
sickrage/core/processors/failed_processor.py = c7d4a66b4b1e5c07a3376eb96de80e12
sickrage/core/tv/__init__.py = d41d8cd98f00b204e9800998ecf8427e
sickrage/core/tv/episode/__init__.py = e9bc59ba8bff088ec66e17aea2af2998
sickrage/core/tv/episode/__init__.py = ec0420a5b9390feb68fb08a2bbff52d8
sickrage/core/tv/episode/helpers.py = f770486a499e28c4cf2338167fff92e1
sickrage/core/tv/show/coming_episodes.py = 0d43711e559f1fbda75fc25b3485928f
sickrage/core/tv/show/__init__.py = 35291b3647ef4dbacebc60f2dfe48d39
......@@ -91,7 +91,7 @@ sickrage/core/webserver/handlers/__init__.py = 4e94a1192bc45368b8cc3cd5f6d1debc
sickrage/core/webserver/handlers/root.py = 8030bf85cd285bef19a6f89871f836b5
sickrage/core/webserver/handlers/account.py = 30300aa950324a9d27827083b4864a95
sickrage/core/webserver/handlers/history.py = 34961ffbbb07803515ded9626c7f853a
sickrage/core/webserver/handlers/base.py = ffe842e9a8d7b783628f2af68839c0f6
sickrage/core/webserver/handlers/base.py = 506e8e281c7616da6852ce25dc089b21
sickrage/core/webserver/handlers/changelog.py = 372aedb7c5e2eb2e69bffe6444c6ff88
sickrage/core/webserver/handlers/logout.py = 4abe5196987ac8bf58b00f05e9d4a4c4
sickrage/core/webserver/handlers/not_found.py = 3b7253c2d4d323cbb0dc6828d87c8d2c
......@@ -159,8 +159,8 @@ sickrage/core/webserver/static/images/backdrops/manage.jpg = 2e49098c0ed9aacf602
sickrage/core/webserver/static/images/backdrops/addshows.jpg = 7f3e186790208b63dadda09d6b91d334
sickrage/core/webserver/static/images/backdrops/home.jpg = 804dfc976638bbf45df310a3627e2d5c
sickrage/core/webserver/static/images/backdrops/schedule.jpg = 0c0e5f4dcee42bfcfb73de100f1d3015
sickrage/core/webserver/static/js/core.js.map = 6ea6cd255566b35d3350f6ec182f8dc2
sickrage/core/webserver/static/js/core.min.js = b400224bddf60af5a49e803e7c309c0c
sickrage/core/webserver/static/js/core.js.map = 60a2543e6948b796a7e80d066ec53ea9
sickrage/core/webserver/static/js/core.min.js = 41701bd4ddb884be05ea2a186b807988
sickrage/core/webserver/static/fonts/fa-solid-900.eot = 89bd2e38475e441a5cd70f663f921d61
sickrage/core/webserver/static/fonts/fa-regular-400.eot = ad3a7c0d77e09602f4ab73db3660ffd8
sickrage/core/webserver/static/fonts/fa-brands-400.eot = 0fabb6606be4c45acfeedd115d0caca4
......@@ -226,7 +226,7 @@ sickrage/core/webserver/views/manage/failed_downloads.mako = 7f4b1084557d45fb045
sickrage/core/webserver/views/errors/500.mako = dde078ba1d942aedf9e94afca17ce314
sickrage/core/webserver/views/logs/errors.mako = 5a27833f9ec45e27335e0870f8b6500b
sickrage/core/webserver/views/logs/view.mako = 9e19653304870852a7b0d7a25d1a3187
sickrage/core/queues/__init__.py = 6ae20684034ec8e22916c330e5e4f2d7
sickrage/core/queues/__init__.py = 95b39e042b76e797398d106329436d10
sickrage/core/queues/show.py = 166ed07e0c263303060efe2f5ee88008
sickrage/core/queues/postprocessor.py = b2bcd7642060906c2c21d554d114b9ee
sickrage/core/queues/search.py = 11d4fedb621eb5e9057ad15df6b77cdf
......
......@@ -136,9 +136,20 @@ class Queue(object):
self.lock.release()
self.notify_workers()
def get_task_dependants(self):
dependants = []
for x in self.tasks.copy().values():
if x.depend is not None:
dependants += x.depend
return dependants
def auto_remove_tasks(self):
dependants = self.get_task_dependants()
for task in self.tasks.copy().values():
if task.status in [TaskStatus.FINISHED, TaskStatus.FAILED]:
if task.status in [TaskStatus.FINISHED, TaskStatus.FAILED] and task.id not in dependants:
self.remove_task(task.id)
self.auto_remove_tasks_timer = threading.Timer(10.0, self.auto_remove_tasks)
......
......@@ -570,7 +570,7 @@ class TVEpisode(object):
rawAirdate = [int(x) for x in str(firstaired).split("-")]
self.airdate = datetime.date(rawAirdate[0], rawAirdate[1], rawAirdate[2])
except (ValueError, IndexError, TypeError):
sickrage.app.log.warning(
sickrage.app.log.debug(
f"Malformed air date of {firstaired} retrieved from {self.show.series_provider.name} for ({self.show.name} - S{int(season or 0):02d}E{int(episode or 0):02d})")
# if I'm incomplete on the series_provider_id but I once was complete then just delete myself from the DB for now
......
......@@ -19,6 +19,7 @@
# along with SiCKRAGE. If not, see <http://www.gnu.org/licenses/>.
# ##############################################################################
import functools
import html
import time
import traceback
import types
......@@ -26,10 +27,11 @@ from concurrent.futures.thread import ThreadPoolExecutor
from typing import Optional, Awaitable
from urllib.parse import urlparse, urljoin
import bleach
from jose import ExpiredSignatureError
from keycloak.exceptions import KeycloakClientError
from mako.exceptions import RichTraceback
from tornado import locale
from tornado import locale, escape
from tornado.web import RequestHandler
import sickrage
......@@ -196,3 +198,11 @@ class BaseHandler(RequestHandler):
def options(self, *args, **kwargs):
self.set_status(204)
self.finish()
def get_argument(self, *args, **kwargs):
value = super(BaseHandler, self).get_argument(*args, **kwargs)
try:
return bleach.clean(value)
except TypeError:
return value
10.0.10
\ No newline at end of file
10.0.11
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment