mirror of
https://github.com/SickGear/SickGear.git
synced 2024-11-29 08:03:36 +00:00
Merge branch 'hotfix/3.27.10'
This commit is contained in:
commit
327add553a
5 changed files with 39 additions and 12 deletions
|
@ -1,4 +1,10 @@
|
||||||
### 3.27.9 (2023-02-27 01:10:00 UTC)
|
### 3.27.10 (2023-03-05 00:20:00 UTC)
|
||||||
|
|
||||||
|
* Add UHD Bluray
|
||||||
|
* Change an error text for Cheetah module availability
|
||||||
|
|
||||||
|
|
||||||
|
### 3.27.9 (2023-02-27 01:10:00 UTC)
|
||||||
|
|
||||||
* Fix remove incorrectly displayed NZBGet tip
|
* Fix remove incorrectly displayed NZBGet tip
|
||||||
|
|
||||||
|
|
|
@ -40,13 +40,12 @@
|
||||||
#for $cur_quality in sorted($any_quality_list):
|
#for $cur_quality in sorted($any_quality_list):
|
||||||
##set $has_unknown |= ($Quality.UNKNOWN == $cur_quality and $cur_quality in $any_qualities)
|
##set $has_unknown |= ($Quality.UNKNOWN == $cur_quality and $cur_quality in $any_qualities)
|
||||||
<a href="#" data-quality="$cur_quality" class="btn btn-inverse dark-bg#echo ('', ' active')[$cur_quality in $any_qualities]#" role="button"><i class="icon-glyph searchadd"></i>$Quality.get_quality_ui($cur_quality)</a>
|
<a href="#" data-quality="$cur_quality" class="btn btn-inverse dark-bg#echo ('', ' active')[$cur_quality in $any_qualities]#" role="button"><i class="icon-glyph searchadd"></i>$Quality.get_quality_ui($cur_quality)</a>
|
||||||
#if $Quality.UHD4KWEB == $cur_quality
|
#if $Quality.UHD4KBLURAY == $cur_quality
|
||||||
<span class="btn-placeholder"></span>
|
|
||||||
<span class="btn-placeholder"></span>
|
<span class="btn-placeholder"></span>
|
||||||
<a href="#" data-quality="$Quality.UNKNOWN" class="btn btn-inverse dark-bg#echo ('', ' active')[$Quality.UNKNOWN in $any_qualities]#" role="button"><i class="icon-glyph searchadd"></i>$Quality.get_quality_ui($Quality.UNKNOWN)</a>
|
<a href="#" data-quality="$Quality.UNKNOWN" class="btn btn-inverse dark-bg#echo ('', ' active')[$Quality.UNKNOWN in $any_qualities]#" role="button"><i class="icon-glyph searchadd"></i>$Quality.get_quality_ui($Quality.UNKNOWN)</a>
|
||||||
|
|
||||||
#end if
|
#end if
|
||||||
#if $cur_quality in [$Quality.SDDVD, $Quality.FULLHDTV, $Quality.FULLHDBLURAY, $Quality.UHD4KWEB]
|
#if $cur_quality in [$Quality.SDDVD, $Quality.FULLHDTV, $Quality.FULLHDBLURAY, $Quality.UHD4KBLURAY]
|
||||||
<br>
|
<br>
|
||||||
#end if
|
#end if
|
||||||
#end for
|
#end for
|
||||||
|
|
|
@ -70,7 +70,7 @@ except (BaseException, Exception):
|
||||||
try:
|
try:
|
||||||
import Cheetah
|
import Cheetah
|
||||||
except (BaseException, Exception):
|
except (BaseException, Exception):
|
||||||
print('The Python module Cheetah is required')
|
print('The Python module CT3 (Cheetah) is required')
|
||||||
if is_win:
|
if is_win:
|
||||||
print('(1) However, this first run may have just installed it, so try to simply rerun sickgear.py again')
|
print('(1) However, this first run may have just installed it, so try to simply rerun sickgear.py again')
|
||||||
print('(2) If this output is a rerun of (1) then open a command line prompt and manually install using...')
|
print('(2) If this output is a rerun of (1) then open a command line prompt and manually install using...')
|
||||||
|
|
|
@ -94,7 +94,7 @@ class Quality(object):
|
||||||
FULLHDBLURAY = 1 << 8 # 256
|
FULLHDBLURAY = 1 << 8 # 256
|
||||||
# UHD4KTV = 1 << 9 # reserved for the future
|
# UHD4KTV = 1 << 9 # reserved for the future
|
||||||
UHD4KWEB = 1 << 10
|
UHD4KWEB = 1 << 10
|
||||||
# UHD4KBLURAY = 1 << 11 # reserved for the future
|
UHD4KBLURAY = 1 << 11
|
||||||
|
|
||||||
# put these bits at the other end of the spectrum, far enough out that they shouldn't interfere
|
# put these bits at the other end of the spectrum, far enough out that they shouldn't interfere
|
||||||
UNKNOWN = 1 << 15 # 32768
|
UNKNOWN = 1 << 15 # 32768
|
||||||
|
@ -110,7 +110,8 @@ class Quality(object):
|
||||||
FULLHDWEBDL: '1080p WEB-DL',
|
FULLHDWEBDL: '1080p WEB-DL',
|
||||||
HDBLURAY: '720p BluRay',
|
HDBLURAY: '720p BluRay',
|
||||||
FULLHDBLURAY: '1080p BluRay',
|
FULLHDBLURAY: '1080p BluRay',
|
||||||
UHD4KWEB: '2160p UHD 4K WEB'}
|
UHD4KWEB: '2160p UHD 4K WEB',
|
||||||
|
UHD4KBLURAY: '2160p UHD BluRay'}
|
||||||
|
|
||||||
statusPrefixes = {DOWNLOADED: 'Downloaded',
|
statusPrefixes = {DOWNLOADED: 'Downloaded',
|
||||||
SNATCHED: 'Snatched',
|
SNATCHED: 'Snatched',
|
||||||
|
@ -345,7 +346,10 @@ class Quality(object):
|
||||||
return Quality.FULLHDWEBDL
|
return Quality.FULLHDWEBDL
|
||||||
if name_has([fmt]):
|
if name_has([fmt]):
|
||||||
return Quality.FULLHDTV
|
return Quality.FULLHDTV
|
||||||
if name_has(['2160p', webfmt]):
|
if name_has(['2160p']):
|
||||||
|
if name_has(['bluray']):
|
||||||
|
return Quality.UHD4KBLURAY
|
||||||
|
if name_has([webfmt]):
|
||||||
return Quality.UHD4KWEB
|
return Quality.UHD4KWEB
|
||||||
|
|
||||||
return Quality.UNKNOWN
|
return Quality.UNKNOWN
|
||||||
|
@ -579,7 +583,7 @@ HD = Quality.combineQualities(
|
||||||
[]) # HD720p + HD1080p
|
[]) # HD720p + HD1080p
|
||||||
HD720p = Quality.combineQualities([Quality.HDTV, Quality.HDWEBDL, Quality.HDBLURAY], [])
|
HD720p = Quality.combineQualities([Quality.HDTV, Quality.HDWEBDL, Quality.HDBLURAY], [])
|
||||||
HD1080p = Quality.combineQualities([Quality.FULLHDTV, Quality.FULLHDWEBDL, Quality.FULLHDBLURAY], [])
|
HD1080p = Quality.combineQualities([Quality.FULLHDTV, Quality.FULLHDWEBDL, Quality.FULLHDBLURAY], [])
|
||||||
UHD2160p = Quality.combineQualities([Quality.UHD4KWEB], [])
|
UHD2160p = Quality.combineQualities([Quality.UHD4KWEB, Quality.UHD4KBLURAY], [])
|
||||||
ANY = Quality.combineQualities(
|
ANY = Quality.combineQualities(
|
||||||
[Quality.SDTV, Quality.SDDVD, Quality.HDTV, Quality.FULLHDTV, Quality.HDWEBDL, Quality.FULLHDWEBDL,
|
[Quality.SDTV, Quality.SDDVD, Quality.HDTV, Quality.FULLHDTV, Quality.HDWEBDL, Quality.FULLHDWEBDL,
|
||||||
Quality.HDBLURAY, Quality.FULLHDBLURAY, Quality.UNKNOWN], []) # SD + HD
|
Quality.HDBLURAY, Quality.FULLHDBLURAY, Quality.UNKNOWN], []) # SD + HD
|
||||||
|
|
|
@ -127,6 +127,15 @@ quality_tests = {
|
||||||
'Test.Show.S01E02.2160p.WEBRip.x264-GROUP',
|
'Test.Show.S01E02.2160p.WEBRip.x264-GROUP',
|
||||||
'Test.Show.S01E02.2160p.WEBRip.x265-GROUP',
|
'Test.Show.S01E02.2160p.WEBRip.x265-GROUP',
|
||||||
'Test.Show.S01E02.2160p.WEBRip.vp9-GROUP'],
|
'Test.Show.S01E02.2160p.WEBRip.vp9-GROUP'],
|
||||||
|
common.Quality.UHD4KBLURAY: [
|
||||||
|
'Test.Show.S01E02.2160p.BluRay.h264-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.BluRay.x264-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.BluRay.x265-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.BluRay.vp9-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.UHD.BluRay.h264-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.UHD.BluRay.x264-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.UHD.BluRay.x265-GROUP',
|
||||||
|
'Test.Show.S01E02.2160p.UHD.BluRay.vp9-GROUP'],
|
||||||
common.Quality.UNKNOWN: ['Test.Show.S01E02-SiCKGEAR']
|
common.Quality.UNKNOWN: ['Test.Show.S01E02-SiCKGEAR']
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -154,7 +163,7 @@ class QualityTests(unittest.TestCase):
|
||||||
for w, v in iteritems(wd):
|
for w, v in iteritems(wd):
|
||||||
if w == sq:
|
if w == sq:
|
||||||
for u, o in sorted(iteritems(v)):
|
for u, o in sorted(iteritems(v)):
|
||||||
self.assertEqual(o, result.get(u))
|
self.assertEqual(o, result.get(u), msg='%s' % show_quality)
|
||||||
|
|
||||||
def check_wantedquality_get_wantedlist(self, cases):
|
def check_wantedquality_get_wantedlist(self, cases):
|
||||||
for show_quality, result in cases:
|
for show_quality, result in cases:
|
||||||
|
@ -260,6 +269,9 @@ class QualityTests(unittest.TestCase):
|
||||||
Quality.UHD4KWEB: {
|
Quality.UHD4KWEB: {
|
||||||
WantedQualities.wantedlist: [],
|
WantedQualities.wantedlist: [],
|
||||||
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
||||||
|
Quality.UHD4KBLURAY: {
|
||||||
|
WantedQualities.wantedlist: [],
|
||||||
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
||||||
Quality.UNKNOWN: {
|
Quality.UNKNOWN: {
|
||||||
WantedQualities.wantedlist: [],
|
WantedQualities.wantedlist: [],
|
||||||
WantedQualities.bothlists: False, WantedQualities.upgradelist: False
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False
|
||||||
|
@ -300,6 +312,9 @@ class QualityTests(unittest.TestCase):
|
||||||
Quality.UHD4KWEB: {
|
Quality.UHD4KWEB: {
|
||||||
WantedQualities.wantedlist: [],
|
WantedQualities.wantedlist: [],
|
||||||
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
||||||
|
Quality.UHD4KBLURAY: {
|
||||||
|
WantedQualities.wantedlist: [],
|
||||||
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
||||||
Quality.UNKNOWN: {
|
Quality.UNKNOWN: {
|
||||||
WantedQualities.wantedlist: [],
|
WantedQualities.wantedlist: [],
|
||||||
WantedQualities.bothlists: False, WantedQualities.upgradelist: False
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False
|
||||||
|
@ -341,6 +356,9 @@ class QualityTests(unittest.TestCase):
|
||||||
Quality.UHD4KWEB: {
|
Quality.UHD4KWEB: {
|
||||||
WantedQualities.wantedlist: [],
|
WantedQualities.wantedlist: [],
|
||||||
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
||||||
|
Quality.UHD4KBLURAY: {
|
||||||
|
WantedQualities.wantedlist: [],
|
||||||
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False},
|
||||||
Quality.UNKNOWN: {
|
Quality.UNKNOWN: {
|
||||||
WantedQualities.wantedlist: [],
|
WantedQualities.wantedlist: [],
|
||||||
WantedQualities.bothlists: False, WantedQualities.upgradelist: False
|
WantedQualities.bothlists: False, WantedQualities.upgradelist: False
|
||||||
|
@ -3090,7 +3108,7 @@ class QualityTests(unittest.TestCase):
|
||||||
(('The Show (15 Jan 2019) [text] 720HD mp4', False), common.Quality.HDTV),
|
(('The Show (15 Jan 2019) [text] 720HD mp4', False), common.Quality.HDTV),
|
||||||
(('The.Show.s03e11.ep.name.1080p.web.dl.hevc.x265.Group', False), common.Quality.FULLHDWEBDL),
|
(('The.Show.s03e11.ep.name.1080p.web.dl.hevc.x265.Group', False), common.Quality.FULLHDWEBDL),
|
||||||
(('The.Show.S03E05.1080p.NF.WEB-DL.DD5.1.HDR.HEVC-Group', False), common.Quality.FULLHDWEBDL),
|
(('The.Show.S03E05.1080p.NF.WEB-DL.DD5.1.HDR.HEVC-Group', False), common.Quality.FULLHDWEBDL),
|
||||||
(('The.Show.S01E10.Name.2160p.UHD.BluRay.REMUX.HDR.HEVC.DTS-HD.MA.5.1', False), common.Quality.UNKNOWN),
|
(('The.Show.S01E10.Name.2160p.UHD.BluRay.REMUX.HDR.HEVC.DTS-HD.MA.5.1', False), common.Quality.UHD4KBLURAY),
|
||||||
(('Show.S01E07.2160p.4K.UHD.10bit.NF.WEBRip.5.1.x265.HEVC-Group', False), common.Quality.UHD4KWEB),
|
(('Show.S01E07.2160p.4K.UHD.10bit.NF.WEBRip.5.1.x265.HEVC-Group', False), common.Quality.UHD4KWEB),
|
||||||
])
|
])
|
||||||
for q, l in iteritems(quality_tests):
|
for q, l in iteritems(quality_tests):
|
||||||
|
|
Loading…
Reference in a new issue